Each order has a status that indicates its stage in the processing cycle:
Status | Description |
---|---|
Pending | Newly created order without line items, services, or work orders, or:
|
In Progress | Order execution has started — at least one work order is in progress. |
Completed | All related work orders have been completed or canceled (i.e., are in the final status). |
Canceled | The order was cancelled entirely (if some work orders have been completed and some canceled, the order status is Completed). |
The transitions between the statuses can be visualized as follows:
Completed and Canceled are the final statuses for orders.
Status Calculation Inputs
To understand how order status is determined, it’s important to recognize that activity tracking occurs at three levels:
Order → Work Order → Individual Task
There is no activity tracking at the Order Line Item (OLI) level.
Order structure can be visualized as follows:
Order Status Calculation Rules
- A new order is always created with the Pending status.
- Creation of services or work orders does not automatically change the order status. The status remains Pending until at least one work order moves to In Progress.
- Once an order reaches a final status (Canceled or Completed), it is no longer possible to add or delete line items.
- The order status is calculated as follows:
Input | Order Status |
---|---|
Empty order, no line items | Pending |
Line items added, but work orders not yet created | Pending |
Line items created (i.e., work orders created but in still in Pending status) | Pending |
At least one line item is in progress (i.e., associated work order is In Progress) | In Progress |
All line items created, and all work orders canceled | Canceled |
All line items created and all work orders final and at least one of them is completed | Completed |
ImportantService fulfillment status is separate from order (and work order) status and is not taken into consideration while calculating order status. For new service flows, a typical scenario is to either automate service start via an automated task or enforce a completion condition that a task must be started. Another reason for not using service status is that that ‘widget’ (i.e. non-subscription) products do not create a service. |