Orders
There are several order types within the system. An order has one or more order-lines and one or more order-line-items. Order lines track products and a quantity, whereby order line items track individual items.
Orders typically follow the following flow in the system:
stateDiagram-v2
[*]-->concept
concept-->pending: confirm
concept-->cancelled: cancel
concept-->hold: hold
hold-->concept: release_from_hold
hold-->pending: release_from_hold
hold-->processing: release_from_hold
pending-->processing: allocate
processing-->processing: pick
pending-->cancelled: cancel
pending-->hold: hold
processing-->complete: final event
processing-->cancelled: cancel
processing-->pending: unallocate
processing-->hold: hold
complete-->[*]
cancelled-->[*]
Order lines will typically follow the same flow as orders, order line items follow a different flow, which is different depending on the order type.
Order types
Sales order
Order issued by an account to a ship items to a end-customer. Order line items for a sales-order follow this flow:
stateDiagram-v2
[*] --> pending
pending-->allocated: allocate
pending-->backordered: allocate
backordered-->allocated: allocate
allocated-->picked: pick
picked-->packed: pack
packed-->shipped: ship
shipped-->[*]
Transfer
Orders to transfer inventory from one location to another
stateDiagram-v2
pending-->backordered: allocate
pending-->allocated: allocate
backordered-->allocated: allocate
allocated-->picked: pick
picked-->packed: pack
packed-->shipped: ship
shipped-->expected
expected-->received: receive
PurchaseOrder
Orders to receive inventory from a vendor into a location
stateDiagram-v2
expected-->received: receive
For purchase orders, we will only create the inventory items once the order is confirmed.
Return Order
Orders to return inventory to the location it shipped from. Return orders may or may not be related to an Sales Order.
stateDiagram-v2
expected-->received: receive
For return orders, we will only create the inventory items once the order is confirmed.
Back orders
We allow you to configure a different method for back-orders. Under normal circumstances, we will use the regular ship-method instead. When backordered stock is allocated, we will change the order's ship-method to the configured back-order-ship-method
Auto-allocation
If configured, we auto-allocate orders upon confirmation. We will however always try and allocate backorders first. Periodically we will auto-allocate any backorders.