All guides
GuidesPharmacy6 min read

Medicine expiry in a medical store: track it by batch, return it in time

Most medical store owners have found a carton at the back of a drawer, three months past its date, that nobody will take back. Expiry rarely looks like a loss on the day; it shows up later as a dead box. This guide is a simple routine for medicine expiry tracking batch by batch: sell the right strip first, and get near-expiry stock back to the distributor while it is still worth money. It works with a register or with software, and says when you need which.

Why does medicine expiry cost a medical store so much?

Expired stock can't be sold and, after a point, can't be returned. Every box that reaches its date on your shelf was paid for in full and is now written off in full. It never shows up as theft or a short drawer at cash-up, so it is easy to miss until it has piled up.

It is also a legal risk. Selling expired medicine is an offence under the Drugs Act 1976, and drug inspectors do seal stores for it. So the job has two halves: never let an expired strip cross the counter, and catch ageing stock early enough to do something about it.

What is the difference between FEFO and FIFO in a pharmacy?

FIFO means first in, first out: you sell the stock that arrived first. FEFO means first expiry, first out: you sell the batch that expires first, whenever it arrived. A pharmacy should use FEFO, because a newer delivery can carry an earlier expiry date than the stock already on the shelf.

This happens more often than people think. A distributor clears an older batch on your second order, and now the box at the front of the shelf expires later than the one behind it. FIFO sells the wrong one; FEFO goes by the date on the strip.

How should you record batch and expiry when stock arrives?

Record the batch number and expiry date of every line on the day the delivery arrives, before it goes on the shelf. If one line on the bill comes in as two batches, record two batches with two dates. One quantity with one date for both is how an expiry gets missed.

  • Check the batch number and expiry on the box against the distributor's bill, line by line.
  • Split a line into separate batches when the boxes carry different numbers or dates.
  • Keep the distributor's name against each batch, because that is who you will send it back to.
  • Put the soonest-expiring box at the front of the shelf, so the counter reaches for it first.

In NexusTill, a pharmacy's batches are created only from Receive goods, where each line holds its own batch rows (batch number, expiry, quantity). One delivery line can come in as several batches, and since nobody types batches in later, the batch register matches what actually arrived.

When should you return near-expiry medicine to the distributor?

Return near-expiry medicine while your distributor still gives full credit for it, which is usually well before the expiry date. Many distributors take stock back on a sliding scale: full credit when the expiry is far off, a deduction as it gets closer, and nothing at the very end. Terms vary by distributor, so ask yours and write them down.

Your real deadline is the last full-credit day

That day decides whether a batch is still worth money, and it comes well before the date printed on the strip. A list of medicines expiring next month is mostly a list of losses.

So a plain "expiring soon" list is not enough. NexusTill's near-expiry report puts every batch in one of four bands: full credit, fee applies, too late to return, and already expired. Each band shows the stock's value in rupees, with returnable batches first, so the top of the report is what to pack up this week. It exports to CSV or PDF for the distributor's rep.

When you send stock back, name the batch on the return. A distributor's credit note names a batch, and a return that only says "20 of Amoxil" cannot be matched to it six weeks later. NexusTill's supplier return takes stock from the exact batch you name, not from whichever one expires first.

What should you do with medicine that has already expired?

Take it off the shelf the same day, keep it apart from sellable stock, and record it as written off or returned. Until you do, your system still counts it as sellable stock, and your near-expiry numbers are wrong.

At the counter, NexusTill sells from the batch that expires first and skips any batch past its date. If only expired stock is left, the till refuses the sale and names the medicine, so the counter knows what to pull. If some stock is in date and some expired, the till sells no more than the in-date quantity, and a manager override does not change that. Writing the expired batch off clears it.

How do you find out who bought a recalled batch?

You can find out only if every sale recorded which batch it came from. Then a recall becomes a list: the customers who received that batch, their phone numbers, how much is still on your shelf to pull, and how much went to walk-in customers you cannot call.

That last number matters most. If most of a recalled batch went to walk-ins, phone calls won't reach them, but a notice at the counter will. NexusTill's recall trace shows all three numbers for any batch, because each sold line already records its batch.

Can you track medicine expiry with a register instead of software?

Yes, if the store is small: one counter, a small range of medicines, one owner who checks the shelves every month, and one or two distributors. Keep a page per month and write each batch under the month it expires. It is slow, but it works if someone reads it.

A register starts to fail when sales, returns and deliveries change the quantities faster than anyone updates the page, or when more than one person runs the counter. Then it shows what you had instead of what you have, and software starts to pay for itself.

  • If you only need fast billing, khata and a stock count without batch-level expiry, NexusTill's Starter plan (Rs 2,999 a month) covers that. Batches and expiry start on Growth (Rs 6,999 a month).
  • If you need drug-interaction or dose checking, NexusTill does not do it. It shows the allergies the patient told you about and says on screen that nothing is checked automatically.
  • If you run a hospital pharmacy that dispenses to wards and handles insurance claims, you need a hospital system rather than a shop till.

What does a weekly expiry routine look like?

Check what was received, read the near-expiry list by return deadline, pack returns, pull anything expired, and fix the shelf order. Every week beats a perfect check once a quarter.

  1. 1Check that every delivery from the week was received with its batch numbers and expiry dates.
  2. 2Open the near-expiry list and start with the batches still in the full-credit band.
  3. 3Pack those for the distributor, with the batch number on every line of the return.
  4. 4Decide on the fee-applies band: return it with the deduction, or sell it first if it moves fast.
  5. 5Pull anything expired off the shelf and write it off, batch by batch.
  6. 6Walk the shelves and move the soonest-expiring boxes to the front.

For what a medical store should look for in software overall, see our guide to medical store software in Pakistan. To see the batch register, near-expiry bands and recall trace on a pharmacy like yours, start the 7-day free trial (no card, nothing charged when it ends), compare plans on /pricing, or write to support@nexustill.com for a 20-minute demo.

Run your shop on NexusTill free for 7 days

You get the full product, with billing, khata and stock, on your own shop's data. No card and no setup fee, so you can see if it fits before you pay.


Written by NexusTill Team.

Ready when
you are.

Set up in an afternoon. Import your products, train your cashier in a day, and start selling. There is no hardware to buy and no contract to sign.

Contact sales

We use cookies to remember your theme, language and country. If you accept, we also use analytics to improve the site. No ads. Privacy