Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 9 Next »

Requirements for the JSON payload to be sent by the Partners API to Khumbu.

Contents

Reward payload structures

Rewards are an item benefit that can be redeemed in exchange for points (and sometimes money + points). Read more about it here: /wiki/spaces/HELP/pages/4921819186 .

Reward with an item

 RBI Partner API
"cart": [
  {
    "menuSelections": [
      {
        "id": "7ee7338a-a016-47c6-aef6-3783d40c003e", // Reward Sanity id
        "externalReferenceId": "123", // Reward constant plu defined in Sanity
        "quantity": 1,
        "price": {
          "amount": 0,
          "currency": "SAR",
        }
        "type": "Reward", 
        "menuSelections": [
          {
            "externalReferenceId": "51056", // item constant plu
            "id": "item_1862", // item Sanity id
            "menuSelections": [],
            "price": {
                "amount": 2495, // normal price
                "currency": "SAR"
          },
            "quantity": 1,
            "type": "Item"
          }
        ]
      }
    ]
  }
]
 Oracle TS Gen 2 (Commit call)
{
    "header": {
        "orgShortName": "{{OrgShortName}}",
        "locRef": "{{LocRef}}",
        "rvcRef": {{RvcRef}},
        "idempotencyId": "{{$guid}}",
        "orderTypeRef": 9,
        "checkEmployeeRef": {{check_employee_ref}}
    },
    "menuItems": [],
    "comboMeals": [
        {
            "comboMealId": 51002003, // Cheeseburger reward
            "comboItem": {
                "menuItemId": 51002003, // Cheeseburger reward PLU
                "definitionSequence": 1,
                "quantity": 1
            },
            "mainItem": {
                "menuItemId": 1002003, // A la carte cheeseburger
                "definitionSequence": 1,
                "quantity": 1
            },
            "sideItems": []
        }
    ],
    "tenders": [
        {
            "tenderId": 901 // payment method ID. Pay at Counter for this example.
        }
    ]
}

In Oracle, we use a separate combo for reward items so that we can set up a different price (0) vs the single item ALC. Alternatively, we could create a new priceSequence set to 0 for each definitionSequence , and then re-use the single item.

Oracle can only handle up to 10,000 combos.

Reward with an item + premium modifier

 RBI Partner API
"cart": [
  {
    "menuSelections": [
      {
        "id": "7ee7338a-a016-47c6-aef6-3783d40c003e", // Reward Sanity id
        "externalReferenceId": "123", // Reward constant plu defined in Sanity
        "quantity": 1,
        "price": {
          "amount": 0,
          "currency": "SAR",
        }
        "type": "Reward", 
        "menuSelections": [
          {
            "externalReferenceId": "51056", // item constant plu
            "id": "item_1862", // item Sanity id
            "menuSelections": [],
            "price": {
                "amount": 2495, // normal price
                "currency": "SAR"
          },
            "quantity": 1,
            "type": "Item"
          }
        ]
      }
    ]
  }
]
 Oracle TS Gen 2 (Commit call)
{
    "header": {
        "orgShortName": "{{OrgShortName}}",
        "locRef": "{{LocRef}}",
        "rvcRef": {{RvcRef}},
        "idempotencyId": "{{$guid}}",
        "orderTypeRef": 9,
        "checkEmployeeRef": {{check_employee_ref}},
        "language": "es-ES",
        "Accept-Language": "es-ES"
    },
    "menuItems": [],
    "comboMeals": [
        {
            "comboMealId": 51002003, // Cheeseburger reward
            "comboItem": {
                "menuItemId": 51002003, // Cheeseburger reward
                "definitionSequence": 1,
                "quantity": 1
            },
            "mainItem": {
                "menuItemId": 1002003, // Cheeseburger ALC
                "definitionSequence": 1,
                "quantity": 1,
                "condiments": [
                    {
                        "condimentId": 9011005, // Add bacon. Premium modifier (extra cost)
                        "priceSequence": 2,
                        "quantity": 2
                    }
                ]
            },
            "sideItems": []
        }
    ],
    "tenders": [
        {
            "tenderId": 901
        }
    ]
}

