Checkout Pages
Optional page name to force display a specific 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>)
Checkout state retrieved
Redirect to basket (empty basket) or login (guest purchase not allowed)
Basket not found
Page name to process (e.g., "IndexPage", "AddressSelectionPage")
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>)
No input fields are required for this step. Submit an empty form body to trigger order number assignment and 3D Secure routing evaluation.
No input fields are required for this step. The request body must be empty. Any fields submitted in the body are not processed by this page and will not cause a validation error; however, the Garanti Pay gateway is not involved at this step, so gateway-specific parameters are irrelevant here.
Step processed successfully
Redirect to basket (empty basket)
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>)
Index page context retrieved
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>)
User email address. Required for guest checkout.
Optional phone number. Must match phone regex pattern if provided.
Email submitted successfully
Email submitted 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>)
Delivery options retrieved
Delivery options 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>)
Primary key of the selected delivery option
If true, clears shipping and billing addresses when changing delivery option
falseDelivery option set successfully
Delivery option 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>)
Remote delivery options retrieved
Remote delivery options 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>)
Primary key of the selected delivery option
If true, clears shipping and billing addresses when changing delivery option
falseRemote delivery option set successfully
Remote delivery option 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>)
Address selection page context retrieved
Address 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>)
Primary key of the billing address
Primary key of the shipping address
Addresses set successfully
Addresses 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>)
Retail store selection page context retrieved
Retail store 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>)
Primary key of the billing address
Primary key of the selected retail store
Retail store selected successfully
Retail store selected 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>)
Pickup location selection page context retrieved
Pickup location 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>)
Remote identifier for the pickup location
Primary key of the billing address
Pickup location selected successfully
Pickup location selected 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>)
Address clear page context
Address clear page context
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>)
Address data cleared successfully
Address data cleared 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>)
Shipping option selection page context retrieved
Shipping option 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>)
Primary key of the selected shipping option
Additional required fields defined in the shipping option's kwargs.required_fields.
These fields vary based on the shipping option configuration and may include
fields like delivery_date, time_slot, etc.
Shipping option selected successfully
Shipping option selected 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>)
Data source shipping option selection page context retrieved
Data source shipping option selection page context retrieved
data_source_shipping_options: "[10, 21]"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>)
JSON-encoded array of data source shipping option IDs.
Each ID is the primary key of a DataSourceShippingOption model.
One shipping option must be selected for each data source in the basket.
[10, 20, 30]Data source shipping options selected successfully
Data source shipping options selected 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>)
Attribute-based shipping option selection page context retrieved
Attribute-based shipping option selection page context retrieved
{
"electronics": {
"attribute_based_shipping_options": [
{"pk": 100, "shipping_option_name": "Standard Delivery", "shipping_amount": "5.99"},
{"pk": 101, "shipping_option_name": "Express Delivery", "shipping_amount": "15.99"}
],
"product_ids": [1001, 1002, 1003],
"attribute_key": ["category"]
},
"clothing": {
"attribute_based_shipping_options": [
{"pk": 200, "shipping_option_name": "Economy Delivery", "shipping_amount": "3.99"},
{"pk": 201, "shipping_option_name": "Standard Delivery", "shipping_amount": "8.99"}
],
"product_ids": [2001, 2002],
"attribute_key": ["category"]
}
}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>)
JSON-encoded object mapping attribute values to shipping option IDs.
Keys are attribute values (e.g., "electronics", "clothing", "warehouse_a").
Values are primary keys of AttributeBasedShippingOption models.
One shipping option must be selected for each attribute value group.
{"electronics": 100, "clothing": 200}Attribute-based shipping options selected successfully
Attribute-based shipping options selected 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>)
Payment option selection page context retrieved
Payment option 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>)
Primary key of the selected payment option. Must be an active payment option that passes availability rules.
Payment option selected successfully
Payment option selected 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>)
BIN Number page context retrieved
BIN Number 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>)
First 6 or 8 digits of the credit card (BIN - Bank Identification Number). Used to determine card type, bank, and available installment options. Must contain only digits.
542119Pattern: ^\d{6,8}$BIN number submitted successfully
BIN number submitted 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>)
Installment selection page context retrieved
Installment 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>)
Primary key of the selected installment option. Must be one of the installments available for the card. Installment count of 1 represents single payment (no installment).
Installment selected successfully
Installment selected 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>)
Credit card confirmation page context retrieved
Credit card confirmation 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 (16 digits). Validated using Luhn algorithm. Spaces are automatically removed.
5421190000000004Pattern: ^\d{16}$Cardholder name as printed on the card. Must contain only letters and spaces. Validated against format rules.
JOHN DOECard expiration month in MM format. Must be between 01 and 12.
12Pattern: ^(0[1-9]|1[0-2])$Card expiration year in YYYY format. Must be current year or future.
2026Pattern: ^\d{4}$Card security code (CVV/CVC). Must be 3-4 digits depending on card type.
123Pattern: ^\d{3,4}$Nickname for the card if saving for future use.
Required when save is true.
Optional otherwise.
My Visa CardUser must accept terms and conditions to proceed. Must be true.
Whether to save the card for future purchases. Only available for authenticated users. Guest users cannot save cards.
falseUser preference for 3D Secure verification. May be overridden by system rules. Optional field.
Client-side timestamp for fraud detection
Whether Java is enabled in the browser
Browser language code (e.g., "en-US", "tr-TR")
en-USScreen color depth in bits (e.g., "24", "32")
24Screen height in pixels
1080Screen width in pixels
1920Timezone offset from UTC in minutes. Example: UTC-4 would be "240" (4 hours * 60 minutes)
240Credit card details submitted successfully
Credit card details submitted 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>)
3D Secure page context retrieved
3D Secure 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>)
3D Secure verification status. Must be true for successful verification.
Transaction success status. Must be true for successful transaction.
Merchant data passed through 3D Secure flow
Transaction identifier from 3D Secure provider
Electronic Commerce Indicator from 3D Secure
Cardholder Authentication Verification Value
LiqPay-specific token (gateway-specific)
Status from payment gateway
Payment identifier from gateway
Conversation data from gateway
Conversation identifier from gateway
MD status code from 3D Secure provider. Different values indicate authentication success/failure. Gateway-specific validation logic.
Additional gateway-specific response data
3D Secure verification processed
3D Secure verification processed
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>)
GPay Redirect Page context retrieved
GPay Redirect 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>)
No input fields are required for this step. The request body must be empty. Any fields submitted in the body are not processed by this page and will not cause a validation error; however, the Garanti Pay gateway is not involved at this step, so gateway-specific parameters are irrelevant here.
Redirect transaction initiated — flow advancing to GPayCompletePage
Redirect transaction initiated — flow advancing to GPayCompletePage
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>)
Funds transfer choice page context retrieved
Funds transfer choice 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>)
Primary key of the selected bank account. Must be an active bank account configured in the system.
Bank account selected successfully
Bank account selected 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>)
Funds transfer page context retrieved
Funds transfer 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 terms and conditions to proceed. Must be true.
Funds transfer order completed successfully
Funds transfer order completed 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>)
Pay on delivery payment choice page context retrieved
Pay on delivery payment choice 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 value string of one of the payment choices returned in the
payment_choices list from the GET context of PayOnDeliveryPaymentChoicePage.
Submitting a value not present in that list causes a validation error.
cashPayment choice selected successfully
Payment choice selected 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>)
Pay on delivery page context retrieved
Pay on delivery 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 terms and conditions to proceed. Must be true.
Pay on delivery order created successfully
Pay on delivery order created 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>)
BKM Express selection page context retrieved
BKM Express 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>)
User must accept terms and conditions to proceed. Must be true.
BKM Express session initiated successfully
BKM Express session initiated 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>)
BKM Express BIN number page context retrieved
BKM Express BIN number 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>)
First 6 or 8 digits of the card (BIN - Bank Identification Number). Used to identify the card type and available installment options for BKM Express. Must contain only digits.
542119Pattern: ^\d{6,8}$BIN number submitted successfully
BIN number submitted 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>)
BKM Express installment selection page context retrieved
BKM Express installment 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>)
The installment count to select (e.g., 1 for single payment, 3 for
three installments). This is not a primary key. The system resolves
the matching active Installment record for the card by installment_count.
3Installment selected successfully
Installment selected 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>)
BKM Express nonce page context retrieved
BKM Express nonce 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>)
Order identifier as returned by the BKM Express callback. Corresponds
to the order number assigned in BexSelectionPage.
ORD-2026-0001Transaction identifier issued by BKM Express. Must match the
transaction_id stored in the pre-order session data from BexSelectionPage.
TXN-20260401-001Nonce received and stored successfully
Nonce received and stored 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>)
BKM Express complete page context retrieved
BKM Express complete 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>)
No user-supplied fields. Submit an empty body or omit the body entirely. Input is read automatically from the server-side nonce cache.
BKM Express order finalised successfully
BKM Express order finalised 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>)
Masterpass REST BIN number page context retrieved
Masterpass REST BIN number 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>)
First 6 or 8 digits of the card (BIN - Bank Identification Number). Captured by the Masterpass JS SDK on the client side. Must contain only digits and have a length of 6 or 8.
542119Pattern: ^\d{6,8}$Flag indicating whether the card BIN comes from the user's stored
Masterpass cards. Stored on the pre-order as
pre_order.data["is_masterpass_stored_card"].
falseExample: falseBIN submitted successfully
BIN submitted 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>)
Masterpass REST installment selection page context retrieved
Masterpass REST installment 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>)
Primary key (pk) of the Installment record to select. The PK
must reference an active installment linked to the card resolved
in MasterpassRestBinNumberPage.
2Installment selected successfully
Installment selected 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>)
Masterpass REST order number page context retrieved
Masterpass REST order number 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>)
Hint forwarded to check_three_d_secure(...). When the rule
resolves to true, the user must complete a 3D Secure challenge
before the subsequent MasterpassRestCompletePage step.
falseExample: falseOrder number assigned successfully
Order number assigned 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>)
Masterpass REST complete page context retrieved
Masterpass REST complete 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>)
Final Masterpass REST submission payload. The endpoint also merges any
request query string parameters into the form data (with the form
amount key removed before merging) so that 3D Secure callback
parameters appended by the bank are captured automatically.
Must match pre_order.redirect_to_three_d set in
MasterpassRestOrderNoPage. A mismatch returns
"Transaction failed. Please try again.".
trueMasterpass payment token issued by the SDK.
mp-token-abc123Order id echoed back by the bank on 3D callback.
ORD-2026-00423D Secure md parameter from the bank callback.
3D Secure xid parameter from the bank callback.
3D Secure ECI value from the bank callback.
053D Secure CAVV value from the bank callback.
3D Secure random nonce from the bank callback.
Bank-issued response hash. Validated via gateway.is_hash_valid when
three_d_secure is true and the gateway has
hash_validation_enabled (skipped for iOS/Android client types).
3D Secure hash params list from the bank callback.
3D Secure hash params values from the bank callback.
3D Secure MD status. Validated via gateway.is_md_status_valid
when three_d_secure is true. A failure returns
"Transaction failed. Please try again.".
1Bank ACQ ICA value passed back by the gateway.
Payment received indicator returned by the gateway.
Total amount in minor units returned by the bank. Divided by 100
during validation and compared against
pre_order.get_total_amount_with_interest(). A mismatch returns
"Transaction failed. Please try again.". Note: any amount form
field is dropped before request query parameters are merged into
the body, so the value used is the one supplied by the bank
callback when present.
16559Merchant client id echoed back by the gateway.
Signature value from the bank callback.
Masterpass transaction type.
PURCHASE_3DPossible values: Masterpass status string.
Masterpass complete status string.
Masterpass payment id.
Masterpass conversation data.
Masterpass conversation id.
Masterpass callback status string.
Masterpass REST order finalised successfully
Masterpass REST order finalised 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>)
Masterpass REST reward list page context retrieved
Masterpass REST 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>)
Alias of the Masterpass stored card to query rewards for. The alias
is the value the Masterpass JS SDK uses to identify a card. The
value is forwarded to gateway.query_rewards(...).
MP-CARD-ALIAS-001Rewards retrieved or empty list returned
Rewards retrieved or empty list 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>)
Masterpass REST reward selection page context retrieved
Masterpass REST 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
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>)
Campaign List Page context retrieved
Campaign 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>)
The full credit card number. Leading, trailing, and internal spaces are stripped before validation is applied. Must be a valid card number.
5400010000000004Campaign list retrieved successfully
Campaign list retrieved 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>)
Campaign Selection Page context retrieved
Campaign 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>)
The code of the campaign to apply to the order. Must match one of the
campaign codes present in the campaigns list of the current pre-order
state. Submitting a code not present in that list causes a validation
error.
CAMP001Campaign selected successfully
Campaign selected 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>)
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>)
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>)
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>)
Cash register page context retrieved
Redirect to basket (empty basket) or login (guest purchase not allowed)
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>)
Local store staff identifier assigned by the store management system
Email address of the store staff member initiating the transaction
Local store identifier assigned by the store management system
Remote system identifier for the store staff member
Remote system identifier for the store
User must accept terms and conditions to proceed. Must be true. Basket amount must be greater than zero.
Cash register payment agreement submitted successfully
Redirect to basket (empty basket)
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>)
Cash register installment selection page context retrieved
Redirect to basket (empty basket)
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>)
Primary key of the selected installment option.
Must reference an active installment record.
Mutually exclusive with no_installment — exactly one must be provided.
Explicit confirmation to proceed without installment.
Must be true when provided.
Mutually exclusive with installment — exactly one must be provided.
Installment selection submitted successfully
Redirect to basket (empty basket)
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>)
Cash register complete page context retrieved
Redirect to basket (empty basket)
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>)
No request body fields are required for this submission. The system validates internally that a successful cash register transaction exists for the current pre-order.
Cash register payment completed and order created successfully
Redirect to basket (empty basket)
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>)
Send barcode SMS page context retrieved
Send barcode SMS 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>)
Recipient phone number for the barcode SMS. Validated against the configured phone number format.
+905551234567Barcode SMS sent successfully
Barcode SMS sent 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>)
Send checkout URL SMS page context retrieved
Send checkout URL SMS 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>)
Recipient phone number for the checkout URL SMS. Validated against the configured phone number format.
+905551234567Checkout URL SMS sent successfully
Checkout URL SMS sent 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>)
Remote shipping option selection page context retrieved
Remote shipping option 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>)
Primary key of the selected shipping option. Must be one of the options returned by the remote shipping service for the current checkout context.
1Remote shipping option selected successfully
Remote shipping option selected 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>)
Send SMS page context retrieved
Send SMS 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>)
Recipient phone number for the Pay on Delivery verification SMS. Validated against the configured phone number format.
+905551234567Verification SMS sent successfully
Verification SMS sent 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>)
Verify SMS page context retrieved
Verify SMS 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 6-digit numeric verification code sent via SMS for Pay on Delivery verification.
Must consist of exactly 6 digits. The code is validated against the
stored pre_order.verification_code and must be submitted before
the verify_timeout (default: 180 seconds) elapses.
483921Pattern: ^\d{6}$SMS verification result
SMS verification result
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>)
Coupon selection page context retrieved
Coupon 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>)
Primary key of the BasketOffer record to add or remove, as a string.
101Action to perform: "add" to apply the coupon or "remove" to unapply it.
addPossible values: Coupon action processed
Coupon action processed
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>)
Voucher code page context retrieved
Voucher code 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>)
Voucher code to apply to the checkout session. Leading and trailing whitespace is trimmed automatically. Submit an empty string or omit this field to clear the currently set voucher code. Maximum 128 characters.
WELCOME2024Voucher code processed
Voucher code processed
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
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>)
Sample Product Page context retrieved
Sample Product 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>)
List of product PKs to add as sample products. Must be from the set of
available sample products for the current basket's offer discount applications.
Duplicates are deduplicated automatically. Submit an empty array to explicitly
decline all sample products (sets unwanted_sample_products = true).
The count must not exceed the allowed_quantity returned in the page context.
[101]Sample product selection applied or validation error
Sample product selection applied 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>)
Order Note Page context retrieved
Order Note 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>)
Free-text note to attach to the order. Maximum 320 characters.
Submitting null or an empty string clears any previously stored note.
Please leave at the door.Note saved or cleared
Note saved or cleared
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>)
Delivery Bags Page context retrieved
Delivery Bags 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>)
SKU of the delivery bag product. Must match the SKU configured in
DELIVERY_BAGS_CONF.sku. The product must be active and have
product_type = miscellaneous.
DELIVERY-BAG-001Number of bags requested by the user. Only used when
DELIVERY_BAGS_CONF.is_quantity_changeable is true. Must be greater than
or equal to DELIVERY_BAGS_CONF.min_quantity. Defaults to 0 if omitted,
which falls back to min_quantity. Raises a validation error if
is_quantity_changeable is false and a non-zero value is submitted.
3Delivery bag selection confirmed or validation error
Delivery bag selection confirmed 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>)
Order Selection Page context retrieved
Order 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>)
A JSON value for the Order model's extra_field attribute. Must conform
to the schema defined by the Order model's attribute configuration
(accessible via the schema key in the GET page context). Validated via
Order.get_attribute_config('extra_field'). If no attribute config is
registered, the value is stored as-is without additional validation.
{"preference":"gift"}Extra field saved or validation error
Extra field saved 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>)
Slot Selection Page context retrieved
Slot 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>)
Start of the selected delivery time window. Must be an ISO 8601 datetime with timezone.
Must be a currently available slot according to SlotService.is_delivery_range_available().
2026-05-01T10:00:00+03:00End of the selected delivery time window. Must be an ISO 8601 datetime with timezone.
2026-05-01T14:00:00+03:00Slot selected or validation error
Slot selected 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>)
Reservation Selection Page context retrieved
Reservation 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>)
Set to true to skip reservation scheduling. When true, lower and upper
are not required and no delivery range is stored. When false, both lower
and upper are required.
falseExample: falseStart of the selected reservation time window. Required when skip_reservation is false.
2026-05-01T10:00:00+03:00End of the selected reservation time window. Required when skip_reservation is false.
2026-05-01T12:00:00+03:00Reservation selected or skipped
Reservation selected or skipped
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>)
Credit Payment Selection Page context retrieved
Credit Payment 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>)
Primary key of the selected Pos object. Must be one of the available POS options
returned by payment_option.get_available_poses() for the current credit payment option.
10POS option selected or validation error
POS option selected 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>)
Credit Payment Confirmation Page context retrieved
Credit Payment Confirmation 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 initiate the payment redirect. Must be true.
Redirect initiated or error
Redirect initiated or 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>)
Credit Payment Complete Page context retrieved
Credit Payment Complete 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 active schema depends on the gateway of the selected POS option
(pre_order.data['credit_payment_option'].gateway).
Payment completed or error
Payment completed or 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>)
MobilExpress selection page context retrieved
MobilExpress 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>)
Set to true to cancel the MobilExpress flow and clear all stored MobilExpress
data from the pre-order. Set to false (default) to proceed with the card-list
lookup.
falseMobilExpress selection processed
MobilExpress selection processed
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 phone entry page context retrieved
OTP phone entry 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>)
Recipient phone number for the OTP SMS. Must be exactly 10 characters.
5551234567OTP phone submission result
OTP phone submission result
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 entry page context retrieved
OTP entry 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>)
One-time password received by the user via SMS. Between 4 and 8 characters.
123456OTP verification result
OTP verification result
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>)
Card list page context retrieved
Card 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>)
Opaque token identifying the selected stored card.
token-abcPartially masked PAN of the selected card (e.g., "450803******1234").
Used for BIN-based card type and installment lookup.
450803******1234Card selection result
Card selection result
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>)
Installment selection page context retrieved
Installment 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>)
Primary key of the Installment record to use. Must be an active installment
option linked to the selected card type.
1Installment selection result
Installment selection result
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>)
Try payment page context retrieved
Try 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>)
User must accept the terms and conditions to proceed. Must be true.
Payment attempt result
Payment attempt result
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 completion page context retrieved
OTP completion 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>)
OTP code for payment completion. Between 4 and 8 characters.
483921OTP payment completion result
OTP payment completion result
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>)
CVV completion page context retrieved
CVV completion 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>)
3-digit card security code (CVV/CVC) printed on the back of the card.
123CVV payment completion result
CVV payment completion result
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>)
CVV and OTP completion page context retrieved
CVV and OTP completion 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>)
3-digit card security code (CVV/CVC).
123OTP code for payment completion. Between 4 and 8 characters.
483921CVV and OTP payment completion result
CVV and OTP payment completion result
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>)
3D Secure page context retrieved
3D Secure 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>)
Internal order transaction ID posted by the bank redirect.
ORDER-20240115-001MobilExpress transaction ID posted by the bank redirect.
ME-TXN-9876543D Secure result code. Must be '3DSuccess' to proceed.
3DSuccessPossible values: Total payment amount posted by the bank redirect (12 digits, 2 decimal places).
Must match pre_order.get_total_amount_with_interest().
350.00Number of installments used in the transaction.
1HMAC hash from the MobilExpress gateway for response integrity verification.
Validated via gateway.is_hash_valid.
a3f5c2d1e8b94f7a...3D Secure payment completion result
3D Secure payment completion result
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>)
Redirection Payment Selected Page context retrieved
Redirect to basket (empty basket) or login (guest purchase not allowed)
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>)
Submission payload for initiating a redirection-based payment. Accepting the terms and conditions is mandatory. Browser metadata fields are optional and are forwarded to the payment gateway strategy to support installment pre-selection and device fingerprinting at the provider level.
Customer's acceptance of the terms and conditions. Must be true; any other value prevents the redirect from being initiated.
Colon-separated list of installment counts supported by the customer's browser environment (e.g., "1:3:6:9:12"). Each value must be an integer between 0 and 120 inclusive. Forwarded to the payment gateway to pre-select compatible installment options on the provider's hosted page.
Identifier for the type of client or browser environment initiating the payment (e.g., "web", "mobile"). Forwarded to the payment gateway strategy for device-aware routing or display decisions.
Redirect initiated. On success the system advances to RedirectionPageCompletePage. On failure the order number is rolled back and a validation error is returned so the customer may retry.
Redirect to basket (empty basket) or login (guest purchase not allowed)
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>)
Redirection payment completion page context retrieved
Redirect to basket (empty basket) or login (guest purchase not allowed)
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>)
Gateway callback payload posted to this endpoint after the customer completes or abandons the payment on the provider's hosted page.
The exact fields required depend on the active payment gateway. The gateway
is determined by the POS record associated with the selected payment option.
Most providers include a success indicator; additional fields carry
transaction identifiers, hash values, and status codes for server-side
verification.
Payment callback processed. On success the order is finalised and the response advances to ThankYouPage. On failure the redirection state is reset and an error is returned so the customer may retry.
Redirect to basket (empty basket) or login (guest purchase not allowed)
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>)
GPay Selection Page context retrieved
Redirect to basket (empty basket) or login (guest purchase not allowed)
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>)
Confirmation payload for the GPay selection step. The request body must be submitted empty — any fields present will cause the request to be rejected with a validation error.
This design reflects the nature of the step: the customer simply confirms their GPay selection, and no additional data entry is required. The system resolves the card type and order number automatically upon submission.
GPay card resolved. On success the pre-order is updated with the resolved card information and order number, and the flow advances to GPayRedirectPage. On BIN number lookup failure the pre-order state is cleared but no error is raised — check card_info: null on the pre_order to detect this condition.
Redirect to basket (empty basket) or login (guest purchase not allowed)
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>)
GPay Complete Page context retrieved
Redirect to basket (empty basket) or login (guest purchase not allowed)
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>)
Callback payload posted by the Garanti Pay gateway after the customer completes the payment on the provider's hosted form.
All three fields are required. gpay and success must both be true
for the payment to be accepted. gpinstallment carries the instalment
count selected by the customer on the Garanti Pay form and is resolved
against the active instalment options for the pre-order's card.
The full payload (including any additional fields returned by the gateway)
is also verified against a gateway-specific HMAC hash. Payloads that fail
hash verification are rejected regardless of the gpay and success
values.
Garanti Pay authorisation flag returned by the gateway. Must be true; any other value is treated as a failed transaction.
Payment success flag returned by the gateway. Must be true; any other value is treated as a failed transaction.
Instalment count selected by the customer on the Garanti Pay hosted form (e.g. "1" for a single payment, "3" for three instalments). The value is resolved against the active instalment records for the pre-order's card. If no matching active instalment is found the resolved instalment on the pre-order is set to null.
3GPay callback processed. On success the order is finalised and the flow advances to ThankYouPage. On failure a full rollback is performed and a validation error is returned so the customer may retry from the payment selection step.
Redirect to basket (empty basket) or login (guest purchase not allowed)
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>)
Agreement check page context retrieved
Agreement check 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>)
Agreement check completed
Agreement check completed
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>)
Agreement Confirm Page context retrieved
Agreement Confirm 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 to accept the pre-payment terms and conditions and trigger
the gateway's enable_payment call. Submitting false returns a
validation error.
trueAgreement accepted or error
Agreement accepted or 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>)
Confirmation Payment Selected Page context retrieved
Confirmation Payment Selected 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 to accept the standard checkout order agreement
(OrderAgreementInputSerializer) and initiate the confirmation payment
via the gateway's start_payment call. This is distinct from the
gateway-specific pre-payment agreement accepted in
ConfirmationPaymentAgreementConfirmPage. The user must also be a
registered (non-anonymous) user with a valid phone number.
Submitting false returns a validation error.
truePayment initiated or error
Payment initiated or 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>)
Confirmation Payment Query Page context retrieved
Confirmation Payment Query 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>)
Gateway-dependent input for the confirmation payment polling step. Most gateways (TomPay, Apple Pay, default) require no fields — submit an empty body for those. Gateway-specific fields are listed below.
Paycell only. 4-digit one-time password sent to the user's registered
phone number. Required when the active gateway is paycell.
1234PosAs Gift Card only. The gift card number. Required when the active
gateway is posas_giftcard.
1234567890123456PosAs Gift Card only. 4-digit PIN for the gift card. Required when the
active gateway is posas_giftcard. Must consist of exactly 4 digits.
1234Pattern: ^\d{4}$Payment query result
Payment query result
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>)
Confirmation Payment Complete Page context retrieved
Confirmation Payment Complete 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>)
Order finalized
Order finalized
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>)
Remote Price Calculation Page context retrieved
Remote Price Calculation 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>)
Remote prices set
Remote prices set
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>)
Masterpass BIN number page context retrieved
Masterpass BIN number 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>)
First 6 or 8 digits of the card (BIN — Bank Identification Number). Captured by the Masterpass JS SDK on the client side. Must contain only digits and have a length of 6 or 8.
542119Pattern: ^\d{6,8}$Indicates whether the card BIN comes from the user's stored Masterpass cards. Saved to the session so later steps can distinguish stored-card and fresh-card flows.
falseExample: falseBIN submitted successfully
BIN submitted 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>)
Masterpass complete page context retrieved
Masterpass complete 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>)
Final Masterpass submission payload. The endpoint also merges any
request query string parameters into the form data (with the form
amount key removed before merging) so that 3D Secure callback
parameters appended by the bank are captured automatically.
Masterpass payment token received from the gateway.
mp-token-abc123Indicates whether the transaction went through 3D Secure. When
true, the hash and MD status are validated. Defaults to false.
falseExample: falseOrder ID echoed back by the bank on 3D callback.
ORD-2026-00423D Secure md parameter from the bank callback.
3D Secure xid parameter from the bank callback.
3D Secure ECI value from the bank callback.
053D Secure CAVV value from the bank callback.
3D Secure random nonce from the bank callback.
Bank-issued response hash. Validated via the gateway when
three_d_secure is true.
3D Secure hash params list from the bank callback.
3D Secure hash params values from the bank callback.
3D Secure MD status. Validated via the gateway when
three_d_secure is true. A failure returns
"Transaction failed. Please try again.".
1Bank ACQ ICA value passed back by the gateway.
Payment received indicator returned by the gateway.
Total amount from the bank callback. When present, it is validated
against the order total. A mismatch returns
"Transaction failed. Please try again.". Note: any amount form
field is removed before query string parameters are merged into
the body, so the value used is the one supplied by the bank
callback when present.
16559Merchant client ID echoed back by the gateway.
Signature value from the bank callback.
Masterpass order finalised successfully
Masterpass order finalised 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>)
Masterpass installment selection page context retrieved
Masterpass installment 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>)
Primary key (pk) of the Installment record to select. The PK
must reference an active installment linked to the card resolved
in MasterpassBinNumberPage.
2Installment selected successfully
Installment selected 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>)
Masterpass order number page context retrieved
Masterpass order number 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>)
No input fields are required for this step. Submit an empty form body to trigger order number assignment and 3D Secure routing evaluation.
Order number assigned successfully
Order number assigned 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>)
Masterpass remote installment selection page context retrieved

