Versions Compared

Key

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

...

Info

https://rbictgdocs.atlassianoracle.netcom/en/wikiindustries/spacesfood-beverage/ORACLEsimphony/pages/edit-v2/5133926800#Agreements19.4/stsgg/F56815_08.pdf

Info

Fiscal integrations will change market by market. There’s no standard.

Info

Different pricing between service modes will be managed by priceSequence within the same definitionSequence. Applicable for all products (item, combo, modifier).

  • DefinitionSequence always = 1

    • pricingSequence = 1 --> pick-up SMService Mode

    • pricingSequence = 2 --> delivery SM→ delivery Service Mode

GET Menus call returns all items for a given store, it doesn't take availability into account. To retrieve unavailable items per store, we need to make another call to the UNAVAILABLE endpoint, which returns the list of unavailable items. Hence, whenever we build the store menu (after a guest selects a restaurant in the platform), we need to call both endpoints to determine availability on a store-level:

  1. Call GET Menu - using v1/menus (Khumbu already does)

  2. Call GET Availability endpoint --- using (menus/items/unavailable) (Khumbu already does)

    1. Actively listen to Configuration Notifications webhook for changes to availability (notifications API) (Khumbu doesn't do this currently.)

Operators in the restaurant manage items availability on a store-level using the POS, Oracle POS only supports that on store-level for both service modes - not distinguishing availability per service mode (pick-up and delivery).

Assumption: In general, menu item availability is not managed specifically differently per service mode ( on a store-level), meaning availability for pick-up and delivery is generally the same.

For specific items whose availability is different for pickup and delivery within the same store, the following will be the suggestion to the operator:

...

Info

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 . No multiples available.

    • “Add”, which will have several 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.

This will be enabled by RBI Tech platform by utilizing the multiconstant PLU solution. Having the multiconstant PLU solution used will require some work (e.g. partnersAPI).

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.

...

Info
  • In Oracle, sugar tax and cup charges are treated as “forced condiments” (required modifiers) to items - there will be dedicated PLUs for each.

  • Bottle deposits (Pfand) has its own PLU and is treated as a condiment (modifier) to drinks.

  • Likewise, bag fee will be treated as a separate PLUsPLU.

Expand
titleMore context from Oracle on fees
image-20241030-103811.png

Info
  • In the “Post a new check” endpoint you include the pickupTime value, which determines at what time is the time requested for the order should be ready in the restaurant. to be collected.

  • This time can be updated at any point by RBI as long as the order has not been preparedstarted.

  • pickupTime is the time requested for the order to be collected. If not provided the current time plus the Service Level Time for the given order type is assumed. Time is local in the request but UTC in the responsePrep time is called serviceLevelTime in Oracle.

  • Oracle adds prep time to that value to have the order ready in the submitted pickupTime . In Oracle, prep time is called service level time. So if we send pickupTime = now, Oracle will return pickupTime = now + serviceLevelTime. SopickupTime can be equal to current time, and Oracle will add the prep time automatically.

  • Restaurant managers might be able to void orders.

  • If we subscribe to check notification we should get all info about the order.

    • Oracle to confirm how to get information about online orders voided in restaurant, and what order status information we can get.

  • https://docs.oracle.com/en/industries/food-beverage/simphony/19.4/stsgg/F56815_08.pdf Page 109 - 110

Further context with Q&A: https://rbictg.atlassian.net/wiki/spaces/ORACLE/pages/edit-v2/5133926959#Order-firing-%26-cancelation

Info
  • For menu P&A changes, we can subscribe to the Configuration Notification webhook will be subscribed to.

  • For order status changes we can subscribe to the Check Notification webhook will be subscribed to.

    • Oracle to confirm this webhook works.

  • There is no webhook to get store status updates.

Info
  • POS is always online, even in outside of operating hours (important for pre-ordering).

Info
  • STS has a 15 minutes cache for both to sync the change to cloud from the POS.

    • Does it mean menu updated webhook (ConfigurationsNotification webhook) can also take up to 15 minutes to be published after a POS? (TBC with Oracle.)

    • Does it mean that Khumbu should only check store availability every 15min instead of every 5min?