Manufacturing that reaches the general ledger.
Most small manufacturers run production in a spreadsheet and discover their real cost per unit at year end, if at all. This module links the bill of materials to the work order to the stock movement to the journal, so the cost of a finished item is the actual cost of the materials and the operations that made it.
| Order | Item | Qty | Stage | Complete |
|---|---|---|---|---|
| WO-2026-0188 | Hydraulic manifold, type 4 | 50 | Assembly | 62% |
| WO-2026-0189 | Brake caliper 44mm | 200 | Awaiting components | 0% |
| WO-2026-0190 | Seal kit, type 31 | 500 | Machining | 31% |
| WO-2026-0191 | Filter element 22 | 1,000 | Planned | 0% |
| WO-2026-0187 | Hydraulic manifold, type 2 | 40 | Complete | 100% |
The parts you will use daily.
Multi-level BOM
Components that are themselves manufactured, exploded automatically. Phantom and kit BOMs, default and alternative versions per item.
Work orders
Raised from a sales order, a production plan or by hand. Material reservation, consumption and finished goods receipt, with WIP accounted properly.
Routings and job cards
Ordered operations on work centres, with planned and actual time logged per job card and operator.
Capacity planning
Work centre capacity, calendars and holidays, so a plan that cannot physically be made shows up as a plan that cannot be made.
Subcontracting
Issue components to a subcontractor, track what is out there, and receive the finished item back with the service charge in its cost.
Quality inspection
Parameter readings against a specification on receipt, in process and on output, with accept and reject blocking the stock movement.
| Capability | Detail |
|---|---|
| BOM depth | Unlimited levels, with circular reference detection |
| Alternatives | Multiple BOMs per item, one default, selectable per work order |
| Operations | Sequenced, with setup and run time, work centre and cost per hour |
| Job cards | Start, pause and finish per operation, with the operator recorded |
| Overproduction | A tolerance you set, beyond which the work order refuses to receive |
| Reports | Production analysis, consumption against BOM, cost per run, capacity use |
Work in progress is a real account, not a guess.
When a work order starts, materials move out of stock and into work in progress at their actual cost. Operations add labour and overhead at the work centre rate. When the finished item is received, work in progress clears and finished goods is debited with the full accumulated cost. Your balance sheet shows what is genuinely on the shop floor, and your margin per product is computed rather than estimated.
- Production plan from sales orders or a forecast, exploding the BOM to material and capacity needs
- Backflush or explicit consumption, chosen per BOM
- Scrap percentages per component, so the plan orders what you will actually use
- Cost rollup from the BOM, comparing standard cost against the actual cost of each run
About this module.
Is this MRP or just work orders?
Both. Work orders on their own are enough for a job shop. The production plan is the MRP layer: it takes demand from sales orders or a forecast, explodes multi-level bills of materials, nets off free stock and existing orders, and generates the work orders and purchase requests needed, respecting lead times and work centre capacity.
Will manufacturing run on shared hosting?
Light manufacturing, yes. A BOM explosion over a large plan is the heaviest computation in the product, so it runs as a chunked background job rather than in the request. The Module Manager checks your PHP memory and execution limits before it lets you switch the module on, and tells you plainly if your host is not up to it.
Can I track labour cost per operator?
Yes. Job cards record who worked on which operation and for how long. Cost can come from the work centre rate, the operator's own cost rate from the HR module, or both, and it flows into the work in progress account and into the finished item's cost.
What if a component runs out mid-run?
The work order shows short components before it starts, and the production plan raises the purchase request. If it happens mid-run, the work order pauses at the operation rather than consuming stock you do not have, and the shortage appears on the shortage report with the expected receipt date from the purchase order.
What this module talks to.
Nothing here is a separate product with an integration between it and the rest. These four share the same records.
HR and payroll
Attendance, leave, payslips and one balanced payroll journal.
OpenPoint of sale
A till that keeps selling offline and syncs to stock and books.
OpenOnline store
A storefront wired to live stock and your price lists.
OpenReporting and BI
Build any report over any module, then schedule it.
OpenTry it with your own data.
Fourteen days, the complete suite, unlimited users, on your own hosting. No card required.