Batch and expiry tracking: moving stock first-expiry-first-out across locations

Expired stock is margin you already paid for. How tracking batches and expiry dates across warehouses, vans and distributors cuts write-offs.

Every business that sells perishable or dated goods knows the end-of-quarter discovery: cartons in the back of a warehouse, or at a distributor, that expired weeks ago. The stock was paid for, stored and counted — and is now a write-off.

It rarely happens because nobody cared. It happens because nobody could see expiry at the moment a decision was made: which batch to pick, which stock to send to which distributor, what to push before it was too late.

FIFO is not enough

First-in, first-out assumes stock arrives in the order it expires. It often doesn't — a later shipment can carry an earlier date, and returns come back with all sorts of dates. First-expiry, first-out (FEFO) picks by the date on the batch instead. Doing that needs one thing above all: the batch and its expiry date recorded with the stock, wherever it goes.

What batch and expiry tracking should cover

  1. Batch and expiry recorded at receipt or production, not added later.
  2. Batches kept on every movement — warehouse to warehouse, to vans, to distributors.
  3. Stock visible by batch and expiry at each location, so pickers and planners can choose the earliest.
  4. Near-expiry stock found in time to move, discount, or return it.

How Zaqnet handles batches and expiry

In Zaqnet:

  • Stock is held across locations — warehouses, depots, vans — and moved with transfers.
  • Batches carry their expiry date, recorded when stock comes in or is produced.
  • Stock shows its batches and expiry dates, so the team can pick and dispatch first-expiry-first-out, and spot what is close to expiring at each location.

All of it is in ControlRoom, with field teams working from the same stock in GroundLink.

A write-off is the last step of a decision that was made weeks earlier without the date in front of anyone.

A monthly near-expiry routine

  • List batches expiring in the next 60–90 days, by location.
  • Move them to where they sell fastest, before they are too short-dated to sell at all.
  • Use schemes deliberately on near-expiry stock, rather than discounting everything.
  • Look at where expiries keep happening: an over-stocked location or a slow product is a planning problem, not a warehouse problem.

Questions people ask.

What is the difference between FIFO and FEFO?

FIFO ships the stock that arrived first. FEFO ships the stock that expires first. For products with a shelf life — food, beverages, pharma, cosmetics, chemicals — FEFO is what prevents write-offs, because batches do not always arrive in expiry order.

Do I need batch tracking if I am not in pharma?

If your products have a shelf life or a best-before date, yes. FMCG, dairy, bakery, beverages, personal care, agri inputs and paints all lose money to stock that expires in a corner of a warehouse.

How do I find near-expiry stock in time to sell it?

Record the batch and expiry date when stock is received or produced, and keep that batch on every transfer. Near-expiry stock can then be found by location and moved, promoted or returned while it still has value.

See it with your own process.

Bring one real example from your business to a demo, and we will walk it through ControlRoom and GroundLink with you.