Browse docs
Docs / Pharmacy Operations

Batch Tracking and Expiry Control

Manage pharmacy stock safely with batch visibility, FEFO selling, and expired stock removal.

On this page

Batch Tracking and Expiry Control

Pharmacy mode depends on batch-based and expiry-based inventory control. Quantity alone is not enough.

What each stock unit should carry

Every sellable pharmacy stock unit should be understood through:

  • product
  • branch
  • batch number
  • manufactured date
  • expiry date
  • available quantity

Purchase requirements

Pharmacy purchases should include:

  • supplier
  • product
  • quantity
  • batch number
  • manufactured date
  • expiry date

This supports legal traceability, stock rotation, and recall readiness.

Opening stock rule

On the Product Create page:

  • if opening stock is 0, batch details stay hidden
  • if opening stock is greater than 0, batch number, manufactured date, and expiry date become required

FEFO selling

When multiple valid batches exist, the system should prefer the batch that expires sooner first.

This is the FEFO method:

First Expiry, First Out

Expired stock handling

Expired products must not be sold.

Recommended system behavior:

  1. staff tries to add a medicine
  2. system detects expired batch quantity
  3. sale from the expired batch is blocked
  4. a warning or modal is shown
  5. staff confirms cleanup if needed
  6. the system creates an expiry-related stock adjustment
  7. expired quantity is removed from sellable stock

Dashboard and page responsibility

Best practice:

  • dashboard = operational awareness
  • stock pages = detailed inventory control
  • billing = fast but controlled selling

Dashboard alerts should prominently show:

  • expiring soon
  • expired stock
  • low stock
Support

Need more help?

If the guides do not solve your issue, collect the main details and contact support.