Gift Cards, Gift Boxes & Loyalty
Checkout Gift Cards, Gift Boxes & Loyalty
Authentication
Request Format
Dynamic Settings
GIFT_CARD_CONFIG
LOYALTY_MONEY_ENABLED
MINIMUM_ORDER_AMOUNT
CUSTOMER_LOYALTY_CARD_SERVICE
Required header for AJAX requests. Must be set to XMLHttpRequest for all checkout requests.
XMLHttpRequestPossible values: Session cookie header (e.g. sessionid=abc123 or osessionid=<session_id>)
Gift Card Page context retrieved
Gift Card Page context retrieved
Required header for AJAX requests. Must be set to XMLHttpRequest for all checkout requests.
XMLHttpRequestPossible values: Session cookie header (e.g. sessionid=abc123 or osessionid=<session_id>)
The gift card number to look up. Leading and trailing whitespace is stripped automatically. Must not be blank.
1234-5678-9012-3456Slug of an active gift card provider. Returns a validation error if no active provider with this slug exists.
provider-aGift card submitted; flow routed to OTP or apply page
Gift card submitted; flow routed to OTP or apply page
Required header for AJAX requests. Must be set to XMLHttpRequest for all checkout requests.
XMLHttpRequestPossible values: Session cookie header (e.g. sessionid=abc123 or osessionid=<session_id>)
Gift Card Apply Page context retrieved
Gift Card Apply Page context retrieved
Required header for AJAX requests. Must be set to XMLHttpRequest for all checkout requests.
XMLHttpRequestPossible values: Session cookie header (e.g. sessionid=abc123 or osessionid=<session_id>)
Decimal amount to apply from the gift card (12 digits, 2 decimal places).
Must be greater than zero. The actual reserved amount may be lower after
caps are applied: available balance, remaining unpaid order total, and
the headroom under GIFT_CARD_CONFIG.max_amount_per_order.
100.00Gift card applied as reservation
Gift card applied as reservation
Required header for AJAX requests. Must be set to XMLHttpRequest for all checkout requests.
XMLHttpRequestPossible values: Session cookie header (e.g. sessionid=abc123 or osessionid=<session_id>)
Gift Card OTP Page context retrieved
Gift Card OTP Page context retrieved
Required header for AJAX requests. Must be set to XMLHttpRequest for all checkout requests.
XMLHttpRequestPossible values: Session cookie header (e.g. sessionid=abc123 or osessionid=<session_id>)
The one-time password received by the user (SMS or similar channel). Leading and trailing whitespace is stripped. Maximum 16 characters.
482917OTP verified; flow routed to GiftCardApplyPage
OTP verified; flow routed to GiftCardApplyPage
Required header for AJAX requests. Must be set to XMLHttpRequest for all checkout requests.
XMLHttpRequestPossible values: Session cookie header (e.g. sessionid=abc123 or osessionid=<session_id>)
OTP Resend Page context retrieved (empty)
OTP Resend Page context retrieved (empty)
Required header for AJAX requests. Must be set to XMLHttpRequest for all checkout requests.
XMLHttpRequestPossible values: Session cookie header (e.g. sessionid=abc123 or osessionid=<session_id>)
OTP resent or cooldown error returned
OTP resent or cooldown error returned
Required header for AJAX requests. Must be set to XMLHttpRequest for all checkout requests.
XMLHttpRequestPossible values: Session cookie header (e.g. sessionid=abc123 or osessionid=<session_id>)
Gift Card Payment Page context retrieved
Gift Card Payment Page context retrieved
Required header for AJAX requests. Must be set to XMLHttpRequest for all checkout requests.
XMLHttpRequestPossible values: Session cookie header (e.g. sessionid=abc123 or osessionid=<session_id>)
Must be true. The user must explicitly accept the terms and conditions
to confirm the gift card payment. Any other value returns a validation
error.
trueOrder placed or validation error returned
Order placed or validation error returned
Required header for AJAX requests. Must be set to XMLHttpRequest for all checkout requests.
XMLHttpRequestPossible values: Session cookie header (e.g. sessionid=abc123 or osessionid=<session_id>)
Gift Card Remove Page context retrieved (empty)
Gift Card Remove Page context retrieved (empty)
Required header for AJAX requests. Must be set to XMLHttpRequest for all checkout requests.
XMLHttpRequestPossible values: Session cookie header (e.g. sessionid=abc123 or osessionid=<session_id>)
Hash of the gift card number that identifies the reservation to remove.
Obtained from card_number_hash in the applied cards list returned by
the Gift Card Page. If the hash does not match any reservation the
request succeeds silently.
abc123hashGift card reservation removed
Gift card reservation removed
Required header for AJAX requests. Must be set to XMLHttpRequest for all checkout requests.
XMLHttpRequestPossible values: Session cookie header (e.g. sessionid=abc123 or osessionid=<session_id>)
Gift Card Update Amount Page context retrieved (empty)
Gift Card Update Amount Page context retrieved (empty)
Required header for AJAX requests. Must be set to XMLHttpRequest for all checkout requests.
XMLHttpRequestPossible values: Session cookie header (e.g. sessionid=abc123 or osessionid=<session_id>)
Hash of the gift card number identifying the reservation to update.
Obtained from card_number_hash in the applied cards list returned by
the Gift Card Page.
abc123hashNew desired reserved amount (12 digits, 2 decimal places). Must be greater than zero. Subject to the same cap rules as the apply step, adjusted so the card's current reserved amount is treated as if it were not yet applied.
75.00Gift card reservation amount updated
Gift card reservation amount updated
Required header for AJAX requests. Must be set to XMLHttpRequest for all checkout requests.
XMLHttpRequestPossible values: Session cookie header (e.g. sessionid=abc123 or osessionid=<session_id>)
Gift box index page context retrieved
Gift box index page context retrieved
Required header for AJAX requests. Must be set to XMLHttpRequest for all checkout requests.
XMLHttpRequestPossible values: Session cookie header (e.g. sessionid=abc123 or osessionid=<session_id>)
Gift box cleared, routed to GiftBoxPage
Gift box cleared, routed to GiftBoxPage
Required header for AJAX requests. Must be set to XMLHttpRequest for all checkout requests.
XMLHttpRequestPossible values: Session cookie header (e.g. sessionid=abc123 or osessionid=<session_id>)
Gift box page context retrieved
Gift box page context retrieved
Required header for AJAX requests. Must be set to XMLHttpRequest for all checkout requests.
XMLHttpRequestPossible values: Session cookie header (e.g. sessionid=abc123 or osessionid=<session_id>)
An optional personal message to include with the gift box.
Maximum 160 characters. Accepts null and empty string.
Happy Birthday! Wishing you all the best.When true, a gift video is requested for this order.
trueIndicates whether the gift video notification has already been sent. Passed through from the client after the notification is dispatched.
falseGift box saved, proceeding to next checkout step
Gift box saved, proceeding to next checkout step
Required header for AJAX requests. Must be set to XMLHttpRequest for all checkout requests.
XMLHttpRequestPossible values: Session cookie header (e.g. sessionid=abc123 or osessionid=<session_id>)
Loyalty Card Page context retrieved
Loyalty Card Page context retrieved
Required header for AJAX requests. Must be set to XMLHttpRequest for all checkout requests.
XMLHttpRequestPossible values: Session cookie header (e.g. sessionid=abc123 or osessionid=<session_id>)
The loyalty card points amount to apply to the order, as a decimal
value with up to 12 digits and 2 decimal places (e.g., "5.00").
Must not exceed the user's available points balance. The effective
maximum is basket_total - MINIMUM_ORDER_AMOUNT plus any previously
applied amount. Submitting a value above this cap or above the
available balance returns a validation error.
5.00Loyalty card points applied successfully
Loyalty card points applied successfully
Required header for AJAX requests. Must be set to XMLHttpRequest for all checkout requests.
XMLHttpRequestPossible values: Session cookie header (e.g. sessionid=abc123 or osessionid=<session_id>)
Loyalty Money Page context retrieved
Loyalty Money Page context retrieved
Required header for AJAX requests. Must be set to XMLHttpRequest for all checkout requests.
XMLHttpRequestPossible values: Session cookie header (e.g. sessionid=abc123 or osessionid=<session_id>)
User must accept the terms and conditions to proceed with the loyalty
money payment. Must be true.
Loyalty money payment confirmed and order placed
Loyalty money payment confirmed and order placed
Required header for AJAX requests. Must be set to XMLHttpRequest for all checkout requests.
XMLHttpRequestPossible values: Session cookie header (e.g. sessionid=abc123 or osessionid=<session_id>)
Loyalty Money Usage Page context retrieved
Loyalty Money Usage Page context retrieved
Required header for AJAX requests. Must be set to XMLHttpRequest for all checkout requests.
XMLHttpRequestPossible values: Session cookie header (e.g. sessionid=abc123 or osessionid=<session_id>)
The flat loyalty money amount to apply to the order, as a decimal value
with up to 12 digits and 2 decimal places (e.g., "50.00"). When
provided alongside account_usages, this field takes precedence and
account_usages is ignored. Submit 0 or null to remove any
previously applied loyalty money amount.
50.00A JSON-encoded array specifying the loyalty money amount to debit from each account label. Each array item must contain:
label_id: integer primary key of the account label, ornullfor unlabeled accountsamount: decimal string representing the amount to debit from that label group
The requested amount per label must not exceed the user's available
balance for that label. Unlabeled accounts are referenced with
"label_id": null. Malformed JSON returns a validation error.
Ignored when loyalty_amount_to_use is also provided.
[{"label_id": 1, "amount": "25.00"}, {"label_id": null, "amount": "10.00"}]Loyalty money usage amount set successfully
Loyalty money usage amount set successfully
Required header for AJAX requests. Must be set to XMLHttpRequest for all checkout requests.
XMLHttpRequestPossible values: Session cookie header (e.g. sessionid=abc123 or osessionid=<session_id>)
Reward List Page context retrieved
Reward List Page context retrieved
Required header for AJAX requests. Must be set to XMLHttpRequest for all checkout requests.
XMLHttpRequestPossible values: Session cookie header (e.g. sessionid=abc123 or osessionid=<session_id>)
Full credit card number. Leading, trailing, and internal spaces are stripped before validation. Must pass card number format validation.
5400010000000004Card expiry month. Must be a valid month value.
12Card expiry year (4 digits). Must be a valid future year.
2027Card security code (CVV/CVC). Must pass CVV format validation.
123Cardholder full name. Optional.
John DoeOptional alias or label for the card.
My Main CardRewards retrieved or validation error
Rewards retrieved or validation error
Required header for AJAX requests. Must be set to XMLHttpRequest for all checkout requests.
XMLHttpRequestPossible values: Session cookie header (e.g. sessionid=abc123 or osessionid=<session_id>)
Reward Selection Page context retrieved
Reward Selection Page context retrieved
Required header for AJAX requests. Must be set to XMLHttpRequest for all checkout requests.
XMLHttpRequestPossible values: Session cookie header (e.g. sessionid=abc123 or osessionid=<session_id>)
Dynamic input schema — the fields are determined at runtime based on the reward
types returned by the payment gateway in the preceding RewardListPage step.
Each field name is a RewardType enum value (general or special) and
each value is a decimal amount between 0 and the maximum available for that type.
The sum of all submitted amounts must not exceed the order total.
Amount of this reward type to apply. Between 0 and the maximum available for this type (12 digits, 2 decimal places).
25.00Rewards applied or validation error
Rewards applied or validation error
Last updated
Was this helpful?

