...
The RBI Loyalty API is used to allow guests to redeem offers and rewards when ordering in a restaurant. This Reference Guide is meant for software developers who would like to integrate a client application (typically a POS or Kiosk) with RBI Loyalty. Before reading this guide, please have a look at the customer journeys that are supported by the Loyalty API, all documented under Loyalty API - In-Store Customer Journey.
To access the Loyalty API, you will need to ask RBI for access to a Staging environment, and you will receive an API key. Please follow the steps below to make your first call to the Loyalty API.
...
The Loyalty API uses multiple endpoints, which are documented here: Loyalty API - V1 Current.
Using the API endpoints should follow this pattern:
Call the Identify (Loyalty API v1 - Identify) endpoint using either the Loyalty Code or the unique code generated when offers/rewards are pre-selected
Call the Transaction Validate (Loyalty API v1 - Validate) endpoint to check that the contents of the basket is valid. The endpoint will return errors in multiple scenarios documented here: Loyalty API - Error List. For an optimal guest (in the case of kiosks) or operator (in the case of POS) experience, our recommendation is to call Transaction Validate every time the user changes the offers and/or rewards contained in the basket. If network latency is an issue, integrators have the option to call this endpoint only once prior to payment. If Transaction Validate does not return errors, the loyalty transaction is expected to succeed in the last step below.
If the guest has made changes to rewards in their basket, call the Transaction Update (Loyalty API v1 - Update) endpoint with a status of
PENDING
, which will update the guest’s loyalty points balance. Note that the Transaction Update endpoint returns less detailed error information than Transaction Validate in case it fails, which means they need to be called separately.Collect payment from the guest
Call the Transaction Update endpoint with a status of
CLAIMED
, which will close the loyalty transaction and permanently alter the guest's loyalty point balance.Note that
CLAIMED
transactions can still be updated toVOID
later, in case there is a refund issued to the guest (in which case the loyalty point updates will be reverted).
...