Pharmacy batch tracking and FEFO: record, rotate and trace every medicine batch
How to record batch numbers at receiving, sell first-expiry-first-out at the counter, keep the shelf in the same order as your records, and find a batch quickly when a recall notice arrives.
By the RunMyPharmacy team · Updated · 6 min read
Published by the RunMyPharmacy team, which builds the software linked in these guides. Examples are educational; verify local legal and professional requirements. About the team
Why a stock total is not enough
A product record tells you that you hold 40 strips of a medicine. It does not tell you that 10 of them expire next month and 30 expire in two years. Every decision about expiry, rotation, returns and recalls depends on that difference.
A batch is one manufactured lot of a product. It has its own batch number (sometimes printed as lot number) and its own expiry date. Batch tracking means you keep a quantity for each batch, not only for each product.
Step 1: Capture the batch at receiving
The receiving desk is the only point where batch details are easy to collect. After the stock is on the shelf, nobody will go back and read every pack.
- Compare the delivery with the purchase order and the supplier invoice: product, strength, pack size and quantity.
- Read the batch number and expiry date from the packs, not only from the invoice. Note any line where they do not agree.
- Enter each batch as a separate line, even when one product arrives in two batches.
- Keep the stock in the receiving area until the entry is complete and checked.
Step 2: Sell first-expiry-first-out
FEFO has two parts, and both are necessary:
- In your records: each sale reduces the batch with the earliest expiry date first. Then your batch quantities show what should physically remain.
- On the shelf: the earliest-expiring packs are in front, where staff pick first. New deliveries go behind.
If only one part is done, records and shelf will gradually disagree. Staff then sell the newer pack, and the system still shows the older batch as in stock. The older batch is usually found only after it has expired.
Step 3: Watch for out-of-order deliveries
Sometimes a new delivery expires before the stock you already hold, for example when a distributor clears older stock. If staff place this delivery behind the shelf stock, it will be the batch that expires.
Check the expiry date of every new batch against the earliest batch already on the shelf. When the new batch expires sooner, put it in front and move the existing stock back.
Step 4: Give each batch a place
Use a clear shelf address, such as rack, shelf and position, and keep it with the batch record. When you know where a batch is, a stock check, a rotation or a recall takes minutes instead of a search through the whole store.
Step 5: Be ready for a recall
A recall or quality alert, from the regulator, the manufacturer or your distributor, usually names a product and one or more batch numbers. Prepare the steps before you need them:
- Find every batch of the product and confirm whether you hold the named batch numbers.
- Go to the shelf address and remove the affected packs from sale. Keep them in a separate, labelled quarantine area.
- Count what you removed and compare it with the recorded quantity.
- Follow the instructions in the notice for return or disposal, and keep a written record of what you did and when.
Do not decide yourself that a recalled batch is safe to sell. The notice and your supplier decide what happens to that stock.
Common batch tracking mistakes
- Entering one expiry date per product, usually the date of the newest delivery.
- Entering the invoice batch number without checking it against the packs.
- Combining two batches into one line to save time at receiving.
- Adjusting stock to match the shelf without first finding out which batch is wrong.
How RunMyPharmacy handles batches
In RunMyPharmacy you enter the batch number and expiry date for each line when you receive a purchase. A batch number that already exists with a different expiry date is rejected, so the mismatch is checked before the stock goes on sale.
Each sale deducts stock from the earliest-expiring unexpired batch, and the sale record keeps which batch the quantity came from. Expired batches are not sold. When a new delivery expires sooner than the stock already on the shelf, a rotation task tells staff to move it to the front. You can see every batch of a product with its remaining quantity, expiry date and shelf address.
Frequently asked questions
What is the difference between FIFO and FEFO?
FIFO (first in, first out) sells the oldest delivery first. FEFO (first expiry, first out) sells the batch with the earliest expiry date first, even if it arrived later. For medicines, FEFO is the safer rule, because delivery order and expiry order are not always the same.
Do I need batch tracking for every product?
Track batches for every medicine with an expiry date. For a non-expiring item, a single stock count may be enough. If you are unsure, track the batch: you cannot add a batch number to stock that has already been sold.
What should I do if two deliveries have the same batch number but different expiry dates?
Stop and check the packs and the invoice. One batch number normally has one expiry date. A mismatch is usually a data-entry mistake, but it can also show a problem with the stock. Do not put the stock on sale until you have confirmed the correct details with the supplier.
Try RunMyPharmacy free
Pharmacy software for Pakistan, free during early access. No credit card required.
Create your free accountRelated
Inventory Management
Manage medicine stock, boxes, strips, batch expiry and low-stock levels with RunMyPharmacy. Pharmacy inventory software for medical stores in Pakistan.
Shelf Management
Assign shelf locations to every product, manage FEFO stock rotation, get expiry alerts and run shelf audits to keep your pharmacy organised.
Expiry Check Routine
A daily, weekly and monthly expiry check checklist for pharmacies: review alerts, walk shelves at 90/60/30 days, quarantine expired stock and fix purchasing.
Reducing Expired Stock
Why pharmacies lose money to expired stock and how to stop it: batch tracking, FEFO, tiered expiry alerts, smarter reordering and supplier returns.
How to find reliable medicine suppliers for a pharmacy in Pakistan
Find and assess medicine distributors using identity checks, a comparable quotation, written return terms and a small trial order before making large commitments.
Opening stock for a new pharmacy: what to buy first
Build an opening inventory from local demand, realistic delivery times and a cash limit, rather than copying somebody else’s medicine list.