Confirm wallet agreement and initialise payment session
Accepts the terms and conditions agreement and, for Apple Pay, performs the merchant validation step. For all other wallet providers only agreement is required. For Apple Pay the validationURL returned by the browser's Payment Request API must also be supplied so the server can validate the merchant session with Apple.
Required Fields:
agreement: Must betrue.validationURL(Apple Pay only): Validation URL from the browser Payment Request API.
Session Initialisation: After agreement is confirmed, the server calls the gateway's start_session(). If the gateway's payment strategy reports session_required=False, this call is skipped entirely and the flow proceeds directly to WalletPaymentPage without storing context_data in the session. Otherwise, if the session response contains data, it is stored in pre_order.data['context_data'] and later surfaced as the context_data field in WalletPaymentPage context (Apple Pay only).
Backward Navigation:
Removes
agreement_confirmedfrom the session on backward navigation.
Next Page:
WalletPaymentPage
available_for_post_order: true
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>)
Wallet agreement confirmed — routes to WalletPaymentPage
POST /orders/checkout/?page=WalletSelectionPage HTTP/1.1
Host: sandbox.akinon.com
x-requested-with: XMLHttpRequest
Content-Type: application/x-www-form-urlencoded
Accept: */*
Content-Length: 18
"agreement=true"Wallet agreement confirmed — routes to WalletPaymentPage
{
"context_list": [
{
"page_name": "WalletPaymentPage",
"page_slug": "walletpaymentpage",
"page_context": {}
}
],
"errors": [],
"template_name": "orders/checkout.html"
}Last updated
Was this helpful?

