Implementation may include all or only selected processes depending on business requirements.
Additional processes may be implemented by agreement.
Goal: Token-based authentication against the loyalty system
Result: Authentication token
Call: POST /auth/login
Comment: Token should be reused for up to 12 hours or until restart. One token may be used for all connected systems (e.g. centralized POS service).
Goal | Result | Call | Comment |
---|
Scan customer code (card/app) | QR/Code read and customer ID | N.A. | JSON format: {"accountId":"XXX","idType":"CARDCODE"} or {"accountId":"XXX","idType":"APPCODE"} |
Identify account | Account ID and status | GET /accounts | Use ID type CARDCODE or APPCODE. Only ACTIVE accounts should proceed. |
Check registration (membership) | Membership status, opt-ins, user ID | GET /accounts/{accountId}/memberships | Indicates account is registered. |
Get user data | Personal details | GET /users | Generally not required unless data protection alignment needed. |
Display point balance | Available / locked points | GET /accounts/{accountId}/balance | |
Step | Call | Comment |
---|
1 | N.A. | Assign customer to transaction before/after receipt entry |
2 | N.A. | Finalize receipt (internal POS process) |
3 | POST /accounts/{accountId}/transactions | Receipt total must match line items sum. All fields should be filled. |
4 | N.A. | Handle API response. Use offline queue for failures. |
5 | N.A. | Print receipt info (e.g. customer ID, points earned). |
Step | Call | Comment |
---|
1 | GET /transactions/{transactionId} | Retrieve original receipt |
2 | N.A. | Assign customer from original receipt or scan again |
3 | N.A. | Finalize receipt (internal POS process) |
4 | POST /accounts/{accountId}/transactions | Use RETURN line items. Receipt ID must be unique. |
5 | N.A. | Handle API response. Use offline queue for failures. |
6 | N.A. | Print receipt per business requirements. |
Step | Call | Comment |
---|
1 | N.A. | Finalize receipt |
2 | POST /transactions | Submit for reporting purposes only. Must use unique ID. |
3 | N.A. | Handle API response. Use offline queue for failures. |
4 | N.A. | Optional message on receipt (e.g. "Register and earn points"). |
Step | Call | Comment |
---|
1 | N.A. | Scan customer card/app |
2 | GET /accounts/{accountId}/balance or /balance/EUR | Query points or euro equivalent |
3 | N.A. | Enter amount to redeem |
4 | POST /accounts/{accountId}/transactions | Process as payment method before receipt finalization |
5 | N.A. | Handle API response. No retries if failed. |
6 | POST /accounts/{accountId}/transactions | Add payment to receipt |
7 | POST /accounts/{accountId}/transactions | Process refunds as negative transaction if needed |
No POS action required. Redemption occurs automatically when a qualifying purchase is processed. Article/merchandise matching must be defined in the coupon data.
Step | Call | Comment |
---|
1 | N.A. | Scan coupon code from app; format: {"accountId":"XXX","accountCouponId":"YYY"} |
2 | GET /v2/accountcoupons/{accountcouponid} | Validate coupon and get external reference |
3 | N.A. | Check reference against cart rules |
4 | PATCH /v2/accountcoupons/{accountcouponid}/preview | Optional: validate coupon preview |
5 | N.A. | Apply pricing rule (internal) |
6 | POST /accounts/{accountId}/transactions | Finalize receipt |
7 | PATCH /v2/accountcoupons/{accountcouponid} | Redeem coupon in Convercus system |
8 | N.A. | Coupon redemption is final |
Step | Call | Comment |
---|
1 | N.A. | Scan customer card/app |
2 | GET /v2/accounts/{accountid}/accountcoupons | Retrieve visible coupons with external references |
3 | N.A. | Display and allow selection in POS interface |
4 | N.A. | Store selected AccountCouponId for redemption |
5 | N.A. | Optionally validate pricing rule against cart |
6 | PATCH /v2/accountcoupons/{accountcouponid}/preview | Optional validation step |
7 | N.A. | Apply pricing rule (internal) |
8 | POST /accounts/{accountId}/transactions | Finalize receipt |
9 | PATCH /v2/accountcoupons/{accountcouponid} | Finalize coupon redemption |
10 | N.A. | Redemption is not reversible |