For the complete documentation index, see llms.txt. This page is also available as Markdown.

Submit shipping option selection from checkout provider

Accepts the shipping option selection forwarded from the checkout provider's hosted form along with the basket and conversation identifiers. Verifies the conversation_id against the one stored in the pre-order to ensure the response belongs to the active session.

Required Fields: basket_id, conversation_id

Optional Fields: language

Validation:

  • conversation_id must match pre_order.checkout_provider_data['conversation_id']

Next Page: CheckoutProviderAgreementListPage

post
Header parameters
x-requested-withstring · enumRequired

Required header for AJAX requests. Must be set to XMLHttpRequest for all checkout requests.

Default: XMLHttpRequestPossible values:
CookiestringOptional

Session cookie header (e.g. sessionid=abc123 or osessionid=<session_id>)

Body

Payload forwarded by the checkout provider after the customer selects a shipping option on the hosted form. The conversation_id is validated against the active session to prevent replay.

basket_idintegerRequired

Primary key of the active basket.

Example: 42
conversation_idstringRequired

Provider conversation identifier. Must match the value stored in pre_order.checkout_provider_data['conversation_id'].

Example: conv-abc-123
languagestring · nullableOptional

Optional language code forwarded by the provider (e.g. "tr", "en").

Example: tr
Responses
200

Shipping option step processed

application/json
errorsone of · nullableOptional
or
string[]Optional
template_namestringOptional
post/orders/checkout/?page=CheckoutProviderShippingOptionPage
POST /orders/checkout/?page=CheckoutProviderShippingOptionPage HTTP/1.1
Host: sandbox.akinon.com
x-requested-with: XMLHttpRequest
Content-Type: application/x-www-form-urlencoded
Accept: */*
Content-Length: 65

"basket_id=42&conversation_id='conv-abc-123'&language='tr'"
200

Shipping option step processed

{
  "context_list": [
    {
      "page_name": "CheckoutProviderAgreementListPage",
      "page_slug": "checkoutprovideragreementlistpage",
      "page_context": {
        "agreements": [
          {
            "code": "info",
            "text": "Preliminary Information Form"
          },
          {
            "code": "sales",
            "text": "Distance Sales Agreement"
          }
        ]
      }
    }
  ],
  "pre_order": {
    "user_email": "user@akinon.com"
  },
  "errors": {},
  "template_name": "orders/checkout.html"
}

Last updated

Was this helpful?