The warehouse manager asks which batch to ship first. Purchasing asks how much is really left before ordering from the supplier. Finance asks where a movement came from and which bill it reached. When one system answers all three, daily decisions on buying, issuing and invoicing improve.
This article is for Saudi healthcare organisations and distributors of medical supplies or pharmaceuticals that want an ERP for the back office: finance, purchasing and traceable inventory. Clinical systems can remain, and any interface with them needs a scoped, approved design. Start with the Odoo solution from ToDoOps, then continue with the sector detail here.
Where does Odoo help healthcare administration?
The focus here is finance, purchasing and inventory. Care delivery, diagnosis and prescriptions remain in their specialist systems. If data exchange with those systems or a regulatory platform is required, we define the interface, access roles and testing with the responsible team.
For context, GASTAT Healthcare Establishments and Workforce Statistics 2024 reports 516 hospitals in Saudi Arabia, and 5,779 primary healthcare centres and medical complexes (that second number is a combined figure, not hospitals). These national totals cover different healthcare bodies in 2024. The purchasing and inventory workflow varies with the type of organisation.
How do batches and expiry dates work?
According to Odoo 19 documentation, lots differentiate what was received, stored and shipped, once Lots and Serial Numbers and tracking by lots are enabled. Expiry tracking is enabled and product and lot dates are reviewed. The removal strategy is configured on the location or product category; a forced category strategy takes priority if the two differ.
For this to work well, lot dates should be entered at receipt from the supplier’s actual packaging. Do not assume the default receipt-plus-days value is the manufacturer’s real expiry.
FEFO uses the earliest removal date, which is not necessarily the nearest expiry if removal settings differ. An expiration alert does not prove an automatic shipment block, quarantine or regulatory traceability interface. Blocked or quarantine locations help only if configured and excluded from reservations; not all physical stock is automatically available to sell. Your responsible team defines the release procedure within the approved workflow.
A hypothetical example: how FEFO reserves batches
The numbers below are fictional, there to show the mechanism. They are not a patient case, an observed outcome or a guaranteed waste-reduction percentage. Take identical eligible medical-supply units in two lots, with no other reservations, movements or constraints, both acceptable for the agreed use and delivery at that time:
- Lot A: 30 units, with the sooner removal date.
- Lot B: 70 units, with the later removal date.
- Confirmed request: 50 units.
FEFO reserves 30 from Lot A and 20 from Lot B, leaving 50 in Lot B after a validated delivery. Before validation, 50 are reserved while physical stock is still 100; allocation is not delivery. After validation, physical stock falls from 100 to 50.
The calculation assumes all 100 units are available for reservation and approved for issue. If a lot is held in a quarantine location excluded from reservation, recalculate using eligible quantities only. FEFO ordering does not make the medical-use decision.
What does each team gain day to day?
- Warehouse: knows which batch to prepare for each order, instead of relying on memory or a side file.
- Purchasing: sees the real remaining quantity and orders the right amount from the supplier rather than an estimate that runs high or low.
- Finance: traces a stock movement through to the bill, according to the agreed configuration.
To see how an operation moves between sales and inventory in an ERP, try Odoo interactively. It is a guided simulation with fictional data for a sales and inventory path, not a real ERP account and not a full healthcare system. For inventory, purchasing and accounting modules see Odoo apps, and for sector examples see industries. Our inventory guide gives a broader operating checklist for distributors.
What is a sensible first scope?
A clinic, a medical-supplies distributor and a manufacturer have different needs, so decide the administrative role first:
| Area | What to define before implementation |
|---|---|
| Purchasing and inventory | Items, units, lots, expiry dates, locations |
| Issue and release | Who owns the release decision and how it is recorded |
| Clinical record | Stays in its specialist system |
| Data exchange | Only the fields needed, ownership, access, retention |
| Interfaces | Need an approved scope, design and test environment |
Start with one cycle, such as receipt, storage and delivery for one item or category, then widen it. We define the minimum financial reference needed for the transaction and separate access to clinical data.
How do you estimate effort and budget?
Effort depends on the quality of item, packaging and lot data, the number of connected systems, user permissions and migration testing. For a first view, the implementation cost and savings calculator is an optional estimate of implementation cost and estimated savings. It is not a medical stock, production or clinical calculator, and not a prerequisite for contacting us. ToDoOps provides needs analysis, configuration, data work, agreed development, training and support.
FAQ
Does FEFO block shipping of an expired batch? Not by itself. It orders reservations by removal date; blocking and quarantine depend on configuration, permissions and the responsible team’s decision.
Can our clinical system stay? Yes. Whatever must be shared can be defined in an approved, scoped design.
Do we need patient data to start? No. A description of your purchasing and inventory cycle and a sample of non-patient items is enough.
References
- General Authority for Statistics (GASTAT): Healthcare Establishments and Workforce Statistics 2024. An official publication presenting counts of hospitals, primary healthcare centres and medical complexes.
- Odoo 19 documentation: “Lots”, “Expiration dates” and “FEFO”. Official descriptions of lot tracking, expiry configuration and removal ordering.
Next step
The outcome to aim for: inventory known down to the batch, purchasing based on real remaining quantities and a traceable financial trail, with your clinical systems staying where they are. Start by describing one administrative cycle and the systems that will remain. Explore the solution, estimate implementation cost and savings with the calculator, or contact ToDoOps through the form, a call or WhatsApp.
