If your business sells anything with a shelf life, the cheapest way to avoid expiry losses is to know which batches are closest to their date before the date arrives. Batch tracking, a near-expiry view and first-expiry-first-out (FEFO) picking give you exactly that, and Aicountly Inventory has all three.
This guide walks through how to set up batch and expiry tracking in Inventory so that short-dated stock gets sold first, step by step and in plain words.
Why batch and expiry tracking matters
A batch (or lot) is a group of units made or received together, with one batch number and, usually, one expiry date. Foods, medicines, cosmetics, chemicals and adhesives are typical examples. If you only track total quantity, a shelf can hold 500 units and you still cannot tell that 200 of them expire next month.
The expensive mistake is picking by habit. The batch nearest the door gets shipped, while an older-dated batch sits behind it. Over time you build a pile of stock nobody can sell. Writing it off also hurts your books, because the cost of the goods is gone with no sale against it.
Step 1: Create batches with their dates
In Inventory, open Masters → Batches. Each batch carries these fields on its form:
- Item – only items that are set to track batches appear in the list.
- Batch number and an optional Lot number.
- Manufacturing date and Expiry date. If you leave the expiry date empty, it is filled from the item's shelf life.
- Warranty (months), useful for goods that carry a warranty rather than an expiry.
- Status.
The batch list shows batch, item, lot, manufactured and expiry dates, quantity on hand and status, and you can filter it by status. A batch can be deleted only when it has no stock and no document references, so a batch you have already moved stock through stays on record.
Step 2: Understand batch status
Every batch has one of five statuses: active, quarantine, recalled, expired or closed. Keep this simple rule in mind: only an active batch is meant to be sold. A quarantined or recalled batch may well expire sooner than everything else, but it should not be offered for picking, because you cannot sell it anyway.
Use quarantine for stock waiting on a quality check, and keep the status accurate. Reports and picking depend on it.
Step 3: Review the Near expiry report every week
Open Reports → Near expiry. It lists batches expiring within a window, oldest first, along with what is on hand and what is already promised. You can set:
- As at date, which defaults to today inside the open financial year.
- Within days, which starts at 30.
- Include expired and Expired only toggles.
- Filters for item, warehouse and item group.
The columns include item, batch, warehouse, expiry date, days left, on hand, reserved, packed, unit cost and value. A badge on Days left turns to a warning when 30 days or fewer remain, and to critical once the batch has expired. The summary tiles show the window, the number of batches and items, the quantity on hand and the count of expired batches. Clicking the expired tile takes you straight to the expired batches.
The Reserved column matters more than it looks. A batch with 100 units on hand and 80 already reserved for orders has only 20 units to push. Read the two together before you plan a discount or a return to the supplier.
A practical routine: every Monday, run the report for 30 days, then again for 60 days. The 60-day list is your early warning, and the 30-day list is your action list.
Step 4: Switch on FEFO picking
FEFO means first-expiry-first-out. It differs from FIFO (first-in-first-out): a batch you received last month can expire before one you received last year, so picking by receipt order can leave short-dated stock on the shelf.
To use it, open Settings and turn on First-expiry-first-out (FEFO) when picking batches automatically. The setting description says it prioritises the batches with the earliest expiry date during automatic picking. The help text adds an important limit: it applies only where a batch is picked for you. A batch you choose by hand on a document is always respected.
Inventory's picking service works through active batches in expiry order, with batches that have no expiry date last. It only suggests a pick and does not hold stock. If you need stock held for an order, create a reservation, which is a separate step (see our guide to reserving stock for an order in Inventory).
Step 5: Deal with expired stock properly
When a batch expires, it needs a decision: return it to the supplier, destroy it, or write it off. Inventory has a Stock Write-Off entry, described as the place to remove damaged, expired or lost stock. Record the write-off in the period the loss is identified, keep a note of the batch and the reason, and let your accountant decide on the tax treatment of the loss.
Do not leave expired stock sitting in your books at full value. Your closing stock figure then looks healthier than it is. A physical count helps here; our physical stock verification routine shows how to reconcile what is on the shelf with what the books say.
Step 6: Combine expiry with reorder planning
Buying more of something that is not moving is how short-dated stock appears in the first place. Look at the Near expiry report together with reorder levels, and see how to set reorder points and read the Replenishment report so that you reorder what sells and not what you are comfortable stocking.
Key takeaways
- Track batches with a batch number and an expiry date for every item that has a shelf life.
- Keep batch status accurate: only active batches are for sale.
- Run the Near expiry report weekly with 30-day and 60-day windows and read Reserved beside On hand.
- Turn on FEFO so that automatic picking takes the soonest-expiring batch first, and remember that manual choices are always respected.
- Write off expired stock promptly, with a reason, and confirm tax treatment with your CA.
If you run a stock-heavy business, Aicountly Inventory keeps batches, expiry dates and the Near expiry report in one place, so the weekly check takes minutes instead of a shelf-by-shelf walk.