Reward with a combo

 RBI Partner API
"cart": {
  "menuSelections": [
    {
      "externalReferenceId": "8351", // reward plu
      "id": "43b4cf07-79c9-4aff-98d1-bce9cf2d890f", //reward sanity id
        "menuSelections": [
            {
                "externalReferenceId": "8350", // combo plu
                "id": "43b4cf07-79c9-4aff-98d1-bce9cf2d890f", //combo sanity id
                "menuSelections": [
                    {
                        "externalReferenceId": "10059",
                        "id": "item_1852",
                        "menuSelections": [],
                        "price": {
                            "amount": 0,
                            "currency": "SAR"
                        },
                        "quantity": 1,
                        "type": "Item"
                    },
                    {
                        "externalReferenceId": "80007",
                        "id": "4f99db1e-128a-4e53-b23b-dffc0fedf636",
                        "menuSelections": [],
                        "price": {
                            "amount": 0,
                            "currency": "SAR"
                        },
                        "quantity": 1,
                        "type": "Item"
                    },
                    {
                        "externalReferenceId": "80001",
                        "id": "16f482db-2f13-4476-88d3-d2eec26057f3",
                        "menuSelections": [],
                        "price": {
                            "amount": 0,
                            "currency": "SAR"
                        },
                        "quantity": 1,
                        "type": "Item"
                    },
                    {
                        "externalReferenceId": "141139",
                        "id": "141139",
                        "menuSelections": [],
                        "price": {
                            "amount": 0,
                            "currency": "SAR"
                        },
                        "quantity": 1,
                        "type": "Item"
                    }
                ],
                "price": {
                "amount": 300, // original price of combo
                "currency": "SAR"
                 },
                 "quantity": 1,
                 "type": "Combo"
                 }
              ],
              "price": {
              "amount": 0, // final price of the reward
              "currency": "SAR"
              },
              "quantity": 1,
              "type": "Reward"
            }
        ]
    },
 Oracle TS Gen 2 (Commit call)
{
    "header": {
        "orgShortName": "{{OrgShortName}}",
        "locRef": "{{LocRef}}",
        "rvcRef": {{RvcRef}},
        "idempotencyId": "{{$guid}}",
        "orderTypeRef": 9,
        "checkEmployeeRef": {{check_employee_ref}},
        "language": "es-ES",
        "Accept-Language": "es-ES"        
    },
    "menuItems": [],
    "comboMeals": [
        {
            "comboMealId": 51001504, //Whopper with Cheese Combo Reward
            "comboItem": {
                "menuItemId": 51001504, //Whopper with Cheese Combo Reward
                "definitionSequence": 1,
                "quantity": 1
            },
            "mainItem": {
                "menuItemId": 1001003, // Whopper with cheese ALC
                "definitionSequence": 1,
                "quantity": 1
            },
            "sideItems": [
                {
                    "menuItemId": 1013201, //Small pepsi
                    "definitionSequence": 1,
                    "quantity": 1
                },
                {
                    "menuItemId": 2102002, //Small fries
                    "definitionSequence": 1,
                    "quantity": 1
                }
            ]
        }
    ],
    "tenders": [
        {
            "tenderId": 901
        }
    ]
}

