Clinic inventory: from the lot number to the cost of a visit
A clinic finds out it is out of carpules when the dentist opens an empty drawer, and finds out which patients had a recalled filler lot only after days of going through notebooks. A clinic's stock is not a warehouse; it is part of patient safety and part of the margin at once, and this guide explains how to run it.
In most clinics stock is run from memory: a nurse who knows where the last box is, a doctor who calls the supplier when the drawer looks thin. That works for a small clinic for a while, and then the cost shows. A vial of toxin expires in the fridge unnoticed, the filling material runs out halfway through a busy day, and a filler lot is recalled and the clinic cannot say which patients had it.
Dental, aesthetic and physiotherapy clinics run on consumables more than most, as the dental clinic software guide and the guide to aesthetic and dermatology clinics both explain. This guide sets out the whole method, from adding an item to knowing what one visit cost in materials.
What counts as clinic stock
Everything bought to be used up inside the clinic: gloves, gauze and needles; dental anaesthetic and filling material; toxin and filler; implants; medicines given in the clinic; and any products the clinic sells. Each item needs three decisions, made once, at the start:
- The unit it is counted in: piece, box, ml, unit or carpule. Above all it must stay fixed; if gloves are counted by the piece for a month and then by the box, "100" means two different things in the same ledger.
- Whether it is tracked by lot. Injectables, implants and dental materials should be, because they are what a recall asks about. Gloves and gauze usually need not be.
- A reorder level: the quantity at which it is time to order, worked out from what is used between placing an order and the delivery arriving, plus a safety margin.
Lots and expiry dates: why the item name is not enough
A lot number is what the manufacturer prints on the box to identify everything from one production run. When stock is recorded by name alone ("toxin 100U: 5 vials"), the two facts that matter are lost: when each vial expires, and which run it came from. When every delivery is received with its lot number and expiry date, the stock has an age you can read, and every patient has a trail you can follow.
The same lot twice is not two lots
If a second delivery of the same lot, with the same expiry, arrives at the same branch, it adds to the first rather than opening a new line. Otherwise one lot shows up as two rows and both counting and tracing get harder. And type the lot number exactly as printed: a missing digit or two swapped characters create a lot that does not exist.
First expiry, first out
The warehouse rule is first in, first out. For medical supplies the better rule is first expiry, first out (FEFO). A new delivery can arrive with an earlier expiry than one already on the shelf; issue the older delivery first because it came in first, and the new one expires on the shelf. Take a use of 150 units of an item held in three lots:
| Lot | Expires in | On the shelf | Taken for a 150-unit use |
|---|---|---|---|
| OLD1 | Expired 3 days ago | 40 | None: expired |
| XY999 | 30 days | 100 | 100 |
| AB123 | 200 days | 450 | 50 |
Note that the expired lot is not touched, however far forward it sits on the shelf. Two rules allow no exceptions: nothing expired is used on a patient, and no use is recorded for more than is in stock. If the system says there is not enough, the right answer is to find out why, not to push the figure below zero and fix it later. A negative balance means the record is wrong somewhere.
Recording what was used, on which patient and visit
Knowing that 20 units of toxin went out today is one thing. Knowing they were injected into a particular patient, at a particular visit, from a particular lot is something else entirely. The first is enough to reorder; the second is what you need when the patient reports a side effect, or the supplier recalls the lot.
- Record the use when it happens, from the patient's file and against their visit, not at the end of the week from memory.
- Keep general clinic use apart (gloves for the morning set-up, say) from use on a patient, so nothing is filed against a patient it was not used on.
- Tie each service to what it uses: a composite filling takes a carpule, a bond and two cotton rolls, so those lines should appear ready when the use is recorded, for whoever used them to confirm.
- A mistake is reversed, not deleted: a use filed against the wrong patient is put right with an opposite movement that stays visible, so the record stays true.
A recall: from the supplier's notice to a list of patients
Type the lot number
Exactly as it appears in the recall notice from the supplier or the authority.
Find where it came from and where it is
Which supplier and delivery note it arrived on, and at which branch any of it is left.
Take what is left out of use
Write off the remaining quantity, or record it as returned to the supplier, with the reason.
Pull the list of patients
Every patient the lot was used on, when, how much, and who recorded it, with their mobile number to call.
Call and document
The doctor, or whoever they delegate, calls each patient, and what was said goes in their file.
Counts, write-offs and reversals
- A count compares the shelf with the record: what is actually on the shelf is entered, and the difference is recorded as an adjustment with a reason, never a silent edit of the figure.
- A count is against a fixed figure: if some of the item was used between opening the count and saving it, the count answers an old question and has to be done again.
- A write-off carries its reason: expired, damaged, lost, or returned to the supplier. The pattern of reasons says a lot; repeated write-offs for expiry mean the clinic is ordering more than it needs.
- A reversal happens once: a movement already reversed cannot be reversed again, and a reversal itself is not reversed. Whoever recorded a use puts it right promptly; after that it is for whoever manages the stock.
Transfers between branches
In a clinic with several branches, one branch is often sitting on more of something than it can use before expiry while another waits for the supplier to deliver the same item. Moving it is cheaper than ordering it, provided the lot number, expiry date and cost travel with the quantity, and the move is recorded as two movements: out of one branch and into the other. The safer rule is that staff send from their own branch to any branch, but never pull stock from a branch they do not work at. For the wider picture, see the guide to multi-branch clinic management.
Reorder levels: when to order
A reorder level is set per branch and measured against what can still be used, not what is on the shelf. Thirty expired ampoules are not thirty ampoules in hand. And a branch that has never kept an item is not short of it. Good alerts come in three kinds: an item at its reorder level, a lot close to expiry, and a lot that has expired with stock still on the shelf. The items that are low are then grouped by their usual supplier, so each order is one message to one supplier.
The cost of consumables per visit
The price of a toxin session looks generous until its materials are counted. The arithmetic is simple once each lot has a unit cost, taken as the weighted average of what was paid across its deliveries:
| Material | Quantity | Unit cost (SAR) | Cost (SAR) |
|---|---|---|---|
| Toxin | 20 units | 2.70 | 54.00 |
| Needle | 1 | 1.50 | 1.50 |
| Gloves | 2 | 0.40 | 0.80 |
| Alcohol swab | 2 | 0.10 | 0.20 |
| Total | — | — | 56.50 |
Set that figure against the service's price and the doctor's share and you have its real margin. And if a service keeps using more than its recipe says, that is a quiet leak of the kind a revenue leakage dashboard is meant to surface.
Who should see the stock's value
| Role | Does | Sees costs and value |
|---|---|---|
| Owner | Everything, including archiving items and suppliers | Yes |
| Manager | Everything, including archiving | If the owner lets them see financial data |
| Nurse and reception | Receive, use, count, write off, transfer and keep the catalogue | No |
| Doctor | Record what they used, and look at the stock | No |
| Accountant | Look only | Yes |
How 3yadtk handles clinic stock
In 3yadtk, on the Inventory page, items are kept in Arabic and English, each with its kind, the unit it is counted in, a reorder level and a usual supplier, plus an optional code and barcode that a barcode scanner can type into the search box. The unit is fixed once the item has any movement. A delivery is received with its branch, supplier and delivery-note number; a tracked item needs its lot number and expiry date, an expiry already past is refused, and a second delivery of the same lot with the same expiry adds to the first at a weighted average cost. Use is recorded from the Supplies tab in the patient's file, against one of their visits from the last two weeks, or as general clinic use. It takes the first lot to expire automatically, never takes from an expired lot even when one is picked by hand, never accepts more than is available, and refuses a use against a visit at another branch. Each service can list the materials it uses, so their lines appear ready for staff to confirm; nothing is deducted from stock automatically when a service is billed. A use entered by mistake is reversed, once: by whoever recorded it within 24 hours, and by whoever manages the stock at any time. A count is refused if the quantity changed after it was shown, a write-off carries its reason, a transfer between branches carries the lot, its expiry and its cost, and staff tied to one branch send from it but cannot pull from another.
The Inventory page and the alerts bell flag what has reached its reorder level at its branch, counting only stock that can still be used, what expires within 60 days, and what has expired with stock left; the page also lists what to order, grouped by supplier, ready to copy. Lot trace shows which supplier a lot came from and every patient it was used on, when, by whom and their mobile number, and every trace read goes in the activity log. Costs and the stock's value show only to whoever sees the clinic's money, and the movements ledger keeps each use's cost for them. 3yadtk does not raise purchase orders or send orders to suppliers itself, and it does not yet total the materials cost of each visit in a ready-made report.
Stock by lot, and a trail for every patient
Receiving by lot and expiry, use from the first to expire against the patient's visit, counts, write-offs and branch transfers, and a lot trace for recalls.
See the features