Contents
Overview
The rewards program rules and configurations (e.g. expiration of loyalty points, points earned for every dollar spent) are set in a document called Earning Calculation in Sanity. To access this document navigate to: Order-Level Content > Loyalty&Offers > Loyalty Configuration > Earning Calculation
in Sanity.
Core Metric
This is the basis for how loyalty points are earned in the rewards program. This needs to be set to Spend
. This means guests earn loyalty points based on how much they spend.
Visit
and Hybrid
were deprecated and are not in use.
Points per dollar
Configure how many loyalty points are earned for every dollar spent in the app.
Note this is specific to the currency you use in your market (e.g. if the currency used is euro, configure here how many loyalty points will be earned for every euro spent in the app)
Minimum Spend
The minimum transaction spend (in cents) that must be satisfied for a guest to earn loyalty points.
Cooldown Period
The minimum time (in seconds) between purchases with an offer that must be satisfied before a second offer can be redeemed.
If you require to enable this field please reach out to your CSM, as there is another internal RBI configuration that must be set for this field to work.
Initial User Points Balance
The initial loyalty points balance that will be assigned to a guest when he first signs up to the app when the market has rewards program enabled.
Loyalty Points Earn Moment
This field configures allows you to configure when your users will earn loyalty points for Click & Collect and Delivery orders: this will be either when the order is paid for in the app or when the order is delivered / picked up.
Click and Collect
Defines when loyalty points will be earned for Click & Collect orders (Pickup, Eat In, Table Service, Drive-Thru, Curbside Pickup). This can be either:
After payment: loyalty points are assigned when guest completes the payment in the app OR
When order is ready: loyalty points are assigned only when guest picks up order at the restaurant.
Note: we recommend always implement option 2, due to fraud risk. Please note option 2 requires development work for the Partner to let RBI know when the order has been picked up. Please read more about Partners changing orders change to DONE
status here.
Delivery
Defines when loyalty points will be earned for Delivery orders. This can be either:
After payment: loyalty points are assigned when guest completes the payment in the app OR
When order is delivered: loyalty points are assigned only when order is delivered to guest.
Note: we recommend always implement option 2, due to fraud risk. Please note option 2 requires development work for the Partner to let RBI know when the order has been delivered. Please read more about Partners changing orders change to DONE
status here.
Exclude from Loyalty Point Calculation
This configuration allows markets to prevent certain modifier multipliers/items/combos to be counted towards earning of loyalty points.
This is especially useful by markets that have plastic deposits set in place. When you ask for a bottle of water for example, you pay a 1€ deposit, which then you can get refunded when you return the bottle. If the 1€ is considered to earn loyalty points, you could repeat this process a bunch of times just to earn loyalty points, without actually spending any money.
The number of modifier multipliers/items/combos to be added to the list is unlimited
Items included in this list work for online and in-store transactions.
For in-store transactions, ensure to test and align with Kiosk/POS vendor on a solution.
Loyalty Point Expiration
Markets configure Loyalty Points Expiration rules here
Point Expiration By Inactivity Days
Point expiration by inactivity days means Loyalty Points expire X days after the last loyalty transaction of user
The number of days can be set in Sanity (see screenshot below)
In the below scenario, Loyalty Points would expire for the user after 365 days since the user has been active in the app and completed a loyalty transaction
Point Expiration By Issue Date
Loyalty Points expire X days after they were earned and at the end of a policy grouping which includes:
points expire at the end of the month
points expire at the end of the quarter
points expire at the end of the semester
Days are set in
Loyalty Point Duration (days)
field in Sanity. In the screenshot above this is 365 days.Expiration Extenstion
options are Monthly, Quarterly and Bi-Anually. In the screenshot above this is Quarterly.Some examples on this behavior:
Example 1:
If today is Feb 14, for the following configuration:
Expiration Extenstion: "QUARTERLY"
Loyalty Points Duration (days): 120
Steps of expected behavior:
The end of the current quarter is March 31st.
Add Loyalty Points Duration (days): July 29th.
Points expire on July 29th
Example 2:
If today is Feb 14, for the following configuration:
Expiration Extenstion: "QUARTERLY"
Loyalty Points Duration (days): 100
Steps of expected behavior:
The end of the current quarter is March 31st.
Add Loyalty Points Duration (days): July 9th.
Points expire on July 9th.
Example 3:
If today is Jan 10, 2023 for the following configuration:
Expiration Extenstion: "QUARTERLY"
Loyalty Points Duration (days): 365
Steps of expected behavior:
The end of the current quarter is March 31st, 2023.
Add Loyalty Points Duration (days): March 31, 2024.
Points expire on March 31, 2024.
How to Set Offer / Reward Stackability Limit
Navigate to the Earning Calculation Tab on Sanity
Order-Level Content ➡️ Loyalty ➡️ Loyalty Configs ➡️ Earning CalculationScroll Down to Offer Redemption Limits section
This is where you will configure the number of Offers a user can add to their cart
For example:
A value of 1 would mean a maximum of 1 Offer per Cart.
A value of 4 would mean a maximum of 4 Offers per Cart.
Now that we’ve configured the Limit, we can hit Publish!
Limit for adding the same offer
This field is still In Progress and currently only applies to In-Restaurant orders.
This represents the maximum number of times the same offer can be added in a single order.
How to set Maximum Transactions Limit in Sanity
Go to Order-Level Content > Loyalty > Loyalty Configs > Earning Calculations
Under the Earning Calculations page, scroll down to the Transaction Earning Configuration section
The Maximum Transactions Limit field is where you define what you want the Max number of transactions that would yield points to a given user.
For example: if you input
10
, then each unique guest will only be able to earn points for up to 10 transactions per day. After the 10th transaction, the guest will stop earning points for that day.
Once you have set the Max Transaction Limit, hit Publish
Once you hit Publish, the changes will be pushed to the selected environment and the new Maximum Transactions Limit will be set.