Perishable inventory in a food or beverage ERP is managed by holding an expiry date and shelf-life rule on every lot, picking the earliest-expiring usable lot first (FEFO), and scheduling production so inputs are used before they expire and finished goods reach customers with enough life left. Expired and short-dated stock must count as unusable in planning.
Most food ERP guidance stops at lot tracking. That is necessary, but it answers the question "where did this lot go?". Perishable planning asks a different one: "which lot should we use or ship next, and what should we make this week given what is about to expire?" This guide covers that second question. For recall readiness and the lot genealogy data model, read our companion guide on lot traceability and recall readiness in food ERP; for the wider feature list, see ERP for food and beverage manufacturing. The commercial overview is on our food and beverage ERP software page.
Key takeaways
- Store three things per lot: the date the product was made or received, the expiry or best-before date, and a status (available, quarantine, on hold, expired).
- Use FEFO (first expired, first out) for allocation and picking, and let FIFO apply only where shelf life does not matter.
- Give each customer a minimum remaining shelf life rule and let the system choose lots that satisfy it.
- Planning (MRP) should net only usable stock on the production date, not total stock on hand.
- Track yield and waste by reason, including expiry write-offs, so scheduling mistakes show up as numbers.
- Decide how far to digitise the plant floor: tablets and scans, or direct machine data.
What do lot tracking and expiration date management involve?
It involves capturing a lot number and an expiry date at receiving and at production, storing a shelf-life rule per item, showing stock by expiry, controlling status (quarantine, available, expired), and driving allocation and picking from the expiry date. Reports should show stock at risk, near-expiry and expired value by lot, location and customer.
Break the requirement into the data and the rules:
| Element | What to store | Why it matters |
|---|
| Lot identity | Internal lot, supplier lot, item, quantity, location | Links stock to its source and users |
| Dates | Production date, expiry or best-before date, retest date where used | Drives picking and write-off decisions |
| Shelf-life rule | Total shelf life in days, minimum remaining life at receipt, at shipment, per customer | Lets the system reject or allocate correctly |
| Status | Quarantine, available, hold, expired, rejected | Stops unusable stock entering production or orders |
| Condition | Temperature zone, storage class | Prevents moving chilled goods to ambient bins |
Date marking terms and what they legally mean differ between countries, for example "best before" and "use by". Do not hard-code one interpretation; make the label type and the rule configurable and confirm local rules for your market.
How do food and beverage ERP systems handle batch traceability and expiration date management together?
They link the two through the lot. Every receipt and every production batch creates a lot carrying an expiry date, and every issue, transfer and shipment moves quantity against that lot. Traceability follows the lot's history; expiry management uses the same lot's date to decide which stock is picked, planned and written off.
This is why a single lot record matters: if expiry lives in a spreadsheet and lots live in the ERP, the two drift apart. When finished goods are made from several ingredient lots, many companies set the finished lot's expiry as the earlier of the shortest ingredient expiry and the production date plus the product's validated shelf life, but this is a company policy that your quality team must set per product. Make that calculation explicit in the system so nobody has to do it by hand.
FEFO, FIFO or something else: which picking rule fits?
FEFO picks the lot with the earliest expiry date first and is the right default for perishable goods. FIFO picks the oldest received lot first and is acceptable when shelf life is long and similar between lots. Some customers specify a minimum remaining shelf life, which needs FEFO with a filter.
| Rule | Picks | Best for | Weakness |
|---|
| FIFO | Oldest receipt date | Long-life dry goods | Can ship a newer lot with earlier expiry |
| FEFO | Earliest expiry date | Chilled, fresh, short-life products | Needs reliable expiry data on every lot |
| FEFO with customer minimum life | Earliest expiry that still meets the customer rule | Retail and export customers with life requirements | Needs customer rules maintained |
| LEFO (last expired, first out) | Latest expiry | Rare; a few customers specify it | Raises write-off risk on the remaining stock |
Require that the system proposes the pick and warns or blocks an override with a reason code. A picker taking the nearest pallet instead of the correct lot is the most common reason FEFO fails in practice, so mobile scanning at the pick face is worth specifying. See the ERP inventory management module guide for location and counting rules.
How should production scheduling work around shelf life?
Production scheduling around shelf life means working backwards from the date the customer needs product with enough remaining life, deciding how far ahead you can make it, and sequencing runs so short-life products are made close to dispatch while long-life products are made in larger campaigns. The ERP should show these limits when the plan is built, not after.
Four rules to specify:
- Latest and earliest production date. For each product, the earliest date you can make it and still meet the customer's minimum remaining life, and the latest date you can make it and still ship on time.
- Campaign length. Longer runs reduce changeovers, but build stock that must be sold before it expires. The planner should see the shelf-life consequence of a bigger batch.
- Changeover and cleaning. Allergen changes and cleaning cycles take line time. Sequencing from low-allergen to high-allergen products, where your process allows, reduces cleaning. The scheduler needs those changeover times as data.
- Hold times for intermediates. Sauces, doughs, bases, wort or blends often have their own short life between steps. Treat them as items with a lot and an expiry.
Planning with short-dated inputs means telling MRP which stock is genuinely usable on the production date. A lot that expires in three days is not available for a run scheduled in five. The system should exclude it from net requirements, flag it as "use first", and suggest recipes or orders that can consume it.
Specify these behaviours:
- Usable-stock netting. On-hand quantity is reduced by lots that will be expired or below the minimum input life by the planned date.
- Use-first list. A daily list of lots expiring within a threshold you set, by value and location, with the open orders that could use them.
- Reservation. Reserve the right lots to the right production orders, so a later order does not take fresher stock first.
- Supplier delivery windows. Purchase suggestions that account for the shelf life the supplier delivers, not just the lead time.
- Substitution rules. Where a recipe allows alternative ingredients or alternative lots, the system should show them rather than leaving a planner to remember.
Yield, waste and the real cost of expiry
A food ERP should compare theoretical yield, from the recipe, with actual yield, from what was produced, and record the difference by reason: trim, spillage, rework, quality rejection, line loss or expiry. Waste by reason is how you learn whether the problem is the line, the recipe or the planning.
Require the following:
- Recipe yield per batch with an expected tolerance, and an alert when actual falls outside it.
- Waste reason codes that operators can pick in two taps.
- Expiry write-offs posted as a distinct stock transaction with lot, quantity and cost, so they can be reported by product, customer and season.
- Co-products and by-products recorded as outputs with their own cost allocation.
- Rework rules: when reworked product is added to a new batch, the lot link and expiry rule must carry over.
Shelf-life labelling and date-code rules differ by market, so confirm the local rules before fixing the label logic.
How can I track the entire production process digitally in a beverage manufacturing plant?
Track a beverage process digitally by recording each stage against a batch: ingredient lots issued, vessel or tank used, process steps with times and measurements, quality checks, filling line counts and packaging lots, then finished-lot creation and shipment. The levels range from tablets and barcode scans up to direct data from machines.
| Level | How data gets in | Suits |
|---|
| 1. Paper replaced by tablets | Operators enter readings and confirm steps | Small plants starting out |
| 2. Scan-based | Barcode scans for lots, vessels, packaging and pallets | Most mid-sized plants |
| 3. Machine-connected | Line counters, scales and sensors feed the batch record | Plants with PLCs and stable lines |
| 4. Full plant integration | A manufacturing execution layer exchanges data with the ERP | Larger, multi-line sites |
Most plants should reach level 2 first and add machine data where it removes real manual entry. When you connect equipment, agree which system owns the recipe, the batch record and the quantity of record. The ERP integration services page describes how plant-floor data is usually joined to the ERP.
Specialist planning software or your legacy ERP for perishable planning?
Choose by the planning problem, not the label. A legacy ERP may be enough if your shelf-life data is clean and the plan is mainly a production schedule. A specialist demand and replenishment planning tool helps when forecasting across many stores or SKUs drives waste. A custom module helps when your rules are unusual.
| Question | If yes, lean towards |
|---|
| Is waste driven mainly by forecast error across many items and outlets? | Specialist forecasting and replenishment tool |
| Is waste driven by scheduling and changeovers in your plant? | Better ERP scheduling or a custom scheduling module |
| Is expiry data missing or inconsistent? | Fix data first, in any system |
| Are your customer shelf-life rules complex? | Check allocation rules in each option |
| Can the ERP be extended through documented interfaces? | Keep it and add a layer |
Whichever route you take, ask each vendor to run your own expiry data and one real week of orders through their system, and check the vendor's current documentation for features rather than relying on a sales summary.
Illustrative example: a chilled sauce line
The numbers are illustrative. A sauce has a 21-day shelf life and a customer requires at least 14 days remaining on delivery. Sauce made on Monday can therefore be delivered to that customer only until the following Monday, because after seven days it has fewer than 14 days left. A planner considering a double batch on Monday to cover two weeks of orders sees that deliveries in the second week would breach the customer rule, so the system recommends a single batch now and a second run mid-week. The same screen shows a lot of cream expiring in four days, reserved to Tuesday's run. Without usable-stock netting the planner would have counted that cream as available for Thursday and discovered the shortage on the day.
When this is the wrong approach
A full perishable-planning build is the wrong approach when shelf life is long, volumes are small and a lot-controlled stock list in a spreadsheet already works. It is also wrong to invest in scheduling logic while receiving is still unreliable: if expiry dates are not captured at the dock, nothing downstream is trustworthy. Start with receiving, status control and FEFO picking, then add scheduling rules.
Glossary: FEFO, first expired, first out; FIFO, first in, first out; LEFO, last expired, first out; minimum remaining shelf life, the days of life a customer requires on delivery; usable stock, stock whose remaining life is enough for its planned use; intermediate, a made-in-house semi-finished item with its own lot and expiry.
How Timeline Digital approaches perishable stock systems
Perishable stock is only as reliable as the expiry data captured at the dock. Timeline Digital, founded in Islamabad in 2013 and delivering remotely, can build custom ERP software around your lot, expiry and scheduling rules. In the Plan step we agree which rules the first modules must cover, and we build a free pilot of two to three key modules that you test before the final agreement. The schedule is set from your requirements, and the code transfers on full payment. Compliance with any food rule is confirmed per project and is never promised by software alone.