Versions Compared

Key

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

...

Question

Answer

How are PLUs managed for different service modes?

Expand
titleAnswer from Jean

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.pngImage Modified

Documented agreements with Oracle in https://rbictg.atlassian.net/wiki/spaces/ORACLE/pages/5133926800/Menu+-+Payload+format#Agreements

How do we distinguish service modes?

Expand
titleAnswer from Jean
  • Use definitionSequence

  • Do not use different revenue centers – this means multiple configurations.

Documented agreements with Oracle in https://rbictg.atlassian.net/wiki/spaces/ORACLE/pages/5133926800/Menu+-+Payload+format#Agreements

How do we send the table order number for table service orders?

[ ]

Fees

Question

Answer

  • Sugar tax – is it added as surcharge to the product (included in priceSequence)?

E.g. Classic Coca-cola

  • Bottle deposit (Pfand). Does it have a separate PLU?

  • In Oracle, sugar tax and cup charges are treated as “forced condiments” (required modifiers) to items.

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

Documented agreements with Oracle in https://rbictg.atlassian.net/wiki/spaces/ORACLE/pages/5133926800/Menu+-+Payload+format#Agreements

Does Oracle require a separate PLU for each fee?

Are the following fees supported: bag fee, service fee, delivery fee?

Expand
titleAnswer from Jean (TBC)

Fees are sent to Oracle in the commit call as serviceChargeId, which are configured in the oracle portal. They can retrieved using the {{baseUrl}}/serviceCharges/collection?OrgShortName={{OrgShortName}}&LocRef={{LocRef}}&RvcRef={{RvcRef}} endpoint.

Code Block
languagejson
{
    "items": [
        {
            "serviceChargeId": 101,
            "name": "% Tip",
            "type": "percentage",
            "value": 0
        },
        {
            "serviceChargeId": 102,
            "name": "$ Tip",
            "type": "amount",
            "value": 0
        },
        {
            "serviceChargeId": 106,
            "name": "Delivery Chrg",
            "type": "amount",
            "value": 5
        }
      ]
  }
Expand
titleAnswer from Oracle
image-20241030-103811.png

Documented agreements with Oracle in https://rbictg.atlassian.net/wiki/spaces/ORACLE/pages/5133926800/Menu+-+Payload+format#Agreements

Bag fee

  • We treat as a separate menu item (PLU).

Documented agreements with Oracle in https://rbictg.atlassian.net/wiki/spaces/ORACLE/pages/5133926800/Menu+-+Payload+format#Agreements

Order firing & cancelation

Question

Answer

FireOrder webhook. Does Symphony support ’suspended’ orders? That is, orders sent with fireOrderInSeconds=null which need to get fired at a later time.

Yes.

  • In the “Post a new check” endpoint you include the pickupTime value which determines at what time the order should be ready. Oracle adds prep time to that value to have the order ready in the submitted pickupTimerestaurant. This time can be changed updated at any point by RBI as long as the order has not been prepared.

  • 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 response.

  • 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.

  • pickupTime can be equal to current time, Oracle will add the prep time automatically.

  • In Oracle, prep time is called service level time.

image-20241030-105932.png

To get the service level time (prep time) you can use this call:

image-20241030-110917.png

For pre-ordering outside opening hours – does Oracle support pricing & committing orders outside restaurant opening hours?

E.g.: An order is priced and committed, at 6:00 AM. The order is set with the attribute fireOrderInSeconds = null to wait for an explicit FIRE_ORDER webhook at a later time to be sent to kitchen. While the restaurant opens at 9:00 AM.

Yes, POS stays online as long as nobody unplugs it.

Can orders be canceled in the POS?

If so, how does Simphony notify our system of canceled orders? Is there a Webhook?

Expand
titleAnswer from Jean (TBC)

Yes.

  1. Unpaid orders comes into the POS. Team member can void unpaid open order.

  2. Paid order comes into the POS. Team member can void closed order.

Check notification webhook should inform RBI when an order is canceled.

Code Block
languagejson
{
        "subscriptionId": "ba637437-b666-4ff9-91ee-a6b11cc62d8e",
        "callbackUri": "https://play.svix.com/in/e_8c35PkfkLdaGK7Rv5oVfLVySc8b/",
        "messageType": {
            "id": "CheckNotification"
        },
        "postOfficeOptions": {
            "postOfficeType": "PushOnePostOffice"
        },
        "orgShortName": "uat",
        "locRef": "99990",
        "rvcRef": "101"
    }
Expand
titleOracle answer

...