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

Submit Cash Register Payment Agreement

Submits the cash register payment agreement and records store staff identification. Generates a pre-order number that will be used to track the cash register transaction.

Required Fields:

  • agreement: User must accept terms and conditions (must be true)

Required Headers: In addition to the standard AJAX header, the following store identification headers are required for all cash register submissions:

  • X-STORE-STAFF-ID: Local store staff identifier

  • X-STORE-STAFF-EMAIL: Store staff email address

  • X-STORE-ID: Local store identifier

  • X-STORE-STAFF-REMOTE-ID: Remote store staff identifier

  • X-STORE-REMOTE-ID: Remote store identifier

All five headers must be present. If any header is missing, a 400 validation error is returned indicating which header is required.

Processing:

  • Generates a unique pre-order number for the transaction

  • Records store staff information (staff_id, staff_email, store_id, local_staff_id, local_store_id) in the pre-order data

  • Associates the transaction with the initiating store staff member

  • Default fallback values for staff_id, staff_email, and store_id may be configured via the CASH_REGISTER_DEFAULTS Django setting. Header values always take precedence and override any defaults.

Basket Amount Validation:

  • Basket amount must be greater than zero before submitting

Navigation After Success:

  • If payment option has is_installment_active: true in its configuration: routes to CashRegisterInstallmentSelectionPage

  • Otherwise: routes to CashRegisterCompletePage

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>)

X-STORE-STAFF-IDstringRequired

Local store staff identifier assigned by the store management system

X-STORE-STAFF-EMAILstring · emailRequired

Email address of the store staff member initiating the transaction

X-STORE-IDstringRequired

Local store identifier assigned by the store management system

X-STORE-STAFF-REMOTE-IDstringRequired

Remote system identifier for the store staff member

X-STORE-REMOTE-IDstringRequired

Remote system identifier for the store

Body
agreementboolean · enumRequired

User must accept terms and conditions to proceed. Must be true. Basket amount must be greater than zero.

Possible values:
Responses
200

Cash register payment agreement submitted successfully

application/json
errorsone of · nullableOptional
or
string[]Optional
template_namestringOptional
post/orders/checkout/?page=CashRegisterPage
POST /orders/checkout/?page=CashRegisterPage HTTP/1.1
Host: sandbox.akinon.com
x-requested-with: XMLHttpRequest
X-STORE-STAFF-ID: text
X-STORE-STAFF-EMAIL: name@gmail.com
X-STORE-ID: text
X-STORE-STAFF-REMOTE-ID: text
X-STORE-REMOTE-ID: text
Content-Type: application/x-www-form-urlencoded
Accept: */*
Content-Length: 18

"agreement=true"
{
  "context_list": [
    {
      "page_name": "CashRegisterInstallmentSelectionPage"
    }
  ],
  "errors": {}
}

Last updated

Was this helpful?