Contents
Table of Contents | ||||
---|---|---|---|---|
|
Overview
System wide offers are the ‘base’ offers in the loyalty offers system. They are the closest match to how offers exist in the current offer system - will be referred to as ‘Cross Brand App Offers’ or ‘CBA Offers’ from here on out. All of the data and configuration for a systemwide offer is defined in sanity
Location
In the app, systemwide offers are located at /rewards/offers. Note that routing to /offers will redirect here when systemwide offers is enabled.
The configuration for systemwide offers are located in sanity under Order-Level Content > Loyalty > Incentives > Offers >Systemwide Offers.
How to Create a System Wide Offer
Most sanity fields within system wide offers are the same or similar to the fields in CBA offers. This guide will highlight anything new in system wide offers in blue.
Step 1: Navigate to Order-Level Content > Loyalty > Incentives > Offers > Systemwide Offers
Step 2: Click on the pencil icon to create a new systemwide offer
Step 3: Content Section
We’ve broken up content fields and offer mechanic fields to make it easier to create and update systemwide offers. The key distinction between the two is that ‘mechanics’ fields have a direct impact on the functionality of the offer, where content fields are purely visual.
Name
This is the name of the offer that will be displayed
5% Off Your Order
Description
This is the description of the offer
Take 5% off
Localized Image
This is the image that appears on the left of the card in the offer list view. It is also the primary image when the user is on the specific offer link.
From the previous example:
Notification Details
This section is for placeholder cards that will appear in the featured benefits carousel of the rewards dashboard. Unless you are building a placeholder tile for the offer, this section does not need to be configurd for SWoffers
UI Pattern
UI pattern determines what UI form the offer appears to the user.
NOTE: Until Quests & Promo Codes are built into Loyalty Offers, only select ‘Standard offer’
Short Code
This is the 4 digit code that identifies the digital offer in PMIX. For loyalty enabled restaurants, in restaurant redemption occurs by adding the offer to the users' in restaurant basket and generating a unique 6 digit loyalty basket code. For non-loyalty enabled restaurants, this short code is also what an user would show a team member in restaurant to redeem an offer.
Offer Price vs Market Price:
One of these fields must be filled out in order to publish, but not both
Offer price is a static price that will be the same no matter what, ie: $1 coke
Value is in cents, ie: $1 == 100
Market price means that we are taking the price of an item at a specific restaurant, and applying it to this offer. For example, a BOGO offer will take the price of the item at a specific store, not a static price
Reference the normal menu item that price should be based off of
Step 4: Mechanics Section
We’ve broken up content fields and offer mechanic fields to make it easier to create and update systemwide offers. The key distinction between the two is that ‘mechanics’ fields have a direct impact on the functionality of the offer, where content fields are purely visual.
Rules:
This is the section where you can define what the rule configurations should be for a user to be able to view and use the offer.
For a more detailed breakdown of each rule:
Incentives
This is where you define the benefit the user receives if they are able to redeem the offer.
Incentives linked to the offer can be an item, combo, picker, or discount from the menu or not. The toggle isOfferBenefit no longer needs to be enabled when creating a new offer.
Info |
---|
Note: In order to be able to link an offer to an existing item, offer, or picker from the menu reach out to your representative CSM to enable this functionality for you. After this is done please thoroughly test before pushing the offer to Production environment. |
Note |
---|
Offer activation and Swap are no longer used and were deprecated. |
Position
This section is no longer relevant for systemwide offers. You do not need to make any changes here.
Daypart
Add the dayparts that the offer should be eligible for here. This field can accomodate more than one daypart. Ensure the spelling matches the daypart in MDM.
If this field is left empty, the offer will be available in all dayparts
Upsell Options
In this section FZ can configure upsell offers. Any offer added here will be prompted as an upsell when the user clicks Add to Mobile order
or Redeem In Restaurant
in an offer.
When the Hide This Offer from Offer's List
toggle is set to true this offer will not show in the user's offer list, even if it is added to the Sorted Offers in Sanity. This can be used for Upsell Offers, if we don't want to show them in the user's offers list and want it to only be accessible through the Upselling Modal
How it looks in the App:
All strings shown below are translatable
User clicks on Offer
User Clicks Redeem In Restaurant
User chooses to Upsell Offer
Step 5: Add Vendor Configs
These are the POS specific PLUs that apply to the specific offer. It is important to ensure that a value is configured for each POS vendor even if it’s just marking it as “empty” or “ignore”.
Step 6: Set Toggles
This toggle has been deprecated. Please do not use it in a systemwide offer.
The config only toggle has been removed from systemwide offers.
This test only toggle is a safeguard against an offer appearing in production with incomplete config. You should enable this toggle if you are only using the offer for testing or if the config is not ready for production.
Step 7: Define Redemption Type
Define what kind of offer this should be. Regular offers contained in the /rewards/offers page should be standard offers. Surprise and Delight offers should be surprise. Swap offers should be swap. Refer to the terms document for more details on surprise & delight and swap offers.
Step 8: Publish
Publish your offer when complete. After publishing, you should see this field populate because the loyalty engine has assigned your swoffer an ID
Step 9: Position
Navigate to Order-Level Content > Loyalty > Loyalty Offers UI > Offers > Systemwide Offers and add your offer. Drag it to the position you want in the list and publish.
Once published, you will see the sytemwide offer populate on the Offers List page (base url/rewards/offers) in the app.
Note: The URL for the systemwide offer will be constructed using the Loyalty Engine ID
Example URL:
{baseurl}/rewards/offers/{loyalty engine ID of systemwide offer}
Loyalty Offer for Users to get a free item with every order
It’s the Holiday season and the brands want to give back to Customers with a free Dessert Pie for every order they place! Let’s set up an Offer for User’s to get a free Dessert Pie with Every Order during December.
Navigate to the Systemwide Offers Tab on Sanity
Order-Level Content ➡️ Loyalty ➡️ Incentives ➡️ Offers ➡️ Systemwide OffersClick on the Icon to create a new Systemwide Offer
Complete the content of the Offer as desired
Next we will set the Mechanics of the Offers. This includes the rulesets for the Offer, the Benefit of the Offer and a few other Toggles
First you will define the rules for the Offer. These rulesets will set the validations for the Systemwide Offer itself and also the actions the user must complete in order to be eligible for the Systemwide Offer. (More details on these rulesets can be found here)
Firstly, for most campaigns its important to set the start and end date. This can be done using the Loyalty Between-Dates rule. For this Offer we will select the entire Month of December.
Let’s also limit this promotion to once per day so user’s do not abuse it. We can do this by using the Limit Rule and setting it 1 per Day.
Next, we will configure the Benefit the User will get for using this Offer. Under the Benefits section, we will select the Dessert Pie Item.
After setting the Vendor Configs, we will select the Redemption Type as Standard
Now that we’ve configured the content, set the Offer Mechanics, we can hit Publish!
Free Upsize for eligible items added to a Loyalty User’s cart
One of the core benefits A brand can offer their Loyalty User’s is getting a Free Upsize on their Sides or Drinks. Let’s walkthrough setting up a Swap Offer for Upsizes.
Navigate to the Systemwide Offers Tab on Sanity
Order-Level Content ➡️ Loyalty ➡️ Incentives ➡️ Offers ➡️ Systemwide OffersClick on the Icon to create a new Systemwide Offer
Configure the content of the Swap Offer as desired
Next we will set the Mechanics of the Offers. This includes the rulesets for the Offer, the Benefit of the Offer and a few other Toggles.
First you will define the rules for the Offer. These rulesets will set the validations for the Systemwide Offer itself and also the actions the user must complete in order to be eligible for the Systemwide Offer. (More details on these rulesets can be found here)
Since this Swap Offer is an Upsize for all eligible Sides and Drinks. We will need to add a Cart Requirement rule with all the Small and Medium Sides + Drinks. as the Upsize applies to all these items.
Let’s also limit this Upsize Offer to once per day so user’s do not abuse it. We can do this by using the Limit Rule and setting it 1 per Day.
Next, we will configure the Benefit the User will get for using this Offer. Under the Benefits tab we will select Swap
Once Swap is selected, we will need to set the logic for which upsize applies to which item for each upsizable item (i.e. Small Fries > Medium Fries, Medium Onion Rings > Large Onion Rings)
Once the Swaps have been configured, we will turn on the toggle for Position to be personalized by SSE
After setting the Vendor Configs, we will select the Redemption Type as Standard
Lastly, we will select the Redemption Type as Swap
Now that we’ve configured the content, set the Offer Mechanics, we can hit Publish!