Issue Ad Hoc Redemption
POST/client/users/:correlation_id/adhoc-redemption
This request allows ad hoc redemptions.
In the case of household redemptions, the points for redemption are taken proportionally from each contributor. If a contributor has no points to contribute, then the contributions are spread amongst the remaining contributors and no transaction is recorded for that contributor with zero. Last Activity Date (LAD) is updated for all contributors who provided points, their balances are updated, and transactions are recorded for each.
Redemptions cannot be reserved or made using PHONE_NUMBER as the X-Identifier-Type on Start Session, so if it is used, an error message is returned.
Request
Body
| Attribute | Definition | Format | Notes |
|---|---|---|---|
| businessUnit | The business unit for the transaction. | String | Name of business unit. Mandatory field. |
| reservationToken | Reservation token for the ad hoc redemption | String | Mandatory field. |
| externalReferenceId | Reference ID used by the client to identify the redemption. | String | Optional field. |
| channel | The channel for the transaction. | String | For example, "APP" or "POS". Optional field. |
Response
| Attribute | Definition | Format | Notes |
|---|---|---|---|
| transactionId | Unique identifier for the ad hoc redemption transaction. | String | |
| message | Success message | String |
Error Responses
| statusCode | errorMessage | errorCode | Definition |
|---|---|---|---|
| 400 Bad Request | Business Unit is mandatory and required to be non-empty | INVALID_REQUEST | The Business Unit relevant to the ad hoc redemption transaction must be included. |
| 400 Bad Request | Account is not eligible for redemption. | INVALID_REQUEST | The x-identifier-type PHONE_NUMBER cannot be used for reservations or redemptions. |
| 400 Bad Request | Business Unit {{businessUnit}} is not a valid business unit | INVALID_REQUEST | The Business Unit must be in the list of valid business units supplied by the client and must be literally the same (no changed or additional characters). |
| 400 Bad Request | reservationToken is mandatory and required to be non-empty | INVALID_REQUEST | The reservation token relevant to the ad hoc redemption transaction must be included. |
| 400 Bad Request | Could not find the reservation. | INVALID_REQUEST | The reservation token specified is invalid or expired. |
| 400 Bad Request | Ad Hoc Redemption feature is not enabled. | INVALID_REQUEST | The ad hoc redemption transaction cannot be processed because the feature is not enabled. |
| 400 Bad Request | Could not find the account. | INVALID_REQUEST | The account identified for this ad hoc redemption transaction could not be found. |
Request
Responses
- 200
- 400
200 - Ad Hoc Redemption
400 - Business Unit Not Specified