Use Case: Redeeming Loyalty Points as a Discount at Checkout
What This Is
This use case explains how to allow a customer to redeem their available loyalty points at checkout to reduce the amount they need to pay. This is a controlled redemption process that uses a secure holding mechanism to prevent point misuse or double spending.Why It Matters
- Enables customers to experience the tangible value of their rewards
- Drives higher redemption rates and program satisfaction
- Prevents fraud by locking points before final confirmation
- Keeps the redemption experience smooth and clerk-friendly
- Skipping this step or mishandling the hold process can lead to redemption failures, customer dissatisfaction, or inaccurate point deductions
How to Implement It
The redemption process involves three API calls in sequence:- Fetch the customer’s available balance using the Get Customer Balance API
- Reserve the desired redemption amount using the Hold Points API
- Complete the order using the Track Order API with the hold reference
Example Scenario
A customer wants to redeem 100 points against their current order. The steps are:Step 1: Hold Points (Temporary Redemption)
This reserves points temporarily before checkout:Hold Duration: Points are held temporarily (typically 10 minutes) to prevent double-spending. If the order isn’t completed within this time, the points are automatically released back to the customer.
Step 2: Submit the Order with the Redemption Applied
What Gameball Does Behind the Scenes
- Locks the points at the time of hold
- Verifies the hold reference during order submission
- Deducts the redeemed points and records them
- Rewards new points based on the paid amount after redemption
- Updates the customer profile with redemption and earning history
Key Takeaways for Developers
- The
totalPaidfield must reflect the discounted value after applying the held points - The
totalPricefield should always reflect the original order value before discounts - Do not reuse or delay using the hold reference. It is time-sensitive
- If the customer cancels or abandons the transaction, release the hold using the Release Hold API
Secure QR-Based Redemption
Using QR Codes for Redemption
When customers present a QR code at checkout, the redemption flow includes an additional security step:- Scan and parse the QR code to extract
customerIdandhash - Include the
hashin the Hold Points API request - Complete the order with the hold reference as usual
QR Code Format
The QR code value contains:customerId: The customer identifierhash: A 6-digit rotating secure hash
mobile_966500001234123456
Parsed as:
customerId:mobile_966500001234hash:123456
Hold Points with Hash
Virtual Pass Support
Gameball Virtual Pass allows customers to use QR codes without a mobile app. The pass is stored in Apple Wallet (iOS) or PassWallet (Android) and works exactly like app-based QR codes.- No additional API integration needed
- Same redemption flow as app-based QR codes
- Ensure POS scanners support digital screens and long string formats