Orders & Fulfillment
An order on Kadaikodi moves through a well-defined lifecycle. Fulfillment is task-based and worker-driven.
Order lifecycle
PENDING → PLACED → CONFIRMED → PREPARING → READY → OUT_FOR_DELIVERY → DELIVERED → COMPLETED
| Status | Who advances it | What happens |
|---|---|---|
PENDING | Customer | Cart is built, payment initiated |
PLACED | System | Payment confirmed; order is live |
CONFIRMED | Merchant | Merchant acknowledges the order |
PREPARING | Merchant | Items being prepared / service being scheduled |
READY | Merchant | Order ready for handoff |
OUT_FOR_DELIVERY | Worker | Worker picked up the order |
DELIVERED | Worker / System | Order reached the customer |
COMPLETED | System | Finalized after a grace period |
Fulfillment types
| Type | Description |
|---|---|
| Pickup | Customer collects from the merchant location |
| Delivery | Worker delivers to the customer's address |
| On-location | Service performed at the merchant location |
| Home service | Service performed at the customer's address |
Worker tasks
When an order is confirmed, the merchant can assign tasks to workers:
- Create a task with type, priority, and due time
- Worker sees it in their task list
- Worker starts the task (
IN_PROGRESS) - Worker completes the task (
COMPLETED) - Order status advances automatically or manually
Timeline
Every status change and task event is recorded in the order timeline with actor, timestamp, and optional notes. This is the audit trail for disputes and analytics.