Offer & Loyalty Points Assignment - Braze Campaign Configuration

Assign Offers to Users Using Braze Webhook

Sanity Setup

  • Create a Config Offer (e.g. config offer for for BK UK)

    • you will need a different Config Offer created for each offer you would like to assign using Braze

    • save the Loyalty Engine ID of the template offer to input into Braze after

    • within this config offer, in the Mechanics dropdown under Benefits you will need to link the offer benefits (e.g. Picker or Offer Combo)

    • Make sure to add the config offer to the list of Live Config Offers in the Live Offers in Sanity, so the offer shows in the app to the user after it is assigned

If the same offer is assigned multiple times, the user will see the same offer added multiple times to their offer list. This means that the user will see multiple instances of the same offer in their offer list - as many as offer assignments done for that offer. Each offer will maintain their own configuration settings

Braze Configuration

Body request

{ "email": "{{${email_address}}}", "source": "braze-test", "rank": 123456, (optional) "configId": "Loyalty engine id of config offer", "ruleParams": { "startDate": "yyyy-mm-dd", "endDate": "yyyy-mm-dd" } }
  • Replace configId with the Loyalty Engine ID of the offer you want to assign using Braze

  • source should be braze in Production; braze-test in lower environments (Dev, Staging)

  • email -> leave as is

Note that in the past we relied on "userId": "{{${user_id}}}" , but after the EUC1 user data migration all campaigns should use "email": "{{${email_address}}}"

  • startDate and endDate-> required fields; the endDate must be set after the startDate - this represents the duration of time the offer assignment will be available for

  • rank field (optional) determines the sequence priority of the assigned personalized offer. The lower the number, the higher the priority (i.e. 1 would rank at the top)

Request headers

Webhook URL

the Hot path should be used for any user triggered campaigns that should happen in realtime

  • ie: T-Mobile Tuesdays, sign up bonuses

the Cold path should be used for any marketer triggered campaigns that can be processed over time

  • ie: mass offers assignments, mass points updates

Example of Hot Webhook URL in Production:

https://prod-bk-loyalty-middleware.rbictg.com/bulk-action/hot/create-offer

Example of the Cold Webhook URL in Production:

https://prod-bk-loyalty-middleware.rbictg.com/bulk-action/cold/create-offer
Content-type
X-Region
X-Api-Key

Other resources

Assign Loyalty Points to Users Using Braze Webhook

Body request

  • Replace pointsEarned with the amount of points you would like users that receive this Braze web hook to receive

  • source should be braze in Production; braze-test in lower environments (Dev, Staging)

  • email -> leave as is

Request headers

Webhook URL

Example of Hot Webhook URL in Production:

Example of the Cold Webhook URL in Production:

Content-type
X-Region
X-Api-Key

Â