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

Verify MobilExpress OTP and retrieve card list

Submits the OTP code to the MobilExpress gateway (verify_and_get_card_list). On success, the flow advances to the card selection page.

Required Fields:

  • otp: The OTP code received by the user. Between 4 and 8 characters.

State Changes:

  • pre_order.data['me_otp_valid'] is set to true

  • me_otp_sent, me_phone_number, and me_needs_otp are removed from pre_order.data

  • Forward MobilExpress data (me_card_token, etc.) is cleared

Next Page: MobilExpressCardListPage

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
otpstring · min: 4 · max: 8Required

One-time password received by the user via SMS. Between 4 and 8 characters.

Example: 123456
Responses
200

OTP verification result

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

"otp='123456'"
200

OTP verification result

{
  "context_list": [
    {
      "page_name": "MobilExpressCardListPage",
      "page_slug": "mobilexpresscardlistpage",
      "page_context": {
        "cards": [
          {
            "masked_card_number": "450803******1234",
            "card_token": "token-abc",
            "is_expired": false,
            "last_year": 2026,
            "last_month": 12
          }
        ]
      }
    }
  ],
  "errors": {},
  "template_name": "orders/checkout.html"
}

Last updated

Was this helpful?