Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Info

We will aim to manage different combo sizes with different PLUs (e.g. small, medium and large combos all having different PLUs).

We would need default sides selected for each combos to be able to show the pricing correctly. We might need to have this default logic enforced to the operator on Sanity (either implemented or a small button/toggle will be added to Sanity.)

Info

A single PLU will be used for each modifier, and no PLUs for modifier multipliers. Modifier multipliers will be managed via prefixes, and prefixes will be enabled by RBI Tech platform by utilizing the quantity-based PLU or multiconstant PLU solutions. Having one of these solutions work will require some work on partnersAPI and likely within platform (menu and pricing)Most markets support 2 levels of modifiers for mobile ordering: Add and No. For those, 2 separate PLUs will be created on digital. For management of modifier multipliers beyond these 2 levels (light, heavy, 2 bacons, etc.), we will use the Quantity field in Oracle instead of defining modifier multiplier PLUs.

  • Two modifier PLUs:

    • Remove (“No”)

    • Add with quantities (multiples for each quantity – e.g. 1x ketchup, 2x ketchup).

  • Each modifier has a priceSequence - 1 for pickup and 2 for delivery just like items and combos.

To improve the experience of the operator, a single Sanity document should be used for management of modifiers on Sanity later on. Therefore, removing the modifier multiplier document from Sanity completely.

...

Warning

The following payloads are from BK MX and are not up to date/standard. We won’t use definitionSequence 1, 2 for different service modes.

Info
  • Two modifier PLUs:

    • Remove (“No”)

    • Add with quantities (multiples for each quantity – e.g. 1x ketchup, 2x ketchup).

  • Each modifier has a priceSequence - 1 for pickup and 2 for delivery

    .

    Expand
    titleOracle TS Gen2 (Get menus call)

    Condiment Group

    Code Block
    languagejson
    "condimentGroups": [
            {
                "condimentGroupId": 125, // Condiment groups are referenced in single menu items
                "name": {
                    "en-US": "Sm Burger Extras"
                },
                "condimentItemRefs": [ // These are modifier PLUs
                    9005004,
                    9011005,
                    9011010,
                    9011012,
                    9021004,
                    9055001,
                    9055004,
                    9055021,
                    9055022,
                    9011018,
                    9011013,
                    9055025
                ],
                "consumerDescription": {
                    "en-US": null
                }
            },

    Condiment Item. This applies also todefaultCondiments

    Code Block
    languagejson
        "condimentItems": [
    {
                "name": { // Name of the condiment (modifier)
                    "en-US": "Ham",
                    "es-MX": "Jamon"
                },
                "condimentId": 9005004, // PLU of the condiment
                "familyGroupRef": 60002, // Reporting ID
                "definitions": [
                    {
                        "number": 2, // It can sold for delivery, definition 2
                        "name": {
                            "en-US": "Ham",
                            "es-MX": "Jamon"
                        },
                        "name2": {}, // Secondary name
                        "prices": [
                            {
                                "priceSequence": 1,
                                "price": 0, 
                                "name": "Default" // Oracle uses prefixes for different quantities of the modifier. But this can also be individual PLUs
                            },
                            {
                                "priceSequence": 2,
                                "price": 0,
                                "name": "Add"
                            },
                            {
                                "priceSequence": 5,
                                "price": 0,
                                "name": "Sub"
                            },
                            {
                                "priceSequence": 8,
                                "price": 0,
                                "name": "Extra"
                            },
                            {
                                "priceSequence": 3,
                                "price": 0,
                                "name": "No"
                            },
                            {
                                "priceSequence": 4,
                                "price": 0, // price you charge for heavy ham
                                "name": "Hvy"
                            }
                        ]
                    },
                    {
                        "number": 1, // Same for definition 1, in-restaurant
                        "name": {
                            "en-US": "Ham",
                            "es-MX": "Jamon"
                        },
                        "name2": {},
                        "prices": [
                            {
                                "priceSequence": 2,
                                "price": 19,
                                "name": "Add"
                            },
                            {
                                "priceSequence": 3,
                                "price": 0,
                                "name": "No"
                            },
                            {
                                "priceSequence": 4,
                                "price": 0,
                                "name": "Hvy"
                            },
                            {
                                "priceSequence": 5,
                                "price": 0,
                                "name": "Sub"
                            },
                            {
                                "priceSequence": 6,
                                "price": 0,
                                "name": "Add"
                            },
                            {
                                "priceSequence": 7,
                                "price": 0,
                                "name": "No"
                            },
                            {
                                "priceSequence": 8,
                                "price": 0,
                                "name": "Extra"
                            },
                            {
                                "priceSequence": 1,
                                "price": 0,
                                "name": "Default"
                            }
                        ]
                    }
                ]
            }

    ...