Reward with a combo + premium modifier

 RBI Partner API
 
 Oracle TS Gen 2 (Commit call)
{
    "header": {
        "orgShortName": "{{OrgShortName}}",
        "locRef": "{{LocRef}}",
        "rvcRef": {{RvcRef}},
        "idempotencyId": "{{$guid}}",
        "orderTypeRef": 9,
        "checkEmployeeRef": {{check_employee_ref}},
        "language": "es-ES",
        "Accept-Language": "es-ES"
    },
    "menuItems": [],
    "comboMeals": [
        {
            "comboMealId": 51001504, // Whopper Cheese combo reward
            "comboItem": {
                "menuItemId": 51001504, //// Whopper Cheese combo reward
                "definitionSequence": 1,
                "quantity": 1
            },
            "mainItem": {
                "menuItemId": 1001003, // whopper cheese
                "definitionSequence": 1,
                "quantity": 1,
                "condiments": [
                    {
                        "condimentId": 9011005, // Add bacon. Premium modifier (extra cost)
                        "priceSequence": 2,
                        "quantity": 2
                    }
                ]
            },
            "sideItems": [
                {
                    "menuItemId": 1013201, // Small fries
                    "definitionSequence": 1,
                    "quantity": 1
                },
                {
                    "menuItemId": 2000008, // Icy mango. Premium drink (extra cost)
                    "definitionSequence": 1,
                    "quantity": 1
                }
            ]
        }
    ],
    "tenders": [
        {
            "tenderId": 901
        }
    ]
}

Reward with a cart discount

 RBI Partner API
"payload": {
    "number": "5803",
    "fees": [
        {
            "total": {
                "amount": 19,
                 "currency": "EUR"
             },
            "type": "BAG_FEE"
        }
     ],
     "serviceMode": "DELIVERY",
     "channel": "WHITELABEL_DELIVERY",
    "callbackUrl": "https://euw3-staging-bk-partners-api.rbictg.com/api/v1/orders/60c1983c-8cbc-4aa8-9486-c55fa78566f5/price/callback",
    "id": "60c1983c-8cbc-4aa8-9486-c55fa78566f5",
    "orderDiscounts": [
        {
            "type": "amount",
             "value": 200
        }
     ],
    "storeId": "12349",
    "cart": {	
         "menuSelections": [
             {
                "externalReferenceId": "502633",
                 "quantity": 1,
                "price": {
                    "amount": 645,
                    "currency": "EUR"
                },
                 "id": "item_11107",
                 "type": "Item"
             }
        ]
    }
 }

Note: the cart discount can be also sent with a plu inside the orderDiscounts object. Please refer to “Reward with a product discount” section for an example.

 Oracle TS Gen 2 (Commit call)
{
    "header": {
        "orgShortName": "{{OrgShortName}}",
        "locRef": "{{LocRef}}",
        "rvcRef": {{RvcRef}},
        "idempotencyId": "{{$guid}}",
        "orderTypeRef": 9,
        "checkEmployeeRef": {{check_employee_ref}}
    },
    "menuItems": [
        {   "menuItemId":1001001, // Whopper ALC
            "definitionSequence": 1,
            "quantity": 1
        }
    ],
    "tenders": [
        {
            "tenderId": 901
        }
    ],
    "discounts" : [
        {
            "discountId": 104, // PLU for the cart level amount discount 
            "referenceText": "Reward 1234",
            "total": 10 // the amount that you are discounting. 10 euros off. We can send whatever amount we want
        }
    ]
}

Reward with a product discount

 RBI Partner API
