Clinic & Pharmacy Inventory Management in Kenya (2026 Guide)
For a clinic, a stockout is a clinical event and expired stock is a write-off you dispensed money into — the 2026 guide to pharmacy and clinic inventory for Kenyan facilities.
Clinic inventory is retail inventory with the stakes raised. A shop that runs out of an item loses a sale; a clinic that runs out of amoxicillin turns a patient away. A shop with slow stock discounts it; a pharmacy with slow stock watches it expire and pays to dispose of it. And where a shop reconciles money, a facility must also reconcile a controlled substances register that regulators can inspect. The discipline is the same — receive, store, issue, count — but the tolerances are tighter everywhere.
The three inventories every facility runs
| Inventory | What it is | The specific discipline |
|---|---|---|
| Pharmacy stock | Dispensable drugs, by batch and expiry | Batch tracking, FEFO issue, expiry horizon reports, dispensing-to-stock reconciliation |
| Clinical consumables | Gloves, syringes, gauze, reagents, test kits | Par levels per room, consumption per patient-load, weekly top-ups from the main store |
| Equipment & assets | From BP machines to the ambulance | Register with named custodians, condition, location and movement history — service and calibration dates are not fields |
Most facilities track the first badly and the other two not at all — yet consumables quietly consume a comparable budget, and equipment downtime cancels clinics.
Pharmacy: batches or nothing
Drug stock that is not tracked by batch and expiry is not tracked. Every receipt records batch number and expiry date; every issue follows FEFO — first-expiry, first-out; and the system reports what expires in 30, 60, and 90 days while there is still time to use, transfer, or return it. The full playbook is in our expiry management guide, and it starts with a number most facilities have never computed: what expiry cost you last year.
Dispensing must move stock
- Every dispensed item decrements stock at dispensing time — the pharmacy equivalent of the retail rule that every sale moves the stock card.
- Dispensing-to-stock reconciliation weekly: what the clinical records say was dispensed vs what left the shelf. The gap is theft, spillage, or record failure — all three need attention.
- Controlled substances get their own register with per-transaction sign-off; a regulator inspection should be a printout, not a panic.
- Cash and insurance billing reconcile against dispensing — undispensed billing and unbilled dispensing are both leaks.
The stockout ledger
Keep a simple log: every time a prescribed item was unavailable, what and when. A month of it tells you which par levels are wrong and what the "we cannot afford more stock" policy actually costs in turned-away patients. Facilities that keep this log change their purchasing within a quarter.
Consumables and equipment
- Set par levels per consumption point — the lab, each consultation room, the dressing room — and top up weekly against actual use, not requests.
- Buy against consumption data: procurement sized by patient load beats orders sized by habit.
- Equipment lives on a custody register — who holds it, where it is, its condition and what it cost. Calibration and service dates are the part that register does not hold, so keep them on a separate schedule and read that post before relying on this line.
The weekly rhythm
One hour a week, forever
- Expiry horizon report reviewed; 90-day items actioned.
- One shelf section cycle-counted, variance explained same day.
- Dispensing-to-stock reconciliation run; gaps investigated.
- Stockout log reviewed; par levels adjusted where it repeats.
- Reorder list generated from consumption — then reviewed by a human before ordering.
Everything above assumes one system where dispensing, stock, purchasing, and billing meet — which is precisely what AWRA for clinics provides, offline-capable for facilities where connectivity is a rumor.
What AWRA OpsHub does today
- Batch, lot and serial tracking — expiry date, supplier and originating purchase order recorded on every batch, with serial numbers where you need them.
- FEFO allocation — issues take the soonest-expiring batch first, in the query rather than by instruction — plus a Batch Expiry report with a selectable horizon and the value at risk.
- Quality holds that are enforced, not advisory — quarantined, inspection-pending, damaged, expired and returned stock is excluded from issuing and selling by the allocation query itself. Hold, release and dispose each record the quantity, the reason, a note and the person who did it.
- Blind cycle counting — counters cannot see system stock without a specific permission, with variance rules and valued variance on close.
- Reorder points that alert the moment they are crossed — the check is edge-triggered on the stock movement itself, on any path that decreases stock, with a daily digest at 08:30 as well — and an automation that raises a procurement request when an item crosses its point.
- Procurement with teeth — requisition, permission-gated approval, RFQ comparison, purchase orders, receiving and three-way matching, with supplier on-time rate, quality score and pricing trend tracked per vendor. The teeth are structural: a purchase order can only be raised from an approved quotation, an over-delivery is refused at the receiving bay, and a mismatched invoice cannot be paid without a written override.
- An asset register with named custodians, department, location, condition, movement history and retirement with a reason — the equipment inventory, minus the clinical fields.
More we can add to your workspace
- A patient, visit, prescription and dispensing record. “Dispensing” here is a point-of-sale line or a stock issue today; a clinical layer above it is a different build, and one we would scope carefully.
- Therefore no dispensing-to-stock reconciliation. The weekly check this post recommends compares two records, and we only hold one of them.
- A controlled-substances register with per-transaction sign-off.
- A par level per consumption point. The reorder point is one number on the item, not a level for the lab, the dressing room and each consultation room.
- An insurance or claims billing, so cash-and-insurance reconciliation against dispensing is out of scope.
- A program or donor source flag on stock — KEMSA and program commodities cannot be separately accounted on the same shelf.
The stock discipline in this post — batches, FEFO, expiry horizons, cycle counts, consumption-driven buying — is largely something we can run, and the weekly rhythm at the end is genuinely achievable on us. What we are not is a clinic system. A facility that needs dispensing tied to a prescription needs a health information system alongside us, rather than instead of the pharmacy stock control.
Anything above that you need, we can build for you
Everything listed above as something we can add describes what ships in the standard product today — it is a starting point, not a limit on what AWRA OpsHub can do for your organisation. Kenya's eTIMS integration and its maintained payroll engine are both in the product because clients needed them and commissioned them; neither appeared by itself, and the same door is open for whatever you just read about. One qualification so this is worth what it claims: a small number of things on this blog we deliberately leave to a specialist rather than build — a statutory ledger we will not sign our name to, a rule that would decide a tax question for you, a clinical or member-funds record that belongs in a regulated system — and where that is true the post says so in those words. Everything else is a scope, a timeline and a price.
The operational work, which is what most commissions actually are
An extra approval stage in a chain that does not match the standard one, a custom field set on employees or assets that only your sector needs, an expiry that has to block an order rather than send an email, a report your board asks for in a shape nothing produces, or a scanner or weighbridge feeding the goods-in door. These are the commissions we are asked for most often and the smallest ones we quote — and unlike a revenue-authority pipeline, none of them waits on a regulator.
The module-shaped additions, which are the ones readers ask for most often
A price list with real discount authority, a customer-facing quotation that expires, a bill of materials or recipe costing, a staff advance that is issued, acquitted and chased, a member or unit ledger, a matching rule that holds a payment. Each of these is a build rather than a setting, and each has been quoted before — a bigger piece of work than a custom field, with a written spec and a date instead of a roadmap slide.
The report, document or pack nothing currently produces
The board pack in the shape your board actually asks for, a donor or funder layout, an invoice or receipt template carrying what your regulator or your customer expects, a dataset the report builder cannot reach yet. Usually the fastest thing on this list to deliver, because the data is already in the system.
Systems, rails and hardware you already run
The accounting package, CRM, online store, core banking or custom database you intend to keep — connected through our API so a fact is entered once and appears everywhere it is needed. Plus the physical edge: a scanner, a scale, a weighbridge or a till peripheral feeding the door it belongs to.
How it works: you describe the requirement, we return a written scope, timeline and cost, and once agreed it is built into your environment and maintained as part of the product. Nothing here waits on a regulator or a published specification, which is why operational builds are the ones we quote fastest. Tell us the requirement that would otherwise rule us out — that is a better first conversation than a demo.
Tell us what your operation needsRun the pharmacy on batches, not vibes
Batch-and-expiry stock, FEFO issuing, enforced quarantine, blind cycle counts and consumption-triggered purchasing. There is no patient or dispensing record — the note above draws the line precisely.
See AWRA for clinicsFrequently asked questions
We are a small clinic with one pharmacy shelf. Is this overkill?
Scale the rhythm, not the principles: batch tracking and FEFO matter at any size because expiry losses and stockouts hurt small facilities proportionally more. A small clinic's version is the weekly hour and a phone — not a stores department.
How does this work with NHIF/SHA and insurance billing?
The inventory side is insurer-agnostic: dispensing decrements stock and creates the billable line. Reconciliation then runs both ways — everything dispensed is billed to someone (cash, insurer, waiver), and everything billed was dispensed. Claim submission itself lives in your billing workflow.
What about donated drugs and program stock (government, NGO programs)?
Track program stock in the same system but flagged by source, with its own reports — program drugs dispensed to non-program patients (and vice versa) is a finding for both you and the program. Same shelves, separate accountability.
Our pharmacist resists "extra data entry" at dispensing. Any advice?
Make the compliant path the fast path: barcode or quick-pick dispensing takes seconds and replaces the manual bin card they currently maintain. The pitch is subtraction — one entry instead of two — not addition. If it is genuinely slower than the queue allows, fix the workflow before blaming the pharmacist.