> For the complete documentation index, see [llms.txt](https://apidocs.akinon.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://apidocs.akinon.com/commerce-openapis/checkout/wallet-and-redirection-payments/submit-wallet-payment-token-and-execute-payment.md).

# Submit wallet payment token and execute payment

Submits the payment token obtained from the wallet provider and starts the payment transaction. The required fields vary by wallet method:

* **Apple Pay**: `payment_token` (required, JSON) plus optional `device_info`, `merchant_defined_info`, and `merchant_defined_secure_info`.
* **Google Pay**: `payment_token` (required, JSON).
* **Cybersource UC**: `payment_token` (required, string) plus optional browser fingerprint fields (`browser_java_enabled`, `browser_language`, `browser_color_depth`, `browser_screen_height`, `browser_screen_width`, `browser_time_zone`). `browser_header` and `browser_user_agent` are populated automatically from request headers.
* **Other wallet providers**: No input required (null serializer).

**Backward Navigation**:

* Removes `payment_started`, `context_extras`, `token`, `redirection_started`, `redirect_url`, `remote_redirect_url`, and `html_content` from the session.

**Next Page**:

* `WalletRedirectCompletePage` — when the gateway requires a browser redirect.
* `WalletCompletePage` — for direct (non-redirect) wallet flows.

**Dynamic Settings Used**:

* `USE_ONE_TIME_TOKEN`: When enabled, a one-time token is appended to the redirect callback URLs to prevent session replay.
* `ORDERS_USE_ISOLATED_PRE_ORDER_ON_RETURN` (static): When enabled, the encoded order number is appended to the redirect callback URLs for isolated pre-order recovery.

**available\_for\_post\_order**: `true`

```json
{"openapi":"3.1.0","info":{"title":"Overview","version":"1.0.0"},"tags":[{"name":"Wallet & Redirection Payments","description":"# Checkout Wallet & Redirection Payments\n\nIntegrate digital wallet payments and external payment provider redirects into your checkout.\n\n**Wallet** payments let customers pay using a pre-funded account balance. The flow covers wallet selection, payment initiation, redirect-based completion, and a return callback page.\n\n**Redirection payments** redirect the customer to an external payment provider. On return, the result is processed via a callback URL.\n\n**Confirmation Payment Complete** is the final step of the deferred confirmation payment flow initiated in the alternative payments section.\n\n## Authentication\n\nThese endpoints support both authenticated and anonymous sessions.\n\n- **Authenticated users**: Session cookie (`sessionid`) tracks checkout progress.\n- **Anonymous users**: Guest checkout is available when the `CAN_GUEST_PURCHASE` setting is enabled.\n## Request Format\n\nInclude the following header in all checkout requests:\n\n- **x-requested-with**: `XMLHttpRequest`\n\n## Dynamic Settings\n\nThe following settings are managed at runtime through the admin interface and do not require a server restart.\n\n### USE_ONE_TIME_TOKEN\nControls whether a single-use token is appended to redirect callback URLs to prevent replay attacks. When enabled, the token is validated on return before the payment result is processed.\n\n## Static Settings\n\nThe following settings are configured in the server environment and require a restart to take effect.\n\n### ORDERS_USE_ISOLATED_PRE_ORDER_ON_RETURN\nWhen enabled, an encoded order number is embedded in callback URLs so the correct session can be restored after a redirect, even if the browser session has changed (for example, in mobile app redirect flows)."}],"servers":[{"description":"Akinon Checkout API","url":"https://{commerce_url}","variables":{"commerce_url":{"default":"sandbox.akinon.com"}}}],"paths":{"/orders/checkout/?page=WalletPaymentPage":{"post":{"tags":["Wallet & Redirection Payments"],"operationId":"submitWalletPayment","summary":"Submit wallet payment token and execute payment","description":"Submits the payment token obtained from the wallet provider and starts the\npayment transaction. The required fields vary by wallet method:\n\n- **Apple Pay**: `payment_token` (required, JSON) plus optional\n  `device_info`, `merchant_defined_info`, and `merchant_defined_secure_info`.\n- **Google Pay**: `payment_token` (required, JSON).\n- **Cybersource UC**: `payment_token` (required, string) plus optional\n  browser fingerprint fields (`browser_java_enabled`, `browser_language`,\n  `browser_color_depth`, `browser_screen_height`, `browser_screen_width`,\n  `browser_time_zone`). `browser_header` and `browser_user_agent` are\n  populated automatically from request headers.\n- **Other wallet providers**: No input required (null serializer).\n\n**Backward Navigation**:\n- Removes `payment_started`, `context_extras`, `token`, `redirection_started`,\n  `redirect_url`, `remote_redirect_url`, and `html_content` from the session.\n\n**Next Page**:\n- `WalletRedirectCompletePage` — when the gateway requires a browser redirect.\n- `WalletCompletePage` — for direct (non-redirect) wallet flows.\n\n**Dynamic Settings Used**:\n- `USE_ONE_TIME_TOKEN`: When enabled, a one-time token is appended to the\n  redirect callback URLs to prevent session replay.\n- `ORDERS_USE_ISOLATED_PRE_ORDER_ON_RETURN` (static): When enabled, the\n  encoded order number is appended to the redirect callback URLs for isolated\n  pre-order recovery.\n\n**available_for_post_order**: `true`","parameters":[{"$ref":"#/components/parameters/AjaxRequestHeader"},{"$ref":"#/components/parameters/SessionCookieHeader"}],"requestBody":{"required":true,"content":{"application/x-www-form-urlencoded":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ApplePayPaymentInput"},{"$ref":"#/components/schemas/GooglePayPaymentInput"},{"$ref":"#/components/schemas/CybersourceUCPaymentInput"}]}}}},"responses":{"200":{"description":"Payment token accepted — routes to next page","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CheckoutResponse"}}}}}}}},"components":{"parameters":{"AjaxRequestHeader":{"name":"x-requested-with","in":"header","required":true,"description":"Required header for AJAX requests. Must be set to `XMLHttpRequest` for all checkout requests.","schema":{"type":"string","enum":["XMLHttpRequest"],"default":"XMLHttpRequest"}},"SessionCookieHeader":{"name":"Cookie","in":"header","required":false,"description":"Session cookie header (e.g. `sessionid=abc123` or `osessionid=<session_id>`)","schema":{"type":"string"}}},"schemas":{"ApplePayPaymentInput":{"type":"object","description":"Input for `WalletPaymentPage` when the active wallet method is Apple Pay.\n`payment_token` must be the JSON object returned by the browser\n`ApplePaySession.onpaymentauthorized` event.","required":["payment_token"],"properties":{"payment_token":{"type":"object","description":"Payment token object from the Apple Pay `onpaymentauthorized` event. Contains\n`data` (encrypted payment data), `header` (encryption metadata), `signature`,\nand `version`.","properties":{"data":{"type":"string","description":"Base64-encoded encrypted payment data."},"header":{"type":"object","description":"Encryption metadata for the payment token.","properties":{"applicationData":{"type":"string","nullable":true},"ephemeralPublicKey":{"type":"string","nullable":true},"wrappedKey":{"type":"string","nullable":true},"publicKeyHash":{"type":"string","nullable":true},"transactionId":{"type":"string","nullable":true}}},"signature":{"type":"string","description":"PKCS"},"version":{"type":"string","description":"Encryption protocol version (e.g. `\"EC_v1\"`)."}}},"device_info":{"type":"object","nullable":true,"description":"Optional device information for fraud detection.","properties":{"session_id":{"type":"string","nullable":true},"device_type":{"type":"string","nullable":true}}},"merchant_defined_info":{"type":"array","nullable":true,"description":"Optional merchant-defined key/value pairs.","items":{"type":"object","properties":{"key":{"type":"string"},"value":{"type":"string"}}}},"merchant_defined_secure_info":{"type":"object","nullable":true,"description":"Optional secure merchant-defined data fields.","properties":{"secure1":{"type":"string"},"secure2":{"type":"string"},"secure3":{"type":"string"},"secure4":{"type":"string"}}}}},"GooglePayPaymentInput":{"type":"object","description":"Input for `WalletPaymentPage` when the active wallet method is Google Pay.\n`payment_token` must be the JSON object from the Google Pay\n`PaymentData.paymentMethodData.tokenizationData.token` field.","required":["payment_token"],"properties":{"payment_token":{"type":"object","description":"Payment token object returned by the Google Pay API. Typically contains\n`signature`, `protocolVersion`, and `signedMessage`."}}},"CybersourceUCPaymentInput":{"type":"object","description":"Input for `WalletPaymentPage` when the active wallet method is Cybersource UC.\n`payment_token` is required. Browser fingerprint fields are optional and used\nfor 3-D Secure device profiling. `browser_header` and `browser_user_agent` are\npopulated automatically from request headers and must not be submitted by the client.","required":["payment_token"],"properties":{"payment_token":{"type":"string","description":"Payment token string returned by the Cybersource UC hosted widget."},"browser_java_enabled":{"type":"boolean","nullable":true,"description":"Whether Java is enabled in the browser. Used for 3D Secure device fingerprinting."},"browser_language":{"type":"string","nullable":true,"description":"Browser language code (e.g. \"en-US\"). Used for 3D Secure device fingerprinting."},"browser_color_depth":{"type":"string","nullable":true,"description":"Browser screen colour depth. Used for 3D Secure device fingerprinting."},"browser_screen_height":{"type":"string","nullable":true,"description":"Browser screen height in pixels. Used for 3D Secure device fingerprinting."},"browser_screen_width":{"type":"string","nullable":true,"description":"Browser screen width in pixels. Used for 3D Secure device fingerprinting."},"browser_time_zone":{"type":"string","nullable":true,"description":"Browser time zone offset. Used for 3D Secure device fingerprinting."}}},"CheckoutResponse":{"type":"object","properties":{"context_list":{"type":"array","items":{"$ref":"#/components/schemas/PageContext"}},"pre_order":{"$ref":"#/components/schemas/PreOrder"},"errors":{"oneOf":[{"type":"object","additionalProperties":{"type":"array","items":{"type":"string"}}},{"type":"null"},{"type":"array","items":{"type":"string"}}]},"template_name":{"type":"string"}}},"PageContext":{"type":"object","properties":{"page_name":{"type":"string","description":"Class name of the page (e.g., \"IndexPage\", \"AddressSelectionPage\")"},"page_slug":{"type":"string","description":"URL-friendly slug for the page"},"page_context":{"type":"object","description":"Page-specific context data","additionalProperties":true}}},"PreOrder":{"type":"object","description":"Pre-order state containing basket, addresses, shipping, payment information","properties":{"basket":{"$ref":"#/components/schemas/Basket"},"shipping_address":{"oneOf":[{"$ref":"#/components/schemas/Address"},{"type":"null"}]},"billing_address":{"oneOf":[{"$ref":"#/components/schemas/Address"},{"type":"null"}]},"shipping_option":{"oneOf":[{"$ref":"#/components/schemas/ShippingOptionDetail"},{"type":"null"}]},"billing_and_shipping_same":{"oneOf":[{"type":"boolean"},{"type":"null"}]},"payment_option":{"oneOf":[{"$ref":"#/components/schemas/PaymentOptionDetail"},{"type":"null"}]},"notifications":{"type":"array","items":{"type":"object"}},"shipping_amount":{"oneOf":[{"type":"string","pattern":"^\\d+\\.\\d{2}$"},{"type":"null"}]},"total_amount":{"oneOf":[{"type":"string","pattern":"^\\d+\\.\\d{2}$"},{"type":"null"}]},"unpaid_amount":{"oneOf":[{"type":"string","pattern":"^\\d+\\.\\d{2}$"},{"type":"null"}]},"loyalty_money":{"oneOf":[{"type":"string","pattern":"^\\d+\\.\\d{2}$"},{"type":"null"}]},"currency_type_label":{"type":"string"},"installment":{"oneOf":[{"$ref":"#/components/schemas/Installment"},{"type":"null"}]},"card_info":{"oneOf":[{"type":"object","description":"Card information from BIN lookup","properties":{"bin_number":{"type":"string","description":"Card BIN (first 6-8 digits)"},"card":{"type":"object","description":"Card details from BIN database","properties":{"pk":{"type":"integer"},"name":{"type":"string","description":"Card type name (e.g., \"Visa\", \"Mastercard\")"}}}}},{"type":"null"}]},"redirect_to_three_d":{"oneOf":[{"type":"boolean"},{"type":"null"}]},"delivery_option":{"oneOf":[{"$ref":"#/components/schemas/DeliveryOption"},{"type":"null"}]},"retail_store":{"oneOf":[{"$ref":"#/components/schemas/RetailStore"},{"type":"null"}]},"funds_transfer_bank":{"oneOf":[{"$ref":"#/components/schemas/BankAccount"},{"type":"null"}]},"number":{"oneOf":[{"type":"string","description":"Pre-order/order number"},{"type":"null"}]},"order":{"oneOf":[{"type":"object","description":"Created order (after checkout completion)","properties":{"pk":{"type":"integer"},"number":{"type":"string"},"status":{"type":"string"}}},{"type":"null"}]},"payment_choice":{"oneOf":[{"$ref":"#/components/schemas/PaymentChoice"},{"type":"null"}]},"user_email":{"oneOf":[{"type":"string"},{"type":"null"}]},"phone_number":{"oneOf":[{"type":"string"},{"type":"null"}]},"user_phone_number":{"oneOf":[{"type":"string"},{"type":"null"}]},"gift_box":{"oneOf":[{"type":"object","properties":{"note":{"type":"string"},"gift_video":{"type":"boolean"},"gift_video_notification_sent":{"type":"boolean"},"price":{"type":"string"}}},{"type":"null"}]},"delivery_range":{"oneOf":[{"type":"object","properties":{"lower":{"type":"string","format":"date-time"},"upper":{"type":"string","format":"date-time"}}},{"type":"null"}]},"total_amount_with_interest":{"oneOf":[{"type":"string","pattern":"^\\d+\\.\\d{2}$"},{"type":"null"}]},"is_guest":{"type":"boolean"},"is_post_order":{"type":"boolean"},"data_source_shipping_options":{"oneOf":[{"type":"array","items":{"$ref":"#/components/schemas/DataSourceShippingOptionDetail"}},{"type":"null"}]},"attribute_based_shipping_options":{"oneOf":[{"type":"array","items":{"$ref":"#/components/schemas/PreOrderAttributeBasedShippingOption"}},{"type":"null"}]}}},"Basket":{"type":"object","properties":{"pk":{"type":"integer"},"total_amount":{"type":"string","pattern":"^\\d+\\.\\d{2}$"}}},"Address":{"type":"object","properties":{"pk":{"type":"integer"},"email":{"type":"string"},"phone_number":{"type":"string"},"first_name":{"type":"string"},"last_name":{"type":"string"},"country":{"$ref":"#/components/schemas/Country"},"city":{"$ref":"#/components/schemas/City"},"line":{"type":"string"},"title":{"type":"string"},"township":{"$ref":"#/components/schemas/Township"},"district":{"oneOf":[{"$ref":"#/components/schemas/District"},{"type":"null"}]},"postcode":{"type":"string"},"notes":{"type":"string"},"company_name":{"type":"string"},"tax_office":{"type":"string"},"tax_no":{"type":"string"},"e_bill_taxpayer":{"type":"boolean"},"is_corporate":{"type":"boolean"},"primary":{"type":"boolean"},"identity_number":{"type":"string"}}},"Country":{"type":"object","properties":{"pk":{"type":"integer"},"code":{"type":"string"},"name":{"type":"string"}}},"City":{"type":"object","properties":{"pk":{"type":"integer"},"name":{"type":"string"}}},"Township":{"type":"object","properties":{"pk":{"type":"integer"},"name":{"type":"string"}}},"District":{"type":"object","properties":{"pk":{"type":"integer"},"name":{"type":"string"}}},"ShippingOptionDetail":{"type":"object","description":"Detailed shipping option with calculated amount","properties":{"pk":{"type":"integer"},"name":{"type":"string"},"slug":{"type":"string"},"logo":{"oneOf":[{"type":"string","format":"uri"},{"type":"null"}]},"shipping_amount":{"type":"string","pattern":"^\\d+\\.\\d{2}$"},"description":{"oneOf":[{"type":"string"},{"type":"null"}]},"kwargs":{"type":"object","additionalProperties":true}}},"PaymentOptionDetail":{"type":"object","description":"Detailed payment option with type information","properties":{"pk":{"type":"integer"},"name":{"type":"string"},"slug":{"type":"string"},"payment_type":{"type":"string","enum":["credit_card","funds_transfer","bkm_express","loyalty_money","cash_register","gpay","redirection","stored_card","masterpass","masterpass_rest","credit_payment","pay_later","saved_card","confirmation","b2b","wallet","pay_on_delivery"]},"payment_type_label":{"type":"string"}}},"Installment":{"type":"object","properties":{"pk":{"type":"integer"},"installment_count":{"type":"integer"},"label":{"type":"string"},"price_with_accrued_interest":{"type":"string","pattern":"^\\d+\\.\\d{2}$"},"monthly_price_with_accrued_interest":{"type":"string","pattern":"^\\d+\\.\\d{2}$"}}},"DeliveryOption":{"type":"object","properties":{"pk":{"type":"integer"},"name":{"type":"string"},"delivery_option_type":{"type":"string","enum":["customer","retail_store","pickup_location"]},"is_active":{"type":"boolean"}}},"RetailStore":{"type":"object","properties":{"pk":{"type":"integer"},"name":{"type":"string"},"erp_code":{"type":"string"},"township":{"$ref":"#/components/schemas/Township"},"click_and_collect":{"type":"boolean"},"is_active":{"type":"boolean"}}},"BankAccount":{"type":"object","description":"Bank account for funds transfer payments","properties":{"pk":{"type":"integer"},"bank_name":{"type":"string","description":"Name of the bank"},"account_holder":{"type":"string","description":"Account holder name"},"iban":{"type":"string","description":"International Bank Account Number"},"currency":{"type":"string","description":"Currency code (e.g., \"USD\", \"EUR\", \"TRY\")"},"is_active":{"type":"boolean"}}},"PaymentChoice":{"type":"object","properties":{"value":{"type":"string"},"label":{"type":"string"},"price":{"type":"string","pattern":"^\\d+\\.\\d{2}$"}}},"DataSourceShippingOptionDetail":{"type":"object","description":"Data source shipping option for multi-vendor shipping","properties":{"pk":{"type":"integer"},"shipping_amount":{"type":"string","pattern":"^\\d+\\.\\d{2}$"},"shipping_option_name":{"type":"string"},"shipping_option_logo":{"oneOf":[{"type":"string","format":"uri"},{"type":"null"}]},"data_source":{"type":"object","properties":{"pk":{"type":"integer"},"title":{"type":"string"}}},"description":{"oneOf":[{"type":"string"},{"type":"null"}]}}},"PreOrderAttributeBasedShippingOption":{"type":"object","description":"Attribute-based shipping option selected for a product group","properties":{"pk":{"type":"integer"},"shipping_option_name":{"type":"string"},"shipping_option_logo":{"oneOf":[{"type":"string","format":"uri"},{"type":"null"}]},"shipping_amount":{"type":"string","pattern":"^\\d+\\.\\d{2}$"},"product_ids":{"type":"array","items":{"type":"integer"}},"attribute_value":{"type":"string"},"attribute_key":{"oneOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}]}}}}}}
```


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://apidocs.akinon.com/commerce-openapis/checkout/wallet-and-redirection-payments/submit-wallet-payment-token-and-execute-payment.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
