Skip to main content
onebooksgst Logo

Batch and Expiry Tracking for Pharma, Food and FMCG Stock

Why batch changes the identity of stock, the difference between FEFO and FIFO, what to capture at inward, and managing near-expiry stock before it becomes a write-off.

7 min read
Topics:InventoryBatch TrackingExpiryPharmaFMCGTraceability
Batch and expiry tracked stock in OneBooks GST inventory
What you'll learn from this guide
  • Inventory
  • Batch Tracking
  • Expiry
  • Pharma
  • FMCG

Batch and expiry tracking is a legal requirement in pharmaceuticals and food, and a commercial necessity anywhere stock loses value with age. It changes what a stock balance means: quantity alone stops being enough.

Batch changes the identity of stock

Without batches, one hundred units of an item are interchangeable. With batches, they are separate lots with distinct expiry dates, purchase rates and saleability. Two businesses holding the same quantity can be in very different positions.

Stock identityItem and quantityItem, batch, expiry, quantityPicking ruleAny unitEarliest expiry firstRecall capabilityNoneTrace to specific customersValuationItem-level averageBatch-level cost

FEFO, not FIFO

Perishable stock is picked first-expiry-first-out, which is not the same as first-in-first-out. A batch received later may expire sooner, and should ship first. Picking by receipt date instead of expiry date is how businesses end up writing off stock that was sitting in front of them.

What to record at inward

  1. Batch or lot number exactly as printed on the supplier's pack.
  2. Manufacturing date where the product carries one.
  3. Expiry date, entered as a date rather than free text.
  4. Quantity received against that specific batch.
  5. Purchase rate for the batch, which drives valuation.

Entering expiry as free text is the most common data problem here. It prevents sorting, prevents near-expiry alerts, and makes the whole system decorative.

Managing near-expiry stock before it is a loss

Setting the near-expiry horizon

A near-expiry alert is only useful if it fires while you can still do something. The horizon should reflect how long the stock takes to sell and how long a return takes to process.

Fast-moving, sells within weeks60 to 90 daysSlow-moving120 to 180 daysSupplier return needs approvalReturn window plus 30 daysNo return possibleEarly enough to discount

Alerts set too close to expiry generate urgency without options, which trains people to ignore them.

Handling returns and replacements by batch

A customer return comes back as a specific batch, and recording it against the wrong one corrupts both positions and breaks traceability.

  1. Record the batch number from the returned pack, not from the original invoice line.
  2. Check remaining shelf life before returning it to saleable stock.
  3. Quarantine anything that cannot be resold.
  4. Raise a credit note referencing the original invoice.
  5. Update the batch position at the location the stock physically returned to.

Recall readiness

The purpose of traceability is answering a recall question quickly. A business with batch tracking configured but never tested usually finds the data incomplete at the moment it matters.

Run this as a drill once. Pick a batch sold three months ago and try to answer all four. The gaps found in a drill are cheap; the same gaps found during an actual recall are not.

Write-offs and the credit position

Expired stock destroyed is a business loss, and input tax credit claimed on goods later written off may require reversal in specified cases. Record write-offs with a reason code and the batch reference, and confirm the GST treatment with your CA before posting a material amount.

What to check before enabling batch tracking

Turning batch tracking on midway through a period, without preparing, produces a stock position nobody trusts. A short preparation sequence avoids that.

  1. Decide which items genuinely need batches; not everything does.
  2. Count physical stock by batch for those items.
  3. Record expiry dates from the packs, not from purchase records.
  4. Enter opening batch positions before any new movement.
  5. Confirm picking behaviour on a test sale before going live.

Batch data quality decides everything downstream

Batch numberRetyped with a typoTraceability breaksExpiry dateEntered as free textNo sorting, no alertsManufacturing dateLeft blankShelf life cannot be computedQuantityEntered against the wrong batchTwo positions wrong at onceRateItem rate used instead of batch rateValuation drifts

Reporting that makes batch data useful

Capturing batch data and never reporting on it is a common outcome. Four reports turn it into a working control.

Building it into the daily routine

Batch control works when it is part of ordinary handling rather than a separate exercise. Reading the batch at the point of picking, not at the point of billing, is what keeps the data honest.

  1. Capture batch at inward, from the pack.
  2. Pick by earliest expiry, enforced by the system rather than by memory.
  3. Review the near-expiry report weekly, not monthly.
  4. Act on it: discount, return or transfer while options exist.
  5. Write off with a reason code when nothing else is possible.

Frequently asked questions

Is batch tracking mandatory?

For pharmaceuticals and many food categories, yes, under sector regulation. Elsewhere it is a commercial decision driven by shelf life and recall risk.

How does batch affect GST?

Batch details do not change GST rates or return formats, but batch numbers commonly appear on invoices in regulated sectors and are needed for traceability during inspection.

What about serial numbers?

Serial tracking identifies individual units rather than lots, and suits high-value goods with warranties. It is a different control from batch tracking and is usually applied to different categories.

OneBooks GST publishes practical guides to help Indian businesses understand compliance, reconciliation, and reporting workflows.

Keep reading

More Inventory Software guides

Track inventory the smart way with OneBooks GST.

Item master, purchase inward, stock ledger, warehouse management, and valuation reports built for Indian SMEs.