The Material Flow
This is the single most important page in the Logistics section. Read it before anything else — every other page in Logistics makes more sense once this model is in your head.
The material flow is the end-to-end journey a fabric, trim, or component takes through your factory. From the moment a supplier hands it over at your receiving dock, through every warehouse, every operation, every consumption, until it leaves as part of a finished garment in a carton. GarmentFlow tracks every step.
The journey, told as a story
A roll of fabric arrives at your factory:
-
Inbound. Your receiving clerk opens the Logistics App, creates a Purchase Receipt against the matching Purchase Order. The fabric posts to your Raw Material warehouse. ERPNext's Stock Ledger now shows it sitting there.
-
Production starts. A few days later, a Production Batch is created against a Production Order and moved to start. The moment it starts, GarmentFlow's
_create_material_request()runs. A Material Request of type Material Transfer is auto-created — one per target warehouse, sourcing from the Raw Material warehouse, with quantities pulled from the batch's materials table. The MR carries aproduction_batchfield linking it back to its source. -
Material preparation. The warehouse team sees the MR in the Prep view of the app. They gather the materials. They post a Stock Entry (Material Transfer) — the fabric moves from Raw Material to the target Production Unit's warehouse (or WIP). The Stock Ledger records the movement.
-
Consumption. The Production Batch starts running operations. A supervisor posts a Transfer or End entry in the Operation Ledger with consumption details (Recipe Based or Manual). GarmentFlow creates a Stock Entry that discounts the consumed quantities from the source warehouse. The Stock Ledger records the consumption.
-
Reservation, throughout. During all of this, Stock Reservation Entries keep allocated materials reserved against the Production Batch so other batches can't quietly consume them. The Production Batch's Materials section shows reserved, delivered, transferred, and consumed quantities in real time.
-
Finished goods. When the Batch completes, finished garments post to your Finished Goods warehouse. The cycle is closed; the fabric has become product.
That story uses six ERPNext concepts (Item, Material Request, Stock Entry, Stock Ledger, Stock Reservation Entry, Purchase Receipt) and three GarmentFlow concepts (Production Batch, Production Order, Operation Ledger Entry). Every one of them is documented in its own page.
Image: A flow diagram of the journey — Supplier → PR → Raw Material warehouse → MR → Stock Entry → WIP warehouse → OLE consumption → Finished Goods, with the GarmentFlow trigger points marked.
The three things GarmentFlow does on top of ERPNext
You could run a garment factory with vanilla ERPNext. You'd manually create a Material Request every time a batch started. You'd manually post a Stock Entry every time consumption happened. You'd manually reserve stock per batch. It would work, and it would be painful.
GarmentFlow adds three orchestration layers on top:
- Auto-MR on Batch start. Documented on From production to Material Request.
- OLE-driven Stock Entries. Documented on Material transfer and Stock Entries.
- Stock Reservation against Production Batch. Documented on Stock reservation on Production Batch.
Together, those three layers turn the manual ERPNext flow into something a warehouse team can run from a tablet.
How to think about it
ERPNext owns the truth of where stock is. GarmentFlow owns the reasons why it moves. The two work together, with the Stock Ledger as the single source of truth that anyone can audit.
What to do next
Read the three pages below in order, then move on to Procurement for the inbound side.