Complete Pay on Delivery Order
Creates the order for pay-on-delivery after the user accepts the terms and conditions.
Required Fields:
agreement: Must betrue. Submittingfalseor omitting this field causes a validation error.
Validation:
Basket amount must be greater than zero
Order Creation:
Order is created via
PaymentPageMixin.process_orderAfter creation: basket is submitted, contracts are saved, confirmation email is sent, order completion SMS is sent
pre_order.card_infois reset tonullpre_order.installmentis reset tonull
Order Number:
The order number is regenerated at this step unless it was already set
Next Pages:
ThankYouPage
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>)
User must accept terms and conditions to proceed. Must be true.
Pay on delivery order created successfully
POST /orders/checkout/?page=PayOnDeliveryPage HTTP/1.1
Host: sandbox.akinon.com
x-requested-with: XMLHttpRequest
Content-Type: application/x-www-form-urlencoded
Accept: */*
Content-Length: 18
"agreement=true"Pay on delivery order created successfully
{
"context_list": [
{
"page_name": "ThankYouPage",
"page_slug": "thankyoupage",
"page_context": {
"redirect_url": "/orders/checkout-success/abc123:def456:ghi789/",
"order_id": 5001,
"order_number": "ORD-2026-0001",
"new_user": false,
"token": null,
"campaigns": []
}
}
],
"pre_order": {
"basket": {
"pk": 123,
"total_amount": "150.00"
},
"order": {
"pk": 5001,
"number": "ORD-2026-0001",
"status": "confirmed"
},
"payment_option": {
"pk": 4,
"name": "Pay on Delivery",
"slug": "pay-on-delivery",
"payment_type": "pay_on_delivery",
"payment_type_label": "Pay on Delivery"
},
"total_amount": "159.99",
"currency_type_label": "TRY",
"card_info": null,
"installment": null
},
"errors": {},
"template_name": "orders/checkout.html"
}Last updated
Was this helpful?

