Strict FIFO
2.1 min read
|What is Strict FIFO
Strict FIFO is an optional setting that locks inventory to older orders, even when those orders are in an unresolved or not-yet-shippable status. When Strict FIFO is enabled, inventory that has been allocated to an older order cannot be pulled away and given to a newer order — regardless of whether the older order is ready to ship.
This gives your team confidence that inventory is being held in the true order it was received, with no newer orders able to cut the line.
In order to utilize this feature, please reach out to our Support Team via Live Chat or email at support-oms@extensiv.com or your Account Manager to have this enabled.
Difference Between FIFO and Strict FIFO
With regular FIFO, inventory allocation essentially reserves available stock against an order. Orders that are ready to be fulfilled (e.g., in Awaiting Shipment status) are allocated inventory first. If an order is not yet ready to ship the system does not hold that inventory. Instead, it returns those units to the available pool, where they can be allocated to other, newer orders that are ready to ship.
With Strict FIFO, inventory that has already been allocated to older orders cannot be returned to the available pool and reallocated to newer orders.
Example: Without Strict FIFO
- Order A arrives Monday requesting 2 units of SKU-001. Only 1 unit is available, so the order moves to Unresolved > Out of Stock.
- Order B arrives Thursday requesting 1 unit of SKU-001.
- Since Order A isn't shippable, its allocated unit is returned to the pool. Order B claims that 1 unit and moves to Awaiting Shipment — even though it came in after Order A.
Example: With Strict FIFO
- Order A arrives Monday requesting 2 units of SKU-001. Only 1 unit is available, so the order moves to Unresolved > Out of Stock.
- Order B arrives Thursday requesting 1 unit of SKU-001.
- Because Strict FIFO is enabled, that 1 unit remains locked to Order A. Order B cannot be shipped until more inventory arrives — preserving true first-in, first-out priority.
Which Order Statuses Does Strict FIFO Cover?
Status |
Inventory Blocked? |
Notes |
|---|---|---|
| Unresolved > Out of Stock | ✅ Yes |
Core use case for Strict FIFO |
| Unresolved > Missing Order Information | ✅ Yes |
Only when the order item can be linked to a product |
| On Hold | ✅ Yes |
Inventory is held while the order is paused |
| Awaiting Payment | ✅ Yes |
Inventory is held while payment is pending |
| Awaiting Shipment | ✅ Yes |
Order is ready to ship; inventory is always allocated |
| Awaiting 3PL Export | ✅ Yes |
Covered under standard allocation logic |
| Awaiting Drop Ship | ✅ Yes |
Covered under standard allocation logic |
Statuses Where Inventory Cannot Be Blocked
Some unresolved statuses cannot have inventory held against them due to system limitations:
- Unresolved > Missing Fulfillment Source — The fulfillment warehouse hasn't been assigned yet, so there's no location to lock inventory against.
- Unresolved > Missing Stock Location — Without a stock location, there are no specific units that can be reserved.
- Unresolved > Missing Product Info (unlinked items) — If the order item hasn't been linked to a product, the system cannot identify which inventory to hold.
Frequently Asked Questions
Does Strict FIFO change the order in which inventory is allocated?
No. The FIFO order — oldest orders first — remains the same. Strict FIFO only changes whether inventory stays locked to an older order when that order isn't yet ready to ship
What happens if an order is cancelled while Strict FIFO is holding its inventory?
When the order is cancelled, the locked inventory is released back to the available pool and can be allocated to other orders.
Is Strict FIFO on by default for new accounts?
No. Standard FIFO (without inventory locking) is the default. Strict FIFO must be explicitly enabled.
Was this article helpful?
Share additional feedback about this article