Skip to content

Feature

FIFO, FEFO and LIFO stock allocation

Deciding which batch ships is a rule, not a judgement call. LotTrack applies that rule automatically the moment a fulfillment is created, and records exactly which lot went to which order.

The three strategies, and when each one fits

The strategy you pick determines which lot the app draws from when an order needs stock. All three are supported and switching between them is a single setting.

  • FIFO — first in, first out. Draws from the lot received earliest. The sensible default for goods that degrade slowly and arrive in a predictable order.
  • FEFO — first expired, first out. Draws from the lot with the nearest expiration date regardless of when it arrived. The right choice for anything perishable, because receipt order and expiry order are not the same thing.
  • LIFO — last in, first out. Draws from the most recently received lot. Used where freshness at the point of delivery matters more than clearing old stock, and in certain accounting treatments.

Why FEFO matters more than FIFO for perishables

FIFO and FEFO agree only when stock arrives in the same order it expires. In practice it rarely does. A supplier ships you a batch from the back of their own warehouse, a rush order arrives with a shorter shelf life than the delivery before it, or a return comes back into stock months after it first went out.

Whenever receipt order and expiry order diverge, FIFO will happily ship a long-dated batch while a short-dated one quietly ages out behind it. FEFO looks at the expiration date itself, which is the only thing that actually determines what becomes a write-off.

Automatic or manual, per store

In automatic mode, LotTrack allocates lots when Shopify creates a fulfillment. Your team fulfills orders exactly as they always have and the lot assignment happens underneath, with no extra step in the picking workflow.

In manual mode, your team assigns lots deliberately. This suits operations where a picker scans what is physically on the shelf rather than trusting a system to predict it. Because Shopify cannot block its own native fulfill button, LotTrack watches for fulfillments that went out without a lot assigned and puts them in a queue with an alert, so nothing silently escapes traceability.

Every allocation is a traceability record

Allocation is not just picking logic. Each time units are drawn from a lot, LotTrack writes a permanent link between the order line and the lot, and logs the event on the lot itself.

That link is what turns a recall from an archaeology project into a query. Because every fulfilled order points back at the exact batch it drew from, the list of affected customers for any lot is already assembled before you need it.

Returns close the loop. When a customer sends stock back, LotTrack reconciles it against the lot it originally came from — automatically when there is only one possible match, or with a quick confirmation when the return could belong to more than one batch.

Try it on your own inventory

Install from the Shopify App Store — 14-day free trial on every plan.

Install LotTrack

Frequently asked questions

What is the difference between FIFO and FEFO?

FIFO allocates the stock that was received earliest. FEFO allocates the stock that expires soonest. They only produce the same result when batches arrive in the same order they expire, which is often not the case — so FEFO is the safer choice for perishable goods.

Does LotTrack assign lots automatically?

It can. In automatic mode LotTrack allocates lots by your chosen strategy as soon as Shopify creates a fulfillment. In manual mode your team assigns lots themselves, and any fulfillment that goes out unassigned is surfaced in a queue with an alert.

Can I change allocation strategy later?

Yes. The strategy is a store-level setting you can change at any time. It applies to allocations made from that point forward; historical order-to-lot links are never rewritten.

What happens when one order needs more units than a single lot holds?

LotTrack draws from multiple lots in strategy order and records a separate link for each one, so an order that spans two or three batches remains fully traceable to all of them.

Keep reading