Hyperlocal
Order Lifecycle
A Marketplace delivery order follows this flow:
Code
Order Statuses
| Status | Description | Pull API | Callback |
|---|---|---|---|
ACCEPTED | Order accepted by Shadowfax for delivery | Yes | Yes |
ALLOTTED | Order allotted to a rider | Yes | Yes |
ARRIVED | Rider arrived at pickup location | No | Yes |
DISPATCHED | Order picked up and dispatched | Yes | Yes |
ARRIVED_CUSTOMER_DOORSTEP | Rider arrived at drop location | No | Yes |
DELIVERED | Order delivered to customer | Yes | Yes |
CANCELLED | Order cancelled before pickup | Yes | Yes |
CANCELLED_BY_CUSTOMER | Cancelled after pickup or at doorstep | Yes | Yes |
RETURNED_TO_SELLER | SKUs or COD returned to seller | No | Yes |
Statuses marked "Pull API: No" are optional callback-only statuses — they won't appear in the Get Order Details response but will be sent via webhook.
Typical Timeline
| Stage | API Status | Trigger |
|---|---|---|
| Order placed | ACCEPTED | POST /api/v2/orders/ |
| Rider assigned | ALLOTTED | Shadowfax assigns rider |
| Rider at store | ARRIVED | Rider reaches pickup (callback) |
| Order picked up | DISPATCHED | Rider collects order |
| Rider at customer | ARRIVED_CUSTOMER_DOORSTEP | Rider reaches drop (callback) |
| Delivered | DELIVERED | Rider completes delivery |
| Cancelled | CANCELLED | Client or Shadowfax cancels before pickup |
Build your integration around callbacks for real-time updates. Use Get Order Details as a reconciliation fallback.
See the API Reference for full endpoint documentation.
Last modified on