Sample figures, forms disabled. Recording a movement needs the database connected. The workflow is real; the stock is not.
Available to sell
780 m²
In building
940 m²
Booked
120 m²
Sold, not collected
40 m²
Batches
| Batch | Order | Stock type | On hand | Landed cost / m² |
|---|---|---|---|---|
| B-2401 | PO-9001 | On hand | 940 m² | R 412,50 |
| B-2402 | PO-9002 | In transit | 500 m² | R 438,20 |
Record a movement
Reserve
Hold stock for a job. Comes straight off what can be sold.
Release
Job cancelled or moved. Puts the stock back on the market.
Dispatch
Stock leaving the building. Must already be invoiced in Xero, and must say which batch.
Receive
Stock arriving against a batch. Unlanded batches stay out of Xero.
History
| Movement | Quantity | Batch | Against | Date |
|---|---|---|---|---|
| Dispatched Collected by client | 60 m² | B-2401 | — | 2026/08/19 |
| Invoiced Xero INV-1401 | 100 m² | — | Marlow Interiors | 2026/08/18 |
| Booked Install scheduled November | 120 m² | — | Kloof Road renovation | 2026/08/12 |
| Received Container ZOAK-114 | 1 000 m² | B-2401 | — | 2026/07/30 |
History is append-only. A correction is recorded as a new entry, never by editing what happened — so the record survives the fixing of it.
