Inventory & costing¶
What you hold, what it is worth, where it sits, and how its cost is worked out, plus a first slice of manufacturing.
Item master (/item-master)¶
The catalogue of things you buy, hold, make and sell. Register an item with its SKU, name, base unit of measure, alternate units and their conversion factors (a case is twelve eaches), whether it is lot- or serial-tracked, and its costing method (standard, average or FIFO). Convert quantities between an item's units.
Permissions: item:read, item:manage. Posts nothing (master data).
Inventory (/inventory)¶
Holds stock on hand: one weighted-average quantity and value per item, reconciling to one inventory-control account. Movements are:
| Movement | Effect | Posts |
|---|---|---|
| Receive | Records stock arriving | Nothing (value recorded) |
| Issue | Stock leaving (a sale, a production draw) | Dr Cost of goods sold, Cr Inventory control |
| Adjust | Shrinkage or gain | Dr/Cr Inventory adjustment ↔ Inventory control |
Valuation is weighted-average: one value per item, so the cost of an issue is not something a caller can set, which matters, because "anyone who could name the issue cost could make gross profit say anything."
Permissions: inventory:read, inventory:operate, inventory:manage, inventory:adjust.
Warehousing¶
Stock by location. Define locations and bins, hold stock per (item, location), transfer between locations (dispatch → in-transit → receive), and run stock counts.
- Warehousing is a quantity overlay: value stays in inventory; the sum of location quantities equals the item's stock on hand.
- Transfers post nothing: a transfer changes where stock is, not how much value there is. In-transit is modelled as a real location.
- A count is the only warehousing action that posts: a variance goes through inventory's adjust (Dr/Cr inventory adjustment ↔ inventory control), with the location attached as a dimension.
Capability warehousing.
Costing (/costing)¶
How the cost of stock is set and kept accurate.
- Standard costing: hold stock at a planned figure. Set and supersede an effective-dated standard cost per item; costing drives inventory's valuation rather than duplicating it. A standard cost is superseded, never edited, so a historic receipt re-posts at the standard that was in force then.
- Purchase-price variance (PPV): lets a differing invoice be absorbed to a variance account instead of being refused by the three-way match, within an absorb policy (a large gap is still refused).
- Landed cost: freight, duty and insurance land in the cost of the goods they belong to, apportioned so the amounts sum exactly.
- Revaluation: when the standard changes, on-hand stock is revalued.
What it posts:
| Event | Debit | Credit |
|---|---|---|
| PPV (with GRNI) | Purchase-price variance | GRNI (or mirrored, if favourable) |
| Landed cost applied | Inventory control | Landed-cost clearing |
| Revaluation | Inventory control ↔ Revaluation variance (either direction) |
Permissions: costing:read, costing:manage, costing:revalue.
Manufacturing (/manufacturing)¶
A first slice. Define a bill of materials (a finished good, its standard unit cost, and the components and per-unit quantities), plan a production order for a quantity (which explodes the components), release it, and complete it (supply the actual input cost; it reports the variance against standard).
- Lifecycle:
PLANNED → RELEASED → COMPLETED. - Standard-cost variance = actual input cost − (order quantity × BOM standard unit cost).
Not yet built: manufacturing does not post
In this first slice the variance is reported, not posted. Work-in-progress and variance journals, routings and work centres, MRP, and scrap / by-products are all deferred. Treat manufacturing output as reporting until ledger posting lands.
Permissions: manufacturing:read, manufacturing:manage, manufacturing:complete.