Container 2 of 3.
Each container gets its own label and sequence, and the last one can be marked as the partial rest container.
Industry product · Built on ERPNext
ERPNext runs purchasing, stock and production well. A GMP site needs more: a release status on every batch, qualified suppliers, potency-adjusted quantities, controlled dispensing and signed approvals. This product adds those controls inside ERPNext, so the batch record lives where the stock does.
In a GMP plant, received material is on hold until QC releases it, and only an approved source may be bought at all. Without those rules in the system, they live on paper, in spreadsheets and in people's memory.
ERPNext already provides batches with expiry dates, BOMs, work orders, pick lists, quality inspections and configurable workflows. These are the GMP controls built on top of them.
The same sequence runs for every batch, and each step leaves its own record.
Supplier approved for the item and its manufacturer or manufacturer chain, with certificates and validity.
Purchase order checked against the approved list. Goods arrive in Quarantine with lot, dates and assay, and every container gets a label.
QC moves the batch to Released with a signed status change. The release label prints automatically.
RA and QP review, then Released. Only a released BOM can be used on a work order.
The work order picks released lots and adjusts quantities for assay. Release creates the product batch.
Staging, weighing room, weigh within tolerance, return the leftover. Each weigh posts the stock movement and prints its label.
One final entry consumes exactly what was weighed, records the yield, and puts the product in Quarantine.
QP moves the finished batch from Quarantine to Released, and its release label prints.
Every quantity in the ledger carries its status, so the balance report shows exactly what is on hold, released or blocked, per batch and per warehouse.
Qualification is held per supplier, item and manufacturer. When a source is blocked, the purchase order is refused at save, with a link to the record that blocks it.
When the selected API lot assays below 100%, the work order raises its quantity so the batch contains the intended amount of active ingredient. A nominated excipient is reduced by the same amount, so the batch weight stays on target.
Batch weight stays at 100 kg. The figures come from the demo run shown below.
The dispensing queue shows every released work order and where each of its materials is: in stores, in staging or in the weighing room. Material moved for one order is reserved for it, so another order cannot take it.
Receipt, release, weighing, intermediate, sample and shipping labels are each numbered and logged. A QR code identifies the container or batch, and dispensing can check it.
The GMP Compliance workspace opens on what needs attention: open work orders, batches waiting for release, lots close to expiry or retest, suppliers waiting for approval and signatures captured.
Screens from the product running on ERPNext v16 with demo data: company, suppliers, manufacturers and batches are fictional.