← The Retail Edge / Journal
Industry guides

Expiry Dates, FEFO and Waste: Better Stock Control for Nigerian Supermarkets

Evaluate Bizman Inventory for supermarket expiry control: batch receiving, FEFO, near-expiry actions and an honest markdown-versus-write-off comparison.

23 October 2026 · 12 min read
Ask about this guide ↗

Start with Bizman Inventory when expiry losses are becoming a recurring stock problem. Ask BriskRetail to demonstrate how your proposed setup records batches and dates, identifies stock needing attention and keeps withdrawn goods separate from stock available for sale. The goal is a daily routine your receiving team, shelf staff and manager can follow.

A supermarket can have enough units on the system and still lose money because the wrong batch reaches the shelf first. Another delivery arrives, older packs disappear behind it, and the owner discovers the problem when the remaining selling window is almost gone. Better purchasing helps, but the stock record must also distinguish which units need action.

This guide provides a receiving checklist, a near-expiry report specification and a hypothetical markdown-versus-write-off calculation. It focuses on supermarket stock operations; pharmacy requirements and food-production processes need their own assessment.

Commercial disclosure: BriskRetail supplies Bizman solutions and benefits commercially when customers choose its services. Bizman Inventory is our primary recommendation for a scoped evaluation of these workflows. We have not tested its batch, expiry, alert or sale-blocking behaviour. Every capability requested below must be demonstrated in the proposed configuration; software does not certify food safety.

Research checked: 23 October 2026. Official guidance and vendor documentation inform the discussion. Examples, dates, quantities and NGN amounts are illustrative, not customer results or mandatory review thresholds.

1. Use FEFO to choose the next eligible batch

FEFO means first expiry, first out: prioritise the eligible stock with the earliest expiry, rather than assuming the oldest delivery must leave first. FIFO, first in, first out, follows receipt order. The two can produce different choices when a later delivery contains shorter-dated goods.

Consider this hypothetical stock position on 23 October. Both batches are assumed to be intact, correctly stored and eligible for sale under the shop's approved policy. A separate withdrawal rule may require removal before the printed expiry.

Batch Received Printed expiry Saleable units FEFO priority
A 20 October 12 November 36 Second
B 22 October 30 October 24 First
Total 60 B before A

For a 30-unit pick, the intended allocation is 24 units from B and 6 from A, leaving 30 units of A. If shelf staff pick A simply because it arrived first, B's shorter selling window is wasted. A software allocation alone is insufficient: the packs actually selected must match it.

Odoo's version 19 documentation illustrates another detail buyers should examine: its FEFO strategy prioritises a configured removal date, which can precede expiry, and requires lot/date configuration. That is a useful demonstration question for Bizman Inventory, not evidence that the two products behave identically. Source: Odoo FEFO documentation.

FEFO never makes a damaged, recalled or temperature-compromised batch eligible. Establish stock status first, then choose among the batches that may legitimately be sold.

2. Preserve the meaning of each date

Record the manufacturer's date and its label wording accurately. Do not merge production date, receipt date, best-before date, expiry date and your internal withdrawal date into one ambiguous field. Staff should be able to explain where each value came from.

A date calculated from receipt plus a default shelf life can be a planning convenience, but it must not replace the actual labelled date on delivered goods. A supplier may deliver stock already partway through its life. Ask the presenter to show how an incorrect default is corrected and how that correction is reviewed.

Keep unknown or unreadable dates visible as exceptions. Do not invent a far-future date merely to satisfy a required field. Confirm ambiguous day/month formats with the supplier, retain supporting evidence and hold affected stock out of the ordinary selling workflow until the issue is resolved.

Date meanings and permitted disposition depend on the product and applicable rules. Do not import foreign advice about selling past a best-before date into a Nigerian supermarket policy without qualified review. This guide does not authorise sale beyond a labelled expiry or use-by date, relabelling to extend shelf life, or a blanket rule for every food category.

WHO's food-safety guidance advises against using food beyond expiry and emphasises safe raw materials and storage. Treat dates as one control among several, rather than proof that a product remains suitable until midnight on a particular day. Source: WHO Five Keys to Safer Food.

3. Catch short-dated stock at receiving

The receiving desk is the best place to discover a delivery problem before it spreads across the shop. Agree supplier acceptance terms for remaining shelf life by category and expected sales rate. There is no useful universal rule that every product needs the same number of days remaining.