/{
    "payload": {
        "number": "5807",
        "fees": [
            {
                "total": {
                    "amount": 19,
                    "currency": "EUR"
                },
                "type": "BAG_FEE"
            }
        ],
        "serviceMode": "DELIVERY",
        "channel": "WHITELABEL_DELIVERY",
        "callbackUrl": "https://euw3-staging-bk-partners-api.rbictg.com/api/v1/orders/781f28e9-d6bb-4c8e-9ea6-e65a2e7c3764/price/callback",
        "id": "781f28e9-d6bb-4c8e-9ea6-e65a2e7c3764",
        "orderDiscounts": [
            {
                "plu": "948348",
                "type": "percentage",
                "value": 50
            }
        ],
        "storeId": "12349",
        "cart": {
            "menuSelections": [
                {
                    "externalReferenceId": "948348",
                    "quantity": 1,
                    "menuSelections": [
                        {
                            "externalReferenceId": "502633",
                            "quantity": 1,
                            "price": {
                                "amount": 0,
                                "currency": "EUR"
                            },
                            "id": "item_11107",
                            "type": "Item"
                        }
                    ],
                    "price": {
                        "amount": 645,
                        "currency": "EUR"
                    },
                    "id": "fbdead97-5acb-4d1c-a5fe-5794ece61aaa",
                    "type": "Reward"
                }
            ]
        }
    }
}
 Oracle TS Gen 2 (Commit call)
{
    "header": {
        "orgShortName": "{{OrgShortName}}",
        "locRef": "{{LocRef}}",
        "rvcRef": {{RvcRef}},
        "idempotencyId": "{{$guid}}",
        "orderTypeRef": 9,
        "checkEmployeeRef": {{check_employee_ref}}
    },
    "menuItems": [
        {
            "menuItemId": 1001001, // Whopper
            "definitionSequence": 1,
            "quantity": 1,
            "itemDiscounts": [
                {
                    "discountId": 106, // PLU of the product amount discount off
                    "referenceText": "Offer Item Discount",
                    "total": 59 // amount of discount (can be sent as any number). 59 pesos off the whopper ALC price.
                }
            ]
        }
    ],
    "tenders": [
        {
            "tenderId": 901
        }
    ]
}

Offer Payload Structure

Offers are a discount on the order or item. Can take the form of a discounted bundle, cheaper item, order-level % discount, or order-level $ off. Also known as a “coupon” in some markets. Read more about it here: /wiki/spaces/HELP/pages/4854349911 .

Offer with a combo

 RBI Partner API
