Table of contents
Table of Contents |
---|
Info |
---|
Note: in addition to properties described in this page, events below also include common properties documented here: Attributes and properties |
...
Note: some events are called out as shorthands. There are similar to other, broader events, but sent separately to make it easier to run quick and targeted Amplitude queries without the need for complex filters (e.g. to run a quick analysis on how many offers were redeemed in-store last month, use the Offer Redeemed In-Store event without needing to filter for anything else). The Loyalty Transaction Claimed event is the umbrella event that captures all Claimed Loyalty Transactions, so this can be used to filter by sanityId or any other reward/offer attribute if needed be.
Event Name | Description | Properties | Property Description | ||
---|---|---|---|---|---|
Loyalty User Created | When a Loyalty user is created. In markets where loyalty is enabled, this happens at the same time that a new user signs up. | initialPointsBalance | Points added to the account when creation (could be subject to campaigns that add points when account created) | ||
Loyalty User Updated | Triggered every time that a user’s loyalty points are updated. | newPointsBalance | Number of points in the user’s loyalty account, after a transaction has been made. | ||
Loyalty Transaction Created | Triggered when any type of a loyalty transaction is created, including orders and point expiration. For orders, this event is triggered when an order is initiated and the transaction is in a Pending state. At this stage, the transaction is not completed yet. It will only be marked as completed once the ordering flow completes successfully (see Loyalty Transaction Claimed below). For example, this event would be fired when a customer logins with their Loyalty OTP code in the Kiosk successfully (even if the customer has not completed the purchase in the Kiosk yet). | bonusPointsEarned | Additional points earned via promotion. | ||
brand | Brand, for example “BK”. | ||||
channel | Can have the following values:
| ||||
createdAt | Date and time when the transaction was created | ||||
offers | Offers redeemed on this transaction, if any | ||||
offersSanityIds | Sanity ID's for each offer redeemed in this transaction, if any | ||||
Partner | The partner that requested the loyalty points assignment | ||||
pointsEarned | Base points earned | ||||
pointsUsed | Points used to redeem | ||||
posType | The type of POS from where this transaction was created. For example, NCR, SYCOM. TABLET corresponds specifically to the RBI tablet in use in some markets. | ||||
posSystem | Specific POS vendor name, for example: ncr, Acrelec, Xenial Encounter. | ||||
rbiOrderId | The associated RBI Order Id | ||||
fulfillmentType | The fulfillment channel for the transaction. Can have one of the following values:
| ||||
restaurantId | Restaurant ID related to a purchase | ||||
rewards | The rewards redeemed in this transaction | ||||
rewardsSanityIds | The Sanity ids for each reward in this transaction | ||||
shortId | Autogenerated code for easy lookup via support tool | ||||
Store Has Loyalty | MDM loyalty assignment
| ||||
storeId | MDM assigned store number | ||||
subTotal | The total for the order | ||||
systemWidePromotions | The promotions redeemed with this transaction | ||||
totalPoints | User's total loyalty points post transaction | ||||
transactionStatus | The current status of the transaction:
| ||||
Loyalty Transaction Claimed | When an order completes successfully, loyalty transactions that were previously in a Pending state change to Claimed and this event is triggered.
| Same as Loyalty Transaction Created | Same as Loyalty Transaction Created | ||
Loyalty Cart Data | Cart data of the order.
| ||||
In-Store Loyalty Transaction Claimed | Shorthand for Loyalty Transaction Claimed when channel is RESTAURANT. | Same as Loyalty Transaction Created | Same as Loyalty Transaction Created | ||
payAtCounter
| The posSystem different vendors from when transaction was created to when it was finalized, e.g. | ||||
Loyalty Cart Data | Cart data of the order |
Online Loyalty Transaction Claimed
Shorthand for Loyalty Transaction Claimed when channel is APP or WEB.
.
| |||
Online Loyalty Transaction Claimed | Shorthand for Loyalty Transaction Claimed when channel is APP or WEB. | Same as Loyalty Transaction Created | Same as Loyalty Transaction Created |
Loyalty Cart Data | Cart data of the order |
Loyalty Points Expiring
Event Name
Description
Properties
Property Description
.
| |||||
Loyalty Points Expiring | When the user points are about to expire, an event indicating the amount of points and the future expiration date is fired. Triggered on defined days away: 1, 3, 7, 30, 60.
| daysAway | Days away from expiration of points (e.g. 14) | ||
pointsAtRisk | Amount of points that will expire by the moment the event is triggered (e.g. 250) | ||||
pointsExpiryDate | Date of the expiration of points (e.g. 10/5/2022) | ||||
Loyalty Points Expired | Triggered when user points have expired. | channel | See Loyalty Transaction Created / channel | ||
pointsEarned | Base points earned | ||||
pointsUsed | Points used to redeem | ||||
shortId | Autogenerated code for easy lookup via support tool | ||||
id | Unique Identifier for points expiration event | ||||
subTotal | The total for the order | ||||
brand | Brand from which the points have expired (e.g. BK) | ||||
transactionStatus | See Loyalty Transaction Created / transactionStatus | ||||
pointsDeducted | Amounts getting expired for not being used | ||||
createdAt | Date and time when the event was triggered | ||||
Loyalty Transaction Voided | When an order is voided. | Same as Loyalty Transaction Created | Same as Loyalty Transaction Created | ||
payAtCounter
| The posSystem different vendors from when transaction was created to when it was finalized, e.g. | ||||
Loyalty Transaction Deleted | When a transaction is deleted this event is fired indicating the total points the user has after the rollback. Only Transactions that are in Pending which were created through the OTP process can be deleted. | Same as Loyalty Transaction Created | Same as Loyalty Transaction Created | ||
Max Transaction Limit Reached | Triggered when the maximum transactions limit is reached for a given user. This is an optional configuration setting that sets a "cap" of how many daily transactions a given user can earn points towards. | Same as Loyalty Transaction Created | Same as Loyalty Transaction Created |
Offers
Max Points Earned Limit Reached | Triggered when |
this event is fired. It happens at the time of creating the transaction. When a Loyalty transaction with channel is created, this event is fired with the transaction information.
Same as Loyalty Transaction Created
Same as Loyalty Transaction Created
payAtCounter
Note |
---|
Note: Only when the transaction is created and claimed in different POS/Kiosk vendor |
The posSystem different vendors from when transaction was created to when it was finalized, e.g. Tillster-Toshiba
Offer Redeemed In-store
the maximum earned points limit is reached for a given user. This is an optional configuration setting that sets a "cap" of how many points a given user can earn points in a certain period of time (currently, only configurable per year). | maxPointsLimitReached | The period of type used to calculate the max points earned (e.g. |
Other attributes are the same as Loyalty Transaction Claimed | Same as Loyalty Transaction Claimed |
Offers
Event Name | Description | Properties | Property Description | ||
---|---|---|---|---|---|
Offer Redeemed Confirmed | Triggered when an offer is redeemed. this event is fired. It happens at the time of creating the transaction. When a Loyalty transaction with channel is created, this event is fired with the transaction information. | Same as Loyalty Transaction Created | Same as Loyalty Transaction Created | ||
payAtCounter
| The posSystem different vendors from when transaction was created to when it was finalized, e.g. | ||||
Offer Redeemed | OnlineIn-store | Shorthand for Offer Redeemed Confirmed where channel is | WEB or APPRESTAURANT. | Same as Loyalty Transaction Created | Same as Loyalty Transaction Created |
payAtCounter |
Description
Properties
Property Description
Offer Selected
| The posSystem different vendors from when transaction was created to when it was finalized, e.g. | ||
Offer Redeemed Online | Shorthand for Offer Redeemed Confirmed where channel is WEB or APP. | Same as Loyalty Transaction Created | Same as Loyalty Transaction Created |
Event Name | Description | Properties | Property Description |
---|---|---|---|
Offer Selected | User clicked on an offer from the offers list and saw the offer description. Replaces the deprecated | name | Offer name, e.g. “£4.99 CHICKEN or VEGAN ROYAL” |
sanityId | Sanity ID of the offer | ||
status |
| ||
Offer Added to Order | User added an offer to their order cart.
Replaces the deprecated | Same as Offer Selected | Same as Offer Selected |
redemptionMode | Can be either In-Store or Online. | ||
Offer Favorite Added | User clicked on the heart to favourite an offer. | Same as Offer Selected | Same as Offer Selected |
storeId | ID of the currently selected store, if any. | ||
Offer Favorite Removed | User clicked on the heart to un-favourite an offer. | Same as Offer Selected | Same as Offer Favorite Added |
Event Name | Description | Properties | Property Description |
---|---|---|---|
External Offer Selected | User clicked on an offer from the offers list and saw the offer description. | name | Offer name, e.g. “£4.99 CHICKEN or VEGAN ROYAL” |
sanityId | Sanity ID of the offer | ||
External Offer Added to Order | When redemptionMode is In-Store, this event is triggered when the user clicks on the “Use my Discount“ button. This event is triggered before the modal appears, letting the user know they will be redirected to the external partner’s website. | name | Offer name, e.g. “£4.99 CHICKEN or VEGAN ROYAL” |
sanityId | Sanity ID of the offer | ||
External Offer Redeemed | This event is only triggered after the user in the confirmation modal clicks on the button that redirects the user to the external offer’s partner website. | name | Offer name, e.g. “£4.99 CHICKEN or VEGAN ROYAL” |
sanityId | Sanity ID of the offer | ||
createdAt | Date and time when the External Offer was redeemed |
...
Event Name | Description | Properties | Property Description |
---|
Reward Selected
User clicked on the reward from reward list and saw the reward description.
name
Reward name, e.g. “Bacon Double XL Cheese Meal“
sanityId
Sanity ID of the offer
Status
Locked
, Unlocked
Category
200
, 400
, 600
…
Reward Added to Order
User added a reward to their order cart.
Same as Reward Selected
Same as Reward Selected
Reward Redeemed
This is an event configured in Amplitude, combining Reward Redeemed In-store and Reward Redeemed Online.
Same as Loyalty Transaction Created
Same as Loyalty Transaction Created
Reward Redeemed In Store
Triggered when a reward is redeemed during a purchase where channel is RESTAURANT.
Same as Loyalty Transaction Created
Same as Loyalty Transaction Created
payAtCounter
Note |
---|
Note: Only when the transaction is created and claimed in different POS/Kiosk vendor |
The posSystem different vendors from when transaction was created to when it was finalized, e.g. Tillster-Toshiba
Reward Redeemed Online
Triggered when a reward is redeemed during a purchase where channel is WEB or APP.
Same as Loyalty Transaction Created
Same as Loyalty Transaction Created
Quests / Challenges
Quest events are related to the Challenges feature documented here: Loyalty Challenges UI.
Event Name
Description
Properties
Property Description
Quest Activated
When a Quest/Challenge is activated by an user
totalStepsCount
Total # of steps in the Quest
activatedOn
Quest has been activated
incentiveId
refers to the CONFIG Offer or Reward ID if the Quest is type OFFER or REWARD respectively.
configId
UID for the personalized quest that is created for each specific user that activates a quest
stepsCompletedCount
Total # of steps completed
incentiveType
Type of Incentive (Reward or Offer)
loyaltyId
Loyalty ID associated with the User
name
Name associated with the Quest
createdAt
When was the transaction created
questId
ID associated with the Quest
Quest Step Completed
When a step as part of a Quest/Challenge is completed by an user
activatedOn
Quest has been activated
loyaltyId
Loyalty ID associated with the User
Offer Assignment | Triggered when the Offer Assignment endpoint receives a request from a partner. | Duration | The duration in ms of the offer assignment process from the time the request is received until it is finished. |
engineId | The Loyalty Engine ID of the configurable offer from the sanity page. | ||
Partner | The partner that requested the offer assignment. | ||
Reference | An optional property where the partner can send the reason or event that generated the request for this offer assignment. | ||
Status | Successful or Error. | ||
traceId | The ID of the offer assignment process. | ||
ErrorDescription | The error that happened. (Only for the Error status) |
Rewards
Event Name | Description | Properties | Property Description |
---|---|---|---|
Reward Selected | User clicked on the reward from reward list and saw the reward description. | name | Reward name, e.g. “Bacon Double XL Cheese Meal“ |
sanityId | Sanity ID of the offer | ||
Status |
| ||
Category |
| ||
Reward Added to Order | User added a reward to their order cart. | Same as Reward Selected | Same as Reward Selected |
Reward Redeemed | This is an event configured in Amplitude, combining Reward Redeemed In-store and Reward Redeemed Online. | Same as Loyalty Transaction Created | Same as Loyalty Transaction Created |
Reward Redeemed In Store | Triggered when a reward is redeemed during a purchase where channel is RESTAURANT. | Same as Loyalty Transaction Created | Same as Loyalty Transaction Created |
payAtCounter
| The posSystem different vendors from when transaction was created to when it was finalized, e.g. | ||
Reward Redeemed Online | Triggered when a reward is redeemed during a purchase where channel is WEB or APP. | Same as Loyalty Transaction Created | Same as Loyalty Transaction Created |
Quests / Challenges
Quest events are related to the Challenges feature documented here: Loyalty Challenges UI.
Event Name | Description | Properties | Property Description | |||
---|---|---|---|---|---|---|
Quest Activated | When a Quest/Challenge is activated by an user | totalStepsCount | Total # of steps in the Quest | |||
incentiveType | Type of Incentive (Reward or Offer) | |||||
stepsCompletedCount | Total # of steps completed | |||||
name | Name associated with the Quest | |||||
questId | ID | |||||
activatedOn | Quest has been activated | |||||
incentiveId | refers to the CONFIG Offer or Reward ID if the Quest is type OFFER or REWARD respectively. | |||||
configId | UID for the personalized quest that is created for each specific user that activates a quest | |||||
stepsCompletedCount | Total # of steps completed | |||||
incentiveType | Type of Incentive (Reward or Offer) | |||||
loyaltyId | Loyalty ID associated with the User | |||||
name | Name associated with the Quest | |||||
createdAt | When was the transaction created | |||||
questId | ID associated with the Quest | |||||
Quest Step Completed | When a step as part of a Quest/Challenge is completed by an user | benefitId | refers to the the ID generated when the quest is completed. This can be the ID of: a personalized Offer or Reward if the quest is of type OFFER or REWARD a transaction generated to grant points, if the quest is of type BONUS_POINTS | |||
loyaltyId | Loyalty ID associated with the User | |||||
incentiveType | Type of Incentive activatedOn | Quest has been activated | ||||
loyaltyId | Loyalty ID associated with the User | |||||
totalStepsCount | Total # of steps in the Quest | |||||
incentiveType | Type of Incentive (Reward or Offer) | |||||
stepsCompletedCount | Total # of steps completed | completedAt | When was the quest completed | |||
name | Name associated with the Quest | totalStepsCount | Total # of steps in the Quest | |||
questId | ID associated with the Quest | |||||
createdAt | When was the transaction created | |||||
Quest | CompletionCompleted | When a Quest/Challenge is completed by an user | and the benefit is also unlocked for Buddy users*For Invitation Code on Signup, this event is triggered by | Existing New user (user | from the app that shared his/her Invitation Code with a friend) existingUserLoyaltyId | Loyalty ID associated with the Quest Buddy User (did not complete Quest steps) |
name | Object with information on existing user data | |||||
newUserLoyaltyId | Loyalty ID associated with main user that completed Quest Steps | |||||
questId | ID associated with the Quest | |||||
email of Quest Buddy user | ||||||
rbiCognitoId | User ID of Quest Buddy user |
Loyalty Tiers
Tip |
---|
The data about user’s Loyalty Tier will be saved under User Properties as Tier (e.g. if user is in Loyalty Tier 1, then user property |
...
Event Name
...
Description
...
Properties
...
Property Description
...
Loyalty Tier Updated
...
Triggered after a transaction when a user moves from a Loyalty Tier to another Loyalty Tier (e.g. user moves from Tier 1 to Tier 2 or user is downgraded from Tier 2 to Tier 1). When user signs up, we will not trigger this event from user having no tier to Tier 1 (this we can measure with the Sign Up Complete event).
Info |
---|
Note: The rules required for a user to enter Tier 2 and rules required for user to continue being a part of Tier 2 are set under Earning Calculation Folder in Sanity. |
...
loyaltyTierChange
...
This property describes the Loyalty Tier changes the user has gone through. The two possible values for this property are:
Tier1-Tier2
- this means the user went from Loyalty Tier 1 (King Loyalty User) to Loyalty Tier 2 (Superking Loyalty user)Tier2-Tier1
- this means the user was demoted from Loyalty Tier 2 (Superking Loyalty User) to Loyalty Tier 1 (King Loyalty user)
...
updatedTime
...
Time when user updated their tiers
...
pointBalance
...
Loyalty Point balance that the user has at this point
...
rbiCognitoId
...
User ID of user that updated loyalty tiers
Loading Events
Note |
---|
These events are being worked on by Development team and are |
that signed up with Invitation Code that was shared from existing app user) | benefitId | refers to the the ID generated when the quest is completed. This can be the ID of: a personalized Offer or Reward if the quest is of type OFFER or REWARD a transaction generated to grant points, if the quest is of type BONUS_POINTS | |
loyaltyId | Loyalty ID associated with the User | ||
incentiveType | Type of Incentive (Reward or Offer) | ||
stepsCompletedCount | Total # of steps completed | ||
completedAt | When was the quest completed | ||
name | Name associated with the Quest | ||
totalStepsCount | Total # of steps in the Quest | ||
questId | ID associated with the Quest | ||
createdAt | When was the transaction created | ||
Buddy Benefited from Quest Completion | When a Quest/Challenge is completed by an user and the benefit is also unlocked for Buddy users *For Invitation Code on Signup, this event is triggered by Existing user (user from the app that shared his/her Invitation Code with a friend) | existingUserLoyaltyId | Loyalty ID associated with the Quest Buddy User (did not complete Quest steps) |
name | Object with information on existing user data | ||
newUserLoyaltyId | Loyalty ID associated with main user that completed Quest Steps | ||
questId | ID associated with the Quest | ||
email of Quest Buddy user | |||
rbiCognitoId | User ID of Quest Buddy user |
Loyalty Tiers
Tip |
---|
The data about user’s Loyalty Tier will be saved under User Properties as Tier (e.g. if user is in Loyalty Tier 1, then user property |
Event Name | Description | Properties | Property Description |
---|---|---|---|
Loyalty |
Triggered after the page loads.
My Code page load time
This property describes the amount of time in miliseconds that the My Code page took to load.
My Code page QR code load time
This property describes the amount of time in miliseconds that the QR Code on the My Code page took to load and be visible.
Rewards page load time
This property describes the amount of time in miliseconds that the Rewards page took to load.
Offers page load time
This property describes the amount of time in miliseconds that the Offers page took to load.
Offer Redemption page load time
This property describes the amount of time in miliseconds that the Offer Redemption modal page for static code took to load.
Offer Redemption page QR Code load time
This property describes the amount of time in miliseconds that the Offer Redemption modal QR Code took to load. This will only be sent if QR Code is enabled.
Offer Redemption page Short Code load time
Tier Updated | Triggered after a transaction when a user moves from a Loyalty Tier to another Loyalty Tier (e.g. user moves from Tier 1 to Tier 2 or user is downgraded from Tier 2 to Tier 1). When user signs up, we will not trigger this event from user having no tier to Tier 1 (this we can measure with the Sign Up Complete event).
| loyaltyTierChange | This property describes the Loyalty Tier changes the user has gone through. The two possible values for this property are:
| ||
updatedTime | Time when user updated their tiers | ||||
pointBalance | Loyalty Point balance that the user has at this point | ||||
rbiCognitoId | User ID of user that updated loyalty tiers |
Loading Events
Event Name | Description | Properties | Property Description |
---|---|---|---|
Loyalty Load | Triggered after the page loads. | My_Code_page_load_time | This property describes the amount of time in milliseconds that the My Code page took to load. |
My_Code_page_QR_Code_load_time | This property describes the amount of time in milliseconds that the QR Code on the My Code page took to load and be visible. | ||
Rewards_page_load_time | This property describes the amount of time in milliseconds that the Rewards page took to load. | ||
Offers_page_load_time | This property describes the amount of time in milliseconds that the Offers page took to load. | ||
Offer_Redemption_page_load_time | This property describes the amount of time in milliseconds that the Offer Redemption modal page for static code took to load. | ||
Offer_Redemption_page_QR_Code_load_time | This property describes the amount of time in milliseconds that the Offer Redemption modal QR Code took to load. This will only be sent if QR Code is enabled. | ||
Offer_Redemption_page_Short_Code_load_time | This property describes the amount of time in milliseconds that the Offer Redemption modal offer short code took to load. | ||
QR and Short code Error | Triggered when the QR and Short code cannot be generated. | Message | This property refers to a string in Lokalise ( |
rootCause | This property refers to the root cause why the QR Code cannot be generated | ||
isNetworkError | This property refers to whether the error is generated by a network error |
Points
Event Name | Description | Properties | Property Description |
---|---|---|---|
Loyalty Points Assignment | Triggered when the Loyalty Points Assignment endpoint receives a request from a partner. | Duration | The duration in ms of the loyalty points assignment process from the time the request is received until it is finished. |
Partner | The partner that requested the loyalty points assignment. | ||
pointsDeducted | How many points were deducted from the user. | ||
pointsEarned | How many points the user earned. | ||
Reference | An optional property where the partner can send the reason or event that generated the request for this loyalty points assignment. | ||
Status | Successful or Error. | ||
TransactionId | The id of the transaction created for the points assignment. (Only for the Successful status) | ||
ErrorDescription | The error that happened. (Only for the Error status) |
Promo Codes
Event | Fires when | Main attributes | Payload details |
---|---|---|---|
| When a Action tab it`s displayed to the user |
| |
| When a Action form it`s submitted |
| |
| When the Promo Code endpoint in the Loyalty Engine is hit |
| To add when tested in Staging |