Oracle Milestone 5 - Non-Loyalty Store Coupon Redemption
What is the problem?
Burger King Germany is currently experiencing resistance from the franchisee to enroll to the Loyalty program. According to KJR mandates, and to protect the guest experience, we won’t be launching Loyalty if we don’t have more than 80% of the stores with Loyalty activated. In this scenario, we have still have 20% of the system that is not connected with loyalty and therefore there will be implications with coupon redemption in-store. Below a potential solution is summarized for guests that will enter a non-loyalty store and want to redeem a coupon with the loyalty code.
The above problem already exists in the UK and we will continue seeing it in future markets as we launch the Loyalty program across the world. For this reason, we need to think about a solution that is scalable and can be used in multiple markets and by multiple vendors.
What is our proposal?
Assumptions:
In our platform, FZ's will control which stores have In-Store Loyalty enabled using the toggle
Has In Restaurant Loyalty
in RAM which is synced with the Sanity toggle in the Restaurant documentHas Loyalty
. Please view images below.
Kiosk vendors will need to differentiate the UI of the Kiosk, depending if a store has loyalty or does not have loyalty enabled.
Scenario 1: User with Loyalty enabled in their App, goes to a Non-Loyalty Store and redeems a coupon in-store
In this scenario, guests pre-select offers on the RBI app and continue their journey in the Kiosk by scanning the generated code. Then they add more offers to their basket by choosing those offers in the app and scanning them.
Steps | Expected results (Kiosk) | Expected results (RBI app) | Loyalty API usage (Kiosk) |
---|---|---|---|
Guest opens an offer on the RBI app |
|
|
|
Guest taps “Use at restaurant” |
|
|
|
Guest taps on the Kiosk screen to start a new order |
|
|
|
Guest either scans the offer’s QR code or inputs 6 digit code into Kiosk 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 |
|
|
|
Guest customizes offers at will and adds to basket |
|
|
|
Guest opens a second offer on the RBI app, chooses to redeem in restaurant |
|
|
|
Guest either scans the offer’s QR code or inputs 6 digit code into Kiosk |
|
|
|
Guest customizes offers at will and adds to basket |
|
|
|
Guest checks out and pays |
|
|
|
Scenario 2: User with Loyalty enabled in their App, goes to a Non-Loyalty Store and attempts to redeem a Reward in store
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 (Kiosk) | Expected results (RBI app) | Loyalty API usage (Kiosk) |
---|---|---|---|
Guest opens an offer on the RBI app |
|
|
|
Guest taps “Redeem In restaurant” |
|
|
|
Guest taps on the Kiosk screen and scans the reward’s QR code or inputs 6 digit code into Kiosk |
|
|
|
Scenario 3: User with Loyalty enabled in their App, goes to a Non-Loyalty Store and scans My Code screen
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 (Kiosk) | Expected results (RBI app) | Loyalty API usage (Kiosk) |
---|---|---|---|
Guest opens Loyalty Code on the RBI app |
|
| |
Guest taps on the Kiosk screen and scans the Loyalty QR code or inputs 6 digit code into Kiosk |
|
|
|
Changes Needed
Loyalty to differentiate between non-loyalty stores and loyalty stores using Sanity Restaurant Document
Loyalty API to not update loyalty points for non-loyalty stores
Loyalty API to return error if a reward is added in
Transaction Validate
orTransaction Update
Call for non-loyalty storesAll orders with coupons will be identifiable in-store
LOE
6 weeks of Dev work + 2 weeks testing / debugging issues
8 weeks total