A medical store has the stock problem of a warehouse and the speed requirement of a kirana counter. That combination is why generic retail billing software usually fails here.
Batch and expiry are not optional
Stock has to be held per batch with an expiry date. Without it:
- You cannot return near-expiry stock to the distributor in time.
- You cannot answer which batch went to which customer.
- Your stock value is wrong, because expired stock is still counted.
Beautiful GST invoices with your signature and stamp, quotations to credit notes, inventory, UPI collection and 30+ reports.
Start free See the demoThe monthly rhythm that saves money
- Near-expiry report - anything expiring in ninety days.
- Return to distributor while it is still accepted, as a credit note.
- Purchase reconciliation against distributor bills.
- Fast-moving and dead stock review before the next order.
How MizUp Finance handles it
MizUp Finance holds inventory with the detail a pharmacy needs, produces GST invoices in seconds with the right tax split, handles purchase documents and credit notes for distributor returns, and provides over thirty reports including stock and GST summaries. UPI collection sits on the bill for counter payments.
Customers billed here are the same records MizUp CLM can message, so a refill reminder for a chronic prescription goes to the right person on WhatsApp.
What it costs
Free plan available; paid plans from Rs 208 per month. See Finance pricing.
Where to start
Load current stock with batch and expiry once. It is a day of work and it changes what you can see forever after. Explore MizUp Finance.
Where medical stores usually go wrong
- Stock without batches. Two strips of the same medicine from different batches are not the same stock. Without batch, expiry is unmanageable.
- Near-expiry found at expiry. Distributors accept returns with notice. A monthly report turns a write-off into a credit note.
- Billing without picking the batch. It saves two seconds and makes the whole stock record approximate.
- Purchase bills entered weekly. By then the stock is already sold and the batch is guesswork.
- Returns adjusted informally. Distributor returns need credit notes, or stock and GST both drift.
- No refill reminders. Chronic prescriptions are predictable repeat revenue and almost nobody asks for it.
A realistic first thirty days
| Week | Focus | What good looks like |
|---|---|---|
| Week 1 | Stock with batches | Load current stock with batch and expiry. It is a day of work and it changes everything downstream. |
| Week 2 | Billing with batch selection | Counter staff picking the batch at billing. Expect a week of slower billing, then it normalises. |
| Week 3 | Purchases same day | Distributor bills entered on arrival, not on the weekend. |
| Week 4 | Near-expiry report | Run it, return what can be returned, and write down what it saved. |
The near-expiry report is the business case. Run it in week four and compare the value returned against what you would normally have written off.
The numbers worth watching
| Metric | Why it matters | How to read it |
|---|---|---|
| Value expiring in 90 days | The number that pays for the software | Run monthly, act the same week. |
| Returns accepted by distributor | How much of that was recovered | Value of credit notes raised. |
| Stock variance | Whether batches are being picked correctly | Physical versus system, monthly, on fast movers. |
| Dead stock value | What to stop ordering | No sales in ninety days. |
| Refill reminders sent | Repeat revenue most stores never ask for | Against chronic prescriptions, monthly. |
Speed and accuracy are not in conflict here
The usual objection to batch-wise billing is that it slows the counter. It does, for about a week, and then it does not — because the system learns which batch is oldest and offers it first, and staff stop thinking about it.
What the extra step buys is significant: stock that is actually countable, expiry that is manageable, and an answer when a customer or an inspector asks which batch was dispensed.
The financial case is simpler still. Most medical stores write off more value in expiry than they lose to discounts, competition and shrinkage combined, and almost all of it was returnable if anyone had looked ninety days earlier.
One report, once a month, is the whole intervention.
How this fits with the rest of your stack
A pharmacy is a retail counter with a warehouse problem and a compliance obligation.
On MizUp, Finance handles billing with GST, stock, purchases, distributor returns as credit notes, UPI collection and over thirty reports. Customers billed at the counter become records in CRM, and CLM can send a refill reminder on the official WhatsApp Business API against a chronic prescription.
That last connection is the one most stores never build, and it is the cheapest repeat revenue in the trade.
What to load first when the catalogue is enormous
A medical store carries thousands of SKUs and loading all of them with batch and expiry is not a one-day job. The practical approach is to load nothing historically and let the system fill itself from purchases.
Start by entering every distributor bill as it arrives, with batch and expiry. Within one purchase cycle — usually two to four weeks — the fast-moving eighty percent of your counter is in the system accurately, because that is exactly what you keep re-ordering.
For the slow-moving remainder, add items as they sell. A one-off item billed once in three months does not need to be pre-loaded, and pre-loading it is how a store spends a week on data entry and then abandons the project.
The exception is anything expensive or refrigerated. Load that manually on day one, because it is the stock where an expiry write-off actually hurts.
Related reading
- How to create an invoice
- GST invoice format under rule 46
- Credit notes under GST
- Billing software for a kirana store
Frequently asked questions
Why do pharmacies need batch and expiry tracking?
Because stock is not fungible. Two strips of the same medicine from different batches have different expiry dates, and selling the wrong one is both a loss and a risk.
Can it warn about near-expiry stock?
Keep expiry on the batch and run a near-expiry report monthly so returns to the distributor happen while they are still accepted.
How fast is billing at the counter?
Search by name or barcode, pick the batch, print. The batch step is the only extra compared with ordinary retail, and it is the one that matters.
Does it handle distributor returns?
Yes, as credit notes against the purchase, which keeps both stock and GST correct.
Is it GST compliant?
Yes - invoices carry the correct tax split and HSN, and GST reports come from the same data.
