Skip to main content
POST
Redeem Stackable Discounts (client-side)

Authorizations

X-Client-Application-Id
string
header
required
X-Client-Token
string
header
required

Headers

origin
string<hostname>
required

Indicates the origin (scheme, hostname, and port).

Body

application/json

Response body schema for POST v1/redemptions.

redeemables
(Voucher Redeemable ยท object | Promotion Tier Redeemable ยท object | Promotion Stack Redeemable ยท object | Gift Card Redeemable ยท object | Loyalty Card Redeemable ยท object)[]
required

An array of redeemables. You can combine voucher(s) and promotion_tier(s). Alternatively, send one uniquepromotion_stack in the array. Each unique redeemable can be sent in one request only once.

Required array length: 1 - 30 elements

Validate or redeem a discount code.

options
object

Configure parameters returned in the response.

order
Order ยท object

Order information.

customer
Customer ยท object

Customer's information.

session
Session ยท object

Schema model for session lock object. The session object is required to establish a session between multiple parallel validation and redemption requests. If you only send the type parameter in the request, then by default the session lock will be established for 7 days. Read more on establishing a validation session.

tracking_id
string

Is correspondent to Customer's source_id

metadata
object

A set of key/value pairs that you can attach to a redemption object. It can be useful for storing additional information about the redemption in a structured format.

Response

200 - application/json

Depending on your project settings: all redeemables must be valid or just one must be valid to result as valid redemption. Read more in the Stacking Rule Documentation.

Response body schema for POST v1/redemptions.

redemptions
Redemption ยท object[]
parent_redemption
Redemption ยท object

This is an object representing a redemption for POST v1/redemptions and POST /client/v1/redemptions.

order
Order Calculated No Customer Data ยท object

Contains the order details associated with the redemption.

inapplicable_redeemables
Inapplicable Redeemable ยท object[]

Lists validation results of each inapplicable redeemable.

skipped_redeemables
Skipped Redeemable ยท object[]

Lists validation results of each redeemable. If a redeemable can be applied, the API returns "status": "APPLICABLE".

Last modified on June 15, 2026