AWRA OpsHub Search

Short-Dated Is Not Expired, and Only One of Them Is Still an Asset

A batch with four months left is stock you can still sell if somebody moves it. A batch with four days left is a write-off that has not been declared. Both count as one unit, both sit in the same valuation, and the only thing separating them is a date nobody is reporting on.

Pharmacy & Pharmaceutical Distribution Washingtone Aura 11 min read

A pharmacy counts eleven boxes of a fast-moving antibiotic and writes eleven in the column. The system agrees, the shelf agrees, the valuation agrees. Everybody is right and the number is still misleading, because four of those boxes expire in nine days and seven of them expire in fourteen months. Those are not eleven of the same thing. They are seven units of stock and four units of a loss that has not been declared yet.

This is the first post in a category about pharmacy operations, and it starts here because everything else in the category depends on it. Expiry is not a warning that fires at the end. It is a property that changes what a unit is for months beforehand, and a stock system that treats it as a flag rather than as a dimension will let you carry a write-off on your balance sheet and call it inventory.

Three different quantities wearing the same number

Take any line in a pharmacy and the on-hand figure is really three quantities added together, and only the first of them is unambiguously an asset.

What it is What you can do with it What it is worth
Stock with a long horizon Sell it in the ordinary course, at the ordinary price, through the ordinary channel. Its cost. This is the part everybody means when they say inventory.
Short-dated stock Sell it, but only if you do something — move it to a busier branch, discount it, push it to a customer who turns it over faster. It costs effort and usually margin. Somewhere between its cost and nothing, and which end depends on whether anybody acts this month.
Expired stock Nothing. It is waiting to be counted, documented and destroyed, and in most jurisdictions that destruction is itself a procedure with paperwork. Nothing. Worse than nothing, if disposal has a cost.

The second row is the interesting one, and it is the row that has no home in most systems. Expired stock is at least visible — somebody eventually finds it. Short-dated stock is invisible precisely because it is still good. It counts, it values, it satisfies a stock check, and it quietly walks toward the third row at a rate nobody is measuring.

Expired stock is a loss you have taken. Short-dated stock is a loss you can still avoid, and it is the only one of the two that is worth a report.

The arithmetic, with round numbers

A worked example rather than a measurement — the figures below are round numbers chosen so you can check them, not an observation of any real pharmacy. Say you hold 120,000 shillings at cost across one category, and you split it by how long each batch has left.

Time remaining Value at cost Share of the category
0–30 days 14,000 11.7%
31–60 days 20,000 16.7%
61–180 days 38,000 31.7%
Over 180 days 48,000 40.0%

The first two bands total 34,000, which is 28.3% of the category. That is the number worth putting in front of somebody, and note what it is not: it is not a write-off. Nothing in those two bands has expired. It is the portion of the category whose outcome is still undecided and will be decided by whether anybody does something in the next eight weeks.

Run the same split monthly and the useful signal is not the level, it is the direction. A pharmacy whose 0–60 day share is flat at 28% is turning short-dated stock over about as fast as it creates it. One whose share climbs from 18 to 24 to 31 over a quarter is accumulating, and the accumulation will surface as a write-off two quarters later — by which point the report that could have prevented it is describing history.

The question that separates a stock system from a spreadsheet

Ask any vendor to show you the value of stock expiring in the next sixty days, by category, as of today. Not a list of expiring batches — a valued figure you could put in a board pack. If producing it involves exporting batches and summing them somewhere else, then expiry is a field in that product rather than a dimension of it, and every decision above is being made by hand.

What is built here, stated exactly

We use our own product as the worked example in every post in this corpus, because a piece about expiry that only assessed other vendors would be worth nothing.

  • A batch is a real record, not a text field. Batch and expiry are captured at receipt and carried on the stock position, so a single item can hold several batches at several dates in several locations and each is countable on its own.
  • Expiry horizon reporting exists. Stock can be reported by how long it has left rather than only as a total, which is the report the section above is describing.
  • Expiry alerting is a real background job, so short-dated stock can reach somebody without anybody remembering to look.
  • Batches can be held. A batch can sit at a quarantine location and be released deliberately rather than by convention — which is what you want the moment a recall notice arrives or a delivery looks wrong.
  • FEFO is proposed at the point of issue, which is the subject of the next post in this category and is the only mechanism that stops the arithmetic above being undone at the counter.

