Orders API¶
The Orders API provides endpoints for managing orders, cart operations, and payment processing.
Cart Management¶
Get Cart¶
Add Item to Cart¶
Request Body:
Update Cart Item¶
Request Body:
Remove Cart Item¶
Clear Cart¶
Orders¶
Create Order¶
Request Body:
{
"shipping_address_id": 1,
"billing_address_id": 1,
"payment_method": "stripe",
"notes": "Please deliver during business hours"
}
List Orders¶
Query Parameters:
| Parameter | Type | Description |
|---|---|---|
| status | string | Filter by order status |
| from_date | date | Filter orders from date |
| to_date | date | Filter orders to date |
| ordering | string | Order results (e.g., -created_at) |
Get Order Details¶
Cancel Order¶
Request Body:
Payment Processing¶
Create Payment Intent¶
Response:
Confirm Payment¶
Request Body:
Order Status Webhook¶
The webhook endpoint receives updates about order status changes, payment confirmations, and shipping updates.
Order Statuses¶
pending: Order created but not paidpaid: Payment receivedprocessing: Order is being processedshipped: Order has been shippeddelivered: Order has been deliveredcancelled: Order was cancelledrefunded: Order has been refunded
Rate Limiting¶
- Cart operations: 60 requests per minute
- Order creation: 10 requests per minute
- Order listing: 30 requests per minute
- Payment operations: 10 requests per minute
Error Responses¶
The API uses standard HTTP status codes and returns error messages in the following format:
Common error codes:
insufficient_stock: Product is out of stockinvalid_payment: Payment processing failedorder_not_found: Order does not existinvalid_status: Invalid order status transitioncart_empty: Cannot create order with empty cart