Use this checklist for each applicable delivery:

  • Match supplier, purchase order, product and pack size; count the actual units received.
  • Inspect packaging and the product's required transport/storage evidence, using the shop's approved food-safety procedure.
  • Capture the batch or lot, date wording and date from the goods; split the receipt when batches differ.
  • Compare remaining life with the agreed purchasing requirement and current stock exposure.
  • Record accepted, rejected and held quantities separately, with the reason and responsible reviewer.
  • Assign the accepted stock to its real location and place earlier eligible expiry within reach for replenishment.

A carton barcode may identify the product or pack without carrying its expiry. GS1's retail 2D implementation guidance describes richer barcode data, including batch and expiration attributes, but the presence of a barcode does not guarantee that those fields exist or that your application captures them. Demonstrate your actual supplier labels and provide a controlled manual capture route where necessary. Source: GS1 retail 2D implementation guidance.

For Bizman Inventory, request a receipt containing two batches of the same SKU with different dates. Then count, move and inspect each batch separately. If the system retains only one date at product level, that limitation matters for mixed deliveries and should be resolved before relying on expiry reports.

4. Build a report that assigns an action

A useful near-expiry report is a work list. It identifies the stock, shows its physical location and gives someone a decision to make. A red number without a responsible person can remain red until the stock is unsaleable.

Report field Why it matters Action or validation
SKU, description, pack/unit Prevents confusing cartons with pieces Reconcile with physical stock
Batch and supplier receipt Identifies the affected delivery Trace supporting records
Date type, printed date, withdrawal date Separates label facts from store policy Review missing or conflicting values
Branch, shelf and backroom location Shows where staff must act Locate every affected unit
Physical quantity and saleable quantity Exposes held or damaged stock Exclude unavailable units from selling decisions
Days to action deadline Makes the remaining window explicit Prioritise against category policy
Recent sales rate and estimated exposure Supports a planning decision Check stockouts, promotions and uncertainty
Cost, proposed action, owner and next review Connects risk to accountability Approve and record the outcome

Choose alert windows by category, replenishment cycle and supplier-return cut-off. A short-life chilled item and a long-life grocery line should not automatically share the same threshold. Treat missing dates and already-withdrawn stock as distinct exception groups instead of hiding them inside a near-expiry total.

Suppose 40 eligible units have five selling days left before the shop's approved action deadline, and recent demand is four units a day. Simple expected demand is 5 × 4 = 20 units, leaving 40 − 20 = 20 units exposed if that rate continues. This is a planning signal, not a forecast guarantee. A previous stockout, payday pattern or promotion can make the average misleading.

Before ordering more, review the existing batches. Use the reorder-level guide alongside expiry exposure so an apparently low stock figure does not trigger a delivery the shop cannot sell in time.

5. Compare markdown and write-off honestly

Only consider a markdown for goods confirmed eligible for sale within the approved selling window. A discount does not cure a storage failure, damaged packaging or a passed safety deadline. Keep the manufacturer's date visible and the offer accurate.

Here is a hypothetical management comparison for the same 40-unit batch. Unit cost is NGN 800; ordinary selling price is NGN 1,200. At the current price, assume 20 units sell before withdrawal. At a proposed NGN 900 markdown, assume 35 sell. These are deliberately different demand assumptions, not proven price responses.

Measure Keep ordinary price Approved markdown
Units sold before withdrawal 20 35
Selling price per unit NGN 1,200 NGN 900
Revenue NGN 24,000 NGN 31,500
Cost of units sold NGN 16,000 NGN 28,000
Gross profit on sold units NGN 8,000 NGN 3,500
Units withdrawn unsold 20 5
Cost of withdrawn units NGN 16,000 NGN 4,000
Revenue less entire batch cost −NGN 8,000 −NGN 500

The batch cost is 40 × 800 = NGN 32,000 in both scenarios. On these assumptions the markdown improves the batch outcome by 31,500 − 24,000 = NGN 7,500, even though gross profit on the sold units is lower. That is not a NGN 7,500 profit: the batch still returns NGN 500 less than its acquisition cost.

At NGN 900, 27 units would produce NGN 24,300, slightly more revenue than the assumed 20 ordinary-price sales. This simple comparison excludes tax, fees, staff time, disposal costs, supplier credits and sales displaced from other stock. Include relevant differences before approving a real promotion. Accounting presentation and write-off treatment need the business's normal accounting review.

Record the eligible batch, quantity cap, price, start/end time and approving manager. Check the till price and shelf message together. At the deadline, withdraw remaining affected units; do not let an expired promotion become permission to continue selling them.

