Skip to main content

Understand the order lifecycle

EcommOS enforces a strict pay-on-delivery lifecycle. Every transition has a gate. You cannot skip steps, and that is the point — it keeps order, stock, and money truth aligned.

Stage 1: Orders (lead work)

Statuses: New, Confirmed, Rescheduled, Could not reach, Cancelled.
  • Orders start as New.
  • A Sales rep contacts the customer, confirms the order, and moves it to Confirmed.
  • If the customer asks to delay, use Rescheduled.
  • If the customer cannot be reached, use Could not reach.
  • If the customer cancels, use Cancelled.
Confirmed is the handoff. Once an order is Confirmed, it appears in Deliveries for dispatch.

Rules

  • Moving away from Confirmed clears later-stage data (dispatch, delivery).
  • Status transitions are recorded as order events in the timeline.
  • Status fields cannot be patched directly with a generic edit; they must go through transition endpoints.

Stage 2: Deliveries (dispatch and delivery)

After an order is Confirmed, your logistics team handles it in Deliveries:
  1. Pick a delivery agent and their pickup location.
  2. The system checks stock sufficiency at that location.
  3. Dispatch the order.
  4. When the customer receives and pays, mark the order Delivered.
  5. The system decrements inventory at the delivery agent’s location that actually delivered.

Rules

  • Dispatch requires a delivery agent and their location.
  • Dispatch validates stock before allowing the transition.
  • Inventory decrements only from the location that delivered — not from “stock in general”.
  • Delivery movements are stored as inventory movements tied to the order.
See Hand off confirmed orders to deliveries.

Stage 3: Remittance and Cashflow

After delivery, the delivery agent remits the cash collected:
  1. Record the remitted amount on the order.
  2. The system updates remittance status to Remitted.
  3. The system creates an income record on Cashflow (once, never duplicated on later edits).
  4. The order event timeline records the remittance and the Cashflow entry creation.

Rules

  • Remittance cannot proceed before delivery.
  • Remittance-linked income records are created exactly once per order.
  • Editing the Cashflow entry later does not mutate the operational remittance amount on the order.
See Manage stock and waybills for stock movements and FAQ for edge cases.

Why the gates matter

The gates exist so that reports and stock numbers match reality:
  • Stock is not decremented for orders that never delivered.
  • Revenue is not recognized for orders that never remitted.
  • Dispatch cannot happen without a known delivery agent and stock check.
  • Money is not double-counted when remittance is edited.
If you could freely edit status fields, every report would be soft. The gates are the product.