Rewards Options
LoyaPro partners are able to provide multiple rewards options, such as:
- A fixed amount of discount on the total order
- Example:
15 SAR deducted from subtotal
- Example:
- A percentage discount on total order
- Example:
15% applied on subtotal
- Example:
- A fixed amount deducted from selected products
- Example:
If a meal price is 30 SAR and the fixed discount amount is 5 SAR then the total for the selected mean is 25 SAR
- Example:
- A percentage amount applied on selected products
- Example:
100% on cafe latte meaning that the whole price of cafe latte is discounted and the customer is able to get it for free
- Example:
Redemption Process
The redemption process is done in 3 steps and 2 Simple API calls.
Check Reward
The first Step is when the cashier adds the customer to the order and starts the redemption process. The POS should start the process by showing an input field for the cashier to insert the redemption code provided by the customer. Once it's inserted the cashier will click on Validate/ Check Rewards
Reward API
When the cashier clicks on Validate / Check Reward
the first api call will be triggered
Webhook | Method |
---|---|
https://loyapro.com/pos/1.0.0/{pos_name}/reward | POST |
Reward API Request should include:
- POS Business/Merchant Reference or Identifier (Example:
9512322
) - Customer National Phone Number (Example:
551231212
) - Customer Country Code (Example: for Saudi Arabia
966
) - Reward/Redemption Code (Example:
S5923RT21
)
{
"business_reference": "9512322"
"customer_name": "Tariq Ali",
"customer_mobile_number": "548548545",
"mobile_country_code": 966,
"reward_code": "24564955"
}
Reward API response will include:
- POS Business Reference or Identifier
- Redemption Code (Provided by the customer & inserted by the cashier)
- Customer Reference or Identifier
- Customer Phone Number
- Discount Type
- Order based (Hint: look at Rewards Option 3 & 4)
- Products based (Hint: look at Rewards Option 1 & 2)
- Is Percentage (Indicating the discount is a fixed amount or a percentage discount)
- Maximum Discount Allowed
- Products Allowed
- Quantity
{
"type": 2,
"discount_amount": 100,
"is_percent": true,
"customer_mobile_number": "582816297",
"mobile_country_code": "SA",
"reward_code": "335445",
"business_reference": "644722",
"max_discount_amount": 1000,
"allowed_products": {
"quantity": 1,
"products_list": [
"9327dac3-db63-42a5-afff-bcacd7536125",
"948bfe84-6aef-4f82-95ab-1bf9528ba666",
"9501d8a2-816d-4e8a-a2b0-6e01708ca228",
"9554eb8d-4424-4620-a430-1dbfcabd8a2d",
"961e7f39-0c2f-471d-a8ae-ed04b48bb9e5",
"925a0e7e-31dd-472a-8dd9-af9567625f06",
"_74g399a4",
"_7g26gg9a",
"_78851123",
"_792d9a92"
]
}
}
Redeem Reward
Once the system receives the response from LoyaPro the cashier will be able to confirm the customer reward. To confirm the customer reward the POS should provide a Redeem
Button. The cashier then will be able selects the customer reward and clicks Redeem
Redeem API
When the cashier clicks on Redeem
the second API will be called
Webhook | Method |
---|---|
https://loyapro.com/pos/1.0.0/{pos_name}/redeem | POST |
Redeem API Request should include:
- POS Business/Merchant Reference or Identifier (Example:
9512322
) - Date & Time of event
- Branch Reference or Identifier
- Customer National Phone Number (Example:
551231212
) - Customer Country Code (Example: for Saudi Arabia
966
) - Reward/Redemption Code (Example:
S5923RT21
) - Redemption Details that includes an array of selected products and quantity (Only if rewards is for selected products)
- Products Identifier
- Quantity
Redeem API Response:
Empty with Status 200