6. Quarantine, return and dispose with a traceable record

Separate goods awaiting a decision from goods approved for sale, both physically and in the stock record. Label the held stock so another shift cannot return it to a shelf by mistake. A note in an office spreadsheet is ineffective if the packs remain in an ordinary picking location.

NAFDAC's published food-hygiene guidance discusses segregation of unfit materials, hygienic rejection/disposal and protection during storage and transport. The available copy is dated guidance; confirm current applicable requirements for your activity before formalising the procedure. Source: NAFDAC food-hygiene guidance.

Distinguish supplier return, customer return, internal transfer and write-off. A supplier's agreement to inspect goods is not yet an approved credit. Record quantity dispatched, batch, reason, carrier/recipient evidence and the resulting credit or unresolved claim. Avoid recording both a full supplier recovery and a full unrecovered loss for the same units.

For disposal, retain approval, quantity, reason and evidence appropriate to the product and applicable procedure. Do not suggest donation, repacking or transfer to another outlet as a way around a safety restriction. A recall or suspected contamination also needs the relevant escalation process, not just a markdown decision.

7. Keep cold-chain decisions outside the expiry shortcut

An in-date product can become unsuitable if storage conditions fail. Power loss, equipment faults or an interrupted delivery can create a problem before the printed date. Restoring refrigeration does not, by itself, establish that affected goods are safe to sell.

Maintain the product-specific storage checks and incident process agreed with the responsible food-safety professional. Record the affected location, batches, incident times, available temperature evidence and decision. Hold uncertain goods while they are assessed; do not use smell, appearance or a green software status as the release criterion.

WHO's Five Keys includes keeping food at safe temperatures. That general principle supports the need for physical controls; it is not a substitute for product-specific storage limits or an assessment of a particular interruption. No universal outage duration or temperature threshold is prescribed in this article.

The NAFDAC website lists the Food Hygiene Regulations 2025 under draft regulations, closed for comments. A document title containing “Regulations” and a recent year is therefore insufficient evidence of an enacted requirement. Obtain current applicable guidance for your operation when documenting legal duties. Source: NAFDAC draft-regulations register.

8. Link the shelf routine to the stock record

At opening, assign someone to review the due-action list and check the relevant shelves and backroom locations. During replenishment, put the earliest eligible expiry into the picking position without mixing unidentified batches. At close, record what was sold, moved, held, returned or withdrawn and assign unresolved items to the next shift.

When shelf sales need to update batch exposure, include Bizman Sales and Inventory in the demonstration. Ask how the actual batch sold is identified. An ordinary product scan may not distinguish two batches; a system that automatically deducts the earliest batch can drift from reality if customers take another one. Agree a workable shelf and counting procedure to keep the records aligned.

Review waste reasons separately: short-dated delivery, excess purchase, missed rotation, damaged packaging, storage incident and inaccurate stock data. A single “expired” reason hides different corrective actions. Compare quantities in consistent units and values on a consistent cost basis; do not mix retail selling value with purchase cost.

Track whether assigned actions were completed as well as the final loss. A report can improve while the underlying problem persists if staff simply change dates or move stock to an unreviewed location. Review corrections and exceptions rather than rewarding a lower reported number alone.

9. Demonstrate the complete expiry workflow with Bizman Inventory

Ask BriskRetail to evaluate Bizman Inventory against your real receiving and shelf routine. Use synthetic batches with different dates, an unreadable-date exception and a quarantined quantity. Request the near-expiry report, a location transfer, a correction and the review history. These are acceptance requirements, not claims of tested functionality.

Then add a sale, a return and an approved markdown where sales integration is in scope. Check whether withdrawn stock is excluded from availability, whether an alert merely informs or actually restricts a transaction, and what happens when dates are missing. Record pass, fail or unverified for each essential requirement.

Agree who reviews the report, who approves price changes and who authorises release or disposal. Confirm which steps are automated and which remain manual. A practical routine that staff can execute is more useful than an alert nobody owns.

Explore Bizman or request a Bizman Inventory expiry-control demonstration. Bring example supplier labels, your return terms, stock locations and the categories that generate the most waste so the proposal addresses your actual problem.

Ask about this guide

Have a question about “Expiry Dates, FEFO and Waste: Better Stock Control for Nigerian Supermarkets”? Tell us about your business and what you need help with. This is a private enquiry.

Protected by reCAPTCHA. Google’s Privacy Policy and Terms of Service apply.

We use your details to respond to your enquiry. Privacy policy.

Keep exploring