Inventory
Inventory keeps a running count of the materials you hold, and where they sit — built from a plain movement ledger, so every change in stock is a line you can read.
Stock is never a number you type. It is the sum of every movement for an item at a location: what came in, minus what went out. That means the Stock tab always reconciles with its own history, and there is nothing to keep in sync by hand.
Three tabs
On-hand quantity per item and location, with a unit. Only non-zero positions show; negatives are flagged in red.
The full ledger, newest first — every receipt, issue, transfer and adjustment, with date, item, location and comment.
Your warehouses, yards or site stores. Reorder them, mark ones you no longer use inactive.
Movement types
Every line in the ledger is one of four kinds. The type decides the sign applied to the quantity.
| Type | Effect on stock | Used for |
|---|---|---|
| Receive | Adds (+) | Goods arriving — usually from a purchase, or entered by hand. |
| Issue | Removes (−) | Materials used up or sent out, optionally against a project. |
| Adjust | Signed (+/−) | Stocktake corrections and write-offs — you enter the exact delta. |
| Transfer | Moves between two locations | An internal move; recorded as a linked out/in pair, shown as one row. |
What you can stock
- Catalog materials — pick a material from your Purchases catalog; variant products are stocked per offer, so each size or colour counts on its own.
- Free-text items — type a name and unit for a one-off you have not catalogued.
- Bundles are not stocked — kit-style bundle products can't be received; stock only their component materials.
Where it fits
- Purchases feed stock — mark an itemised purchase received and each line lands as a movement.
- Projects receive issues — tag an issue to a project (and subobject) to show where materials went.
- The dashboard surfaces total stock value and warns when any position has gone negative.