And what is not, which matters more

Three absences, and none of them is hidden further down a page somewhere.

  • Nothing writes stock off by itself. An expired batch does not disappear, does not provision, and does not post a journal entry. It sits there until a person makes an adjustment with a reason attached. That is a deliberate design — an automatic write-off is a system deciding something a pharmacist should decide — but it means the report tells you and you act, rather than the system acting.
  • There is no supplier-return workflow. Whether a short-dated batch can go back to the distributor is a commercial term you negotiated, and the product has no process modelling it. If your best route out of the 0–60 day band is returning stock, that is administration you run outside this.
  • The reorder point is derived nightly, and that cuts both ways. A scheduled job recomputes it from thirty days of recorded usage, a lead time and a safety buffer, then writes the result over whatever was there. Which is useful when the usage signal reflects how you actually issue stock, and a problem when it does not — the third post in this category is entirely about that, because it is the single most consequential setting in a pharmacy and almost nobody knows it is being overwritten.

Scope on expiry, stated plainly

Running in the product today

  • Batch and expiry captured at receipt, held as a first-class record rather than a note on a movement.
  • Stock reported by expiry horizon, valued, so short-dated stock can be sized rather than listed.
  • Expiry alerting as a scheduled job, so the report reaches a person without anybody remembering to run it.
  • Quarantine holds, so a batch can be frozen and released as a deliberate act.
  • FEFO proposed at issue, so the sequence is suggested at the moment it is decided.

Absences — on the roadmap, and commissionable now

  • No automatic write-off, provision or expiry-driven journal posting. An expired batch waits for a person and an adjustment with a reason.
  • No returns-to-supplier process, so recovering value from short-dated stock through your distributor is administration you run outside the system.
  • No par levels per consumption point. The reorder point is one number for the item everywhere it is held — there is no separate level for a dispensary, a ward store and a back room, and the nightly recalculation does not create one.

What we would decline, and would rather say now

  • We will not decide that stock should be destroyed. The system will show you a batch is expired and hold it out of issue. Whether it is quarantined, returned, destroyed or reported to a regulator is a pharmacist's judgement with a pharmacist's licence behind it, and software that made that call would be making it without the licence.
  • We will not represent a valuation as a provision. The horizon report values stock at cost. It is not an impairment, it is not an accounting estimate, and presenting it to an auditor as one would be your finance team's decision rather than a number we produced for that purpose.

The three absences are absences rather than positions, and each is commissionable now on a written specification, a timeline and a price agreed before any money moves. The evidence that this is a real offer rather than a sales line is Kenya, where the eTIMS transmission and the maintained statutory payroll engine both exist because clients needed them and paid for them. We will not print a date on a blog post.

The split matters when you are shortlisting. The measurement side is genuinely strong and the action side is yours — the product will tell you, accurately and on a schedule, that 28% of a category is inside sixty days. What happens next is a person deciding, and no report changes that.

Where to start, if this is the first time anybody has looked

  1. Split one category, once

    Take your largest category by value and split it into the four bands above. It is a morning's work by hand and you only ever have to do it manually once — the point is to see the shape before you decide whether it is worth automating.

  2. Run it again the following month

    The level tells you where you are. The direction tells you whether it is getting worse, and only the second one supports a decision. One reading is a fact; two readings are a trend.

  3. Fix the sequence before the reporting

    If issues are not following expiry order, the bands will keep refilling no matter how good the report is. Which is the next post in this category, and the reason it comes second rather than fifth.

None of this is exotic. It is one dimension applied to a number you already have, and the reason it goes unmeasured is not difficulty — it is that the figure looks fine right up until the month it does not.

Bring one category and one expiry report

We will split it into bands with you and you can see whether the shape is worth acting on. If the answer is that your current system already tells you this, we will say so.

Talk to us about pharmacy operations

Help Center

Need a quick answer while you read?

Run inventory, procurement, assets, sales, and field work with approved AWRA guidance for setup, migration, integrations, security, pricing, and support.

Search all approved AWRA public help articles.

Open Help Center