"cart": {
  "menuSelections": [
    {
      "externalReferenceId": "8351", // offer plu
      "id": "43b4cf07-79c9-4aff-98d1-bce9cf2d890f", //offer sanity id
        "menuSelections": [
            {
                "externalReferenceId": "8167", // combo plu
                "id": "d90a7113-0620-44d9-b678-743330a2f207", //combo sanity id
                "menuSelections": [
                    {
                        "externalReferenceId": "80003",
                        "id": "ce847c79-9eb5-4be3-8a1e-842919aa5ba0",
                        "menuSelections": [],
                        "price": {
                            "amount": 0,
                            "currency": "SAR"
                        },
                        "quantity": 1,
                        "type": "Item"
                    },
                    {
                        "externalReferenceId": "142538",
                        "id": "142538",
                        "menuSelections": [],
                        "price": {
                            "amount": 0,
                            "currency": "SAR"
                        },
                        "quantity": 1,
                        "type": "Item"
                    }
                ],
                "price": {
                    "amount": 500, //price of the combo
                    "currency": "SAR"
                },
                ],
                "price": {
                "amount": 100, // final price of the offer
                "currency": "SAR"
                },
                "quantity": 1,
                "type": "Offer"
            }
        ]
    },
 Oracle TS Gen 2 (Commit call)
 

Offer with a picker

 RBI Partner API
"cart": {
  "menuSelections": [
    {
      "externalReferenceId": "8351", // offer plu
      "id": "43b4cf07-79c9-4aff-98d1-bce9cf2d890f", //offer sanity id
        "menuSelections": [
            {
                "externalReferenceId": "8168", //combo plu
                "id": "3318d2c2-99d3-40f9-92d2-1798d9c5e987", //combo sanity id
                "menuSelections": [
                    {
                        "externalReferenceId": "20001",
                        "id": "item_61936",
                        "menuSelections": [],
                        "price": {
                            "amount": 0,
                            "currency": "SAR"
                        },
                        "quantity": 1,
                        "type": "Item"
                    },
                    {
                        "externalReferenceId": "80002",
                        "id": "865a632f-e2f7-4e2b-8fcc-9281aa3f5868",
                        "menuSelections": [],
                        "price": {
                            "amount": 0,
                            "currency": "SAR"
                        },
                        "quantity": 1,
                        "type": "Item"
                    },
                    {
                        "externalReferenceId": "80008",
                        "id": "04462c22-bf58-4eee-842a-213e3d17a072",
                        "menuSelections": [],
                        "price": {
                            "amount": 0,
                            "currency": "SAR"
                        },
                        "quantity": 1,
                        "type": "Item"
                    },
                    {
                        "externalReferenceId": "142538",
                        "id": "142538",
                        "menuSelections": [],
                        "price": {
                            "amount": 0,
                            "currency": "SAR"
                        },
                        "quantity": 1,
                        "type": "Item"
                    }
                ],
                "price": {
                    "amount": 500, //price of the combo
                    "currency": "SAR"
                },
              ],
              "price": {
              "amount": 100, // final price of the offer
              "currency": "SAR"
              },
                "quantity": 1,
                "type": "Offer"
            }
        ]
    },
 Oracle TS Gen 2 (Commit call)
 

Offer with a cart discount

 RBI Partner API
{
    "payload": {
        "number": "5814",
        "fees": [
            {
                "total": {
                    "amount": 19,
                    "currency": "EUR"
                },
                "type": "BAG_FEE"
            }
        ],
        "serviceMode": "DELIVERY",
        "channel": "WHITELABEL_DELIVERY",
        "callbackUrl": "https://euw3-staging-bk-partners-api.rbictg.com/api/v1/orders/6d66a02e-810f-478f-bf0d-b69bfcb56d51/price/callback",
        "id": "6d66a02e-810f-478f-bf0d-b69bfcb56d51",
        "orderDiscounts": [
            {
                "type": "percentage",
                "value": 20
            }
        ],
        "storeId": "12349",
        "cart": {
            "menuSelections": [
                {
                    "externalReferenceId": "502633",
                    "quantity": 1,
                    "price": {
                        "amount": 645,
                        "currency": "EUR"
                    },
                    "id": "item_11107",
                    "type": "Item"
                }
            ]
        }
    }
}
 Oracle TS Gen 2 (Commit call)
 

Offer with a product discount

 RBI Partner API
{
    "payload": {
        "number": "5821",
        "fees": [
            {
                "total": {
                    "amount": 19,
                    "currency": "EUR"
                },
                "type": "BAG_FEE"
            }
        ],
        "serviceMode": "DELIVERY",
        "channel": "WHITELABEL_DELIVERY",
        "callbackUrl": "https://euw3-staging-bk-partners-api.rbictg.com/api/v1/orders/ed50be10-cf7c-4b1c-8bb1-0c2625cbf3be/price/callback",
        "id": "ed50be10-cf7c-4b1c-8bb1-0c2625cbf3be",
        "orderDiscounts": [
            {
                "plu": "502617",
                "type": "percentage",
                "value": 20
            }
        ],
        "storeId": "12349",
        "cart": {
            "menuSelections": [
                {
                    "externalReferenceId": "502617",
                    "quantity": 1,
                    "menuSelections": [
                        {
                            "externalReferenceId": "502633",
                            "quantity": 1,
                            "price": {
                                "amount": 0,
                                "currency": "EUR"
                            },
                            "id": "item_11107",
                            "type": "Item"
                        },
                        {
                            "externalReferenceId": "942258",
                            "quantity": 1,
                            "price": {
                                "amount": 0,
                                "currency": "EUR"
                            },
                            "id": "item_11126",
                            "type": "Item"
                        },
                        {
                            "externalReferenceId": "527646",
                            "quantity": 1,
                            "price": {
                                "amount": 0,
                                "currency": "EUR"
                            },
                            "id": "9aac0a46-5a73-431d-937c-8848ca01ac86",
                            "type": "Item"
                        }
                    ],
                    "price": {
                        "amount": 875,
                        "currency": "EUR"
                    },
                    "id": "a2e73fd9-5f3d-4afc-9585-43ebd7bbc6dc",
                    "type": "Offer"
                }
            ]
        }
    }
}
 Oracle TS Gen 2 (Commit call)
 

Reference

NMS guides on how to set up offers and rewards in Sanity for Oracle: /wiki/spaces/MS/pages/4057661622

  • No labels