Versions Compared

Key

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

...

/wiki/spaces/TRX/pages/5037850633

Items to discuss

Item

Oracle explanation

Modifiers / Condiments

Separate PLUs for:

  • add

  • null (no)

for every modifier. No “extra” category.

Combos

  • Same PLU for different sizes of the same combo. For example, the “Whopper Combo Large” and “Whopper Combo Medium” have the same PLU.

  • To calculate the combo price:

    • Add the prices of: combo price + main item price + side 1 price + side 2 price.

    • Any premium comboslot will have a price > 0. Non-premium comboslots will be priced at 0.

  • To get the price from Oracle’s /menus payload:

    • For the combo:

      1. Retrieve the menuItemRef in the ComboMeals object

      2. Using the menuItemRef, find the menu item that defines the combo and get its price for the applicable definitionSequence. That is the combo price.

    • For main item and sides:

      • In the ComboMeals object, use the prices defined at comboGrouplevel. If the price is not defined ("prices":[ ]), the price is 0.

      • The comboGroup with "isMainGroup":true contains the main item. The comboGroup with "isMainGroup":false contains the sides.

Service mode

Same PLU for both in-restaurant and delivery service modes. Different pricing is managed through definitionSequence.

  • definitionSequence = 1 is in-store.

  • definitionSequence = 2 is delivery.

Not all items have both definitions (e.g. some items aren’t sold in delivery).

image-20241006-171746.png

Availability

To check availability, the following endpoints must be checked:

  • /menus/items/unavailable stock-out endpoint – item is temporarily out of stock at a restaurant.

  • /menus endpoint – general availability of items in a restaurant.

    • For in-restaurant:

      • A product is available if it has both definitionSequence=1 and priceSequence=1 defined.

    • For delivery:

      • A product in available if it has both definitionSequence=2 and priceSequence=1 defined.

    • Note that priceSequence can only be defined if definitionSequence is defined.

Sugar tax

Can we add it as a surcharge to the product? E.g. Classic Coca-cola should already have the sugar tax included in the priceSequence.

Bottle deposit (Pfand)

Delivery fees (bag fee, service fee, etc)

Pre-ordering

Fiscal

Is this standard across markets? E.g. in BK MZ in the commit call we need to send the following information:

Code Block
"extensions": [
{
"displayName": "DocumentId",
"appName": "Harmonized",
"dataName": "DocumentId",
"dataType": "strings",
"data": "1",
"options": []
},
{
"displayName": "DocumentType",
"appName": "Harmony",
"dataName": "DocumentType",
"dataType": "strings",
"data": "01",
"options": []
}

This information always stays the same as it’s needed for the fiscal integration to work.

Oracle payloads