Versions Compared

Key

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

...

Steps

Expected results (POS)

Expected results (RBI app)

Loyalty API usage (POS)

Guest opens the Loyalty code page on the RBI app

  • N/A

  • Loyalty code page is displayed:

  • No action

Cashier is prompted to add a loyalty code

  • Cashier asked if guest is a loyalty member:

  • No action

  • No action

Guest either scans the loyalty code, or tells the 6 digit code to the cashier

  • If guest does not scan the QR code, cashier can enter the 6 digit Loyalty code:

  • Either by scanning or entering the code, POS confirms successful identification:

  • Guest receives a successful confirmation modal

 

  • Call the Identify endpoint, which will return the Loyalty User ID, loyalty points balance and a transaction ID

Guest opens an reward on the RBI app in a different device, using a different user, and chooses to redeem in restaurant

  • No action

  • Reward of is added to the guest’s pre-selection (on the second device)

    Image RemovedImage Added
  • A unique reward code is generated

  • No action

Guest (on their second device) either scans the reward’s QR code, or tells the 6 digit code to the cashier

  • Error modal shows in the POS, letting the cashier know that the last scan was made using a different user account

  • Contents of the second scan are not added to the guest’s basket (so the current basket remains unchanged)

  • The second scan is cancelled/voided

  • Initial order can continue normally

  • Modal is shown to the second user confirming that the offer has been added to cart

  • The reward’s loyalty points cost is temporarily subtracted from the guest’s loyalty points balance

  • Loyalty points that will be accrued after the order will not be added to the guest’s loyalty points balance at this stage

  • Reward pre-selection is cleared

  • A few seconds later, the loyalty points are returned to the second user

  • Keep track of the current basket contents including rewards

  • Call the Identify endpoint again, and wait for the response

  • The new transaction will come with a different loyaltyId

  • Check the Loyalty ID of this transaction does not match Loyalty ID of previous transaction

  • Void this second transaction

  • Keep the current basket open with previous transaction

...

Steps

Expected results (POS)

Expected results (RBI app)

Loyalty API usage (POS)

Guest opens a reward on the RBI app

  • No action

  • Reward page is displayed:

  • No action

Guest taps “Redeem in Restaurant”

  • No action

  • Reward is added to the guest’s pre-selection

  • A unique reward code is generated

  • No action

Cashier is prompted whether the Guest has loyalty, and confirms

  • Cashier asked if guest is a loyalty member and clicks on “Ok”

  • No action

  • No action

Guest either scans the reward code, or tells the 6 digit code to the cashier

  • Either by scanning or entering the code, POS confirms successful identification (since the reward code also identifies the Loyalty user):

  • Reward is added to POS cart

  • Guest receives a successful confirmation modal

  • The reward’s loyalty points cost is temporarily subtracted from the guest’s loyalty points balance

  • Loyalty points that will be accrued after the order will not be added to the guest’s loyalty points balance at this stage

  • Reward pre-selection is cleared

  • Call the Identify endpoint, which will create a new transaction ID and return selected reward(s)

Cashier attempts to finalize the order but there is a payment failure and order is not completed

  • Order at the POS is cancelled

  • A few seconds later, the loyalty points of the pre-selected reward are returned to the guest

 

  • Call the Transaction Validate endpoint to verify that the current basket selection is valid

  • Call the Void endpoint to cancel the order

3. Stores without Loyalty

It is possible for some stores in a given Franchisee to now support Loyalty (either temporarily, e.g. during Loyalty rollout, or permanently e.g. due to commercial reasons). In this scenario, affected stores will have loyalty disabled in RBI’s RAM system and the behaviour needs to be different for POS as well.

3.1. Redeem offers

In this scenario, guests pre-select offers on the RBI app and continue their journey in the Kiosk by scanning the generated code. In this scenario, it is recommended that Kiosks show a warning advising guests that they will not earn loyalty points with this transaction.

Steps

Expected results (POS)

Expected results (RBI app)

Loyalty API usage (POS)

Guest opens an offer on the RBI app

  • N/A

  • Offer page is displayed:

Image Added
  • No action

Guest taps “Use at restaurant”

  • N/A

  • Offer is added to the guest’s pre-selection

Image Added
  • A unique offer code is generated

  • No action

Guest taps on the Kiosk screen to start a new order

  • User clicks on Offers tab and prepares to scan offer

  • N/A

  • No action

Guest either scans the offer’s QR code or inputs 6 digit code into Kiosk

Info

Note: if a user pre-selects more offers in the app, all pre-selected offers will show in the Kiosk screen after scanning with an option for the user to customize each offer

  • User sees pop up in Kiosk letting user know they will not gain/burn any loyalty points with this order

  • Offer(s) are shown on the Kiosk and guest has an option to customize

    Image Added
  • Modal is shown to guest confirming that the offer has been added to cart

Image Added
  • Loyalty points balance is not updated, since the guest is scanning an offer

  • Offer pre-selection is cleared

  • Call the Identify endpoint, which will return the Loyalty User ID, a list of offer(s) pre-selected, loyalty points balance and a transaction ID

  • The Loyalty API will know this store does not have Loyalty enabled

Guest customizes offers at will and adds to basket

  • These offer(s) are incrementally added to the cart and do not replace any of the existing cart items

    Image Added
Info

Note: If an offer can’t be redeemed because the offer rules are not met, the Kiosk displays a modal to the guest explaining why the offer can’t be added to cart

  • No action

  • Call the Transaction Validate endpoint to verify that the current basket selection is valid

  • Note that the call above may return errors. Please refer to Loyalty API - Error List for details.

  • The Validate call will return an error if any Rewards are added to cart

Guest opens a second offer on the RBI app, chooses to redeem in restaurant

Info

Note: the flow is exactly the same if the guest pre-selects multiple offers.

  • No action

  • Only the second offer is added to the guest’s pre-selection

    Image Added
  • A unique offer code is generated

  • No action

Guest either scans the offer’s QR code or inputs 6 digit code into Kiosk

Info

Note: if a user pre-selects more offers in the app, all pre-selected offers will show in the Kiosk screen after scanning with an option for the user to customize each offer

  • Offer(s) are shown on the Kiosk and guest has an option to customize

Image Added
  • Modal is shown to guest confirming that the offer has been added to cart

Image Added
  • Loyalty points balance is not updated, since the guest is scanning an offer

  • Offer pre-selection is cleared

  • Keep track of the current basket contents including offers

  • Void the previous transaction

  • Call the Identify endpoint again, which will create a new transaction ID and selected offers

  • Update the basket with the offers returned

Guest customizes offers at will and adds to basket

  • These offer(s) are incrementally added to the cart and do not replace any of the existing cart items

Image Added
Info

Note: If an offer can’t be redeemed because the offer rules are not met, the Kiosk displays a modal to the guest explaining why the offer can’t be added to cart

  • No action

  • Call the Transaction Validate endpoint to verify that the current basket selection is valid

  • Note that the call above may return errors. Please refer to Loyalty API - Error List for details.

Cashier checks out and pays

  • Order number shows up on the POS screen

  • Receipt is printed

  • Guest does NOT sees updated points balance

  • Points do not change from before and after the order was placed

Image Added

 

  • Call the Transaction Update endpoint with a status of CLAIMED to complete the order

  • After this call it is not possible to modify the loyalty transaction anymore

  • Once this transaction is CLAIMED no Loyalty points are updated in the user’s balance

3.2. Attempt to redeem rewards

In this scenario, guests pre-select rewards on the RBI app and continue their journey in the Kiosk by scanning the generated code. Because the store does not support Loyalty, rewards cannot be added to the guest’s basket.

Steps

Expected results (POS)

Expected results (RBI app)

Loyalty API usage (POS)

Guest opens an offer on the RBI app

  • N/A

  • Reward page is displayed:

    Image Added
  • No action

Guest taps “Redeem In restaurant”

  • N/A

  • Reward is added to the guest’s pre-selection

  • A unique Reward code is generated

    Image Added
  • No action

Cashier taps on the POS screen and scans the reward’s QR code or inputs the guest’s 6 digit code into POS

  • Cashier sees pop up in POS letting user know loyalty is not supported in this store and that the guest will not gain/burn any loyalty points with this order

  • Nothing changes on order / cart that was gathered in the POS

If both offer and rewards are included in the Loyalty Code screen, the Loyalty API will continue returning both Rewards and Offers. The POS vendor will be responsible to show the error message to users and to remove the Reward from POS cart.

  • Modal is shown to guest informing that this store does not participate in the loyalty program and no loyalty points will be earned

  • Call the Identify endpoint, which will return the Loyalty User ID, a list of Reward(s) pre-selected, loyalty points balance and a transaction ID

  • The POS vendor will know this store does not have Loyalty enabled and show error message to let cashier know the guest cannot redeem rewards

  • If a transaction is sent with a reward in cart for a store that does not have in-store loyalty, the Loyalty APIs will return an error

3.3. Attempt to scan Loyalty code

In this scenario, guests attempt to scan their Loyalty code in the kiosk and are presented with a message informing them that loyalty is not available in this store.

Steps

Expected results (POS)

Expected results (RBI app)

Loyalty API usage (POS)

Guest opens Loyalty Code on the RBI app

  • N/A

  • Image Added
  • Not

Cashier taps on the POS screen and scans the reward’s QR code or inputs the guest’s 6 digit code into POS

  • Cashier sees pop up in POS letting user know loyalty is not supported in this store and that the guest will not gain/burn any loyalty points with this order

  • Nothing changes on order / cart that was gathered in the POS

If both offer and rewards are included in the Loyalty Code screen, the Loyalty API will continue returning both Rewards and Offers. The POS vendor will be responsible to show the error message to users and to remove the Reward from POS cart.

  • Modal is not shown to guest

  • Call the Identify endpoint, which will return the Loyalty User ID, loyalty points balance and a transaction ID

  • The POS vendor will know this store does not have Loyalty enabled and show an error message to let users know that they won’t earn points with this transaction (e.g. e.g. ‘Thanks for scanning your MyBK code! Unfortunately this restaurant does not support loyalty yet so you won’t earn points with this transaction.’).

Info

There are no more scenarios. You can return to Customer Journey Scenarios - POS

...