Inventory
Track stock levels, movements, and adjustments for Products and Materials.
Inventory tracks what you physically have — how much, where it is, how much it cost, and every movement since it entered the system. Only items typed as Product or Material participate in inventory. Every stock movement that affects value posts a journal entry automatically.
The Inventories Page
Navigate to: Operations → Inventories
The Inventories page shows the current stock position for your Product items across the business units you can access. The page provides:
- Stock buckets — Out of stock, Low stock, Reserved, Incoming. Click a bucket to list the items in it.
- Category filter — scopes both the buckets and the table to one category
- Search box — search by item name or SKU
- Filter — a sheet with one facet, Status: In stock | Low stock | Out of stock
- Columns — show or hide columns
- Import — load opening balances from a spreadsheet (a posting operation)
- Export — download current stock positions
- Clear opening balance — remove opening balances that were loaded in error
- Table columns — Name, SKU, Type, Category, Status, On hand
Every quantity on this page is computed by the server; the page never re-derives a figure.
Stock Status Thresholds
| Status | Condition | Badge Color |
|---|---|---|
| In stock | Quantity on hand is above the item's reorder point (or no reorder point is set and quantity > 0) | Green |
| Low stock | Quantity on hand is at or below the item's reorder point | Amber |
| Out of stock | Quantity on hand is zero or negative | Red |
Reorder points are held per item; an item with no reorder point set cannot raise a low-stock alert and shows "In stock" as long as any quantity is on hand.
Inventory Detail — The Tabs
Click any item row to open the item's stock page. Everyone sees Overview and Movement; administrators also see Analytics and Adjustments. A location selector beside the tabs scopes the whole page to All locations or one business unit.
Tab 1 — Overview
The Overview tab shows a live snapshot of the stock position as metric cards. Stock on Hand, Reserved and Available always show; the activity cards appear only when the item has that kind of activity.
| Card | What It Shows | Notes |
|---|---|---|
| Stock on Hand | Total physical quantity currently in the system across the selected location(s) | Includes reserved stock. This is the gross position before reservations are removed. |
| Reserved | Quantity committed to open sales orders but not yet dispatched | Reserved stock is subtracted to give Available. |
| Available | Stock on Hand minus Reserved — the quantity free to allocate to new orders | The number that matters for promising stock. |
| Incoming | Quantity on open purchase orders expected to arrive | Does not affect the current balance — informational only. |
| Opening Balance | Quantity loaded as opening balance | Shown when an opening balance exists. |
| Purchased | Quantity received, net of purchase returns | Shown when non-zero. |
| Sold | Quantity dispatched, net of sales returns | Shown when non-zero. |
| Produced / Consumed | Production output and production input quantities | Shown when the item takes part in production. |
| Operational Use / Wastage / Write-off | Quantities removed by those adjustment types | Shown when non-zero. |
| Stock Adj + / Stock Adj − | Quantity adjustments up and down | Shown when non-zero. |
| Transfer In / Transfer Out | Quantities moved in and out by completed transfers | Shown when non-zero. |
| Inventory Value | Stock on Hand multiplied by the item's average cost, with the average cost shown beneath | Highlighted card. This is the item's contribution to the Inventory account on the Balance Sheet. |
Below the cards, Inventory by Location lists one row per business unit (On Hand, Reserved, Available, the activity columns that are non-zero, and Value). See Stock Overview for the full column reference.
Tab 2 — Movement
The Movement tab shows every stock transaction in chronological order — a complete audit trail. A Values chip adds the value columns, an Audit chip (shown when drafts or voided rows exist) reveals them, and a Filter chip sets a From / To date range.
| Column | What It Shows |
|---|---|
| Date | The transaction date of the movement |
| Doc No | The source document number — click to open the document |
| Type | The document type (Invoice, Delivery Note, Goods Received, Sales receipt …) or the adjustment type (Opening Balance, Quantity Adjustment, Wastage, Operational Use, Write-off, Production Input, Production Output, Transfer In, Transfer Out, Transform In, Transform Out …) |
| Party | The customer or vendor on the document, where there is one |
| Center | The business unit where the movement occurred |
| Rate | The unit cost of the movement (Values on) |
| In / Val In | Units received or added, and their value (Values on) |
| Out / Val Out | Units dispatched or removed, and their value (Values on) |
| Balance | Running stock balance after this movement |
| Run Val | Running inventory value after this movement (Values on) |
See Movement History for the full reference.
Tab 3 — Adjustments (administrators)
The Adjustments tab holds the action tiles — Opening Balance, Qty Adjustment, Wastage, Operational Use, Write-off, Transform, Recipe Transform — and the Adjustment History table for this item.
Columns: Date, Type badge, Center, Qty, Rate, Note, User.
Stock Adjustments
Stock adjustments are the mechanism for correcting inventory records or recording events that no other document covers. Each tile has a specific purpose and a specific journal entry.
Navigate to: Operations → Inventories → select the item → Adjustments tab → choose a tile
1. Opening Balance
Use this to bring stock into the system when migrating from a previous platform, or when starting inventory tracking for an item that has been in use.
| Field | Required? | Details |
|---|---|---|
| Center | Yes | One row per business unit where this stock physically sits — add as many rows as you have locations. |
| Quantity | Yes | The physical count of units being brought in at that unit. Must be positive. |
| Rate/Cost | Yes | The per-unit cost at which the stock is valued. This becomes the initial average cost for the item. |
| Date | No | The effective date of the opening balance (defaults to today). Should match the migration or go-live date. |
| Note | No | Free-text explanation. Recommended: note the source system or count reference. |
The journal posted is:
| Account | Debit | Credit | Description |
|---|---|---|---|
| Inventory Account (item mapping) | Qty × Rate | — | Stock added to the balance sheet at cost |
| Opening balance account | — | Qty × Rate | The business's opening-balance equity account |
2. Quantity Adjustment
Use this to correct discrepancies discovered during a stock count, or to record unplanned additions or removals where the cause is known.
| Field | Required? | Details |
|---|---|---|
| Quantity (+/−) | Yes | Enter a positive number to increase stock, or a negative number to decrease. The form shows the resulting balance as you type. Zero is not accepted. |
| Rate/Cost per unit | No | The cost per unit for the adjustment; the item's cost is used when blank. |
| Center | No | The business unit where the adjustment applies. A toggle lets you enter a quantity per business unit instead. |
| Date | No | Defaults to today. |
| Note | No | Reason for the adjustment. Recommended for audit purposes. |
The journal posted (for an increase) is:
| Account | Debit | Credit | Description |
|---|---|---|---|
| Inventory Account (item mapping) | Qty × Rate | — | Stock increase recorded at cost |
| Opening balance account | — | Qty × Rate | The same offset account as opening balances |
For a decrease, the debit and credit sides are reversed.
3. Wastage
Use this to record stock lost due to physical damage, spoilage, or natural deterioration.
| Field | Required? | Details |
|---|---|---|
| Quantity | Yes | The number of units wasted. Must be a positive number — the system treats this as a decrease and refuses more than the stock at that unit. |
| Expense Account | Yes | The P&L account that absorbs the cost of the waste (e.g., Wastage Expense, Cost of Spoilage). Expense accounts only. |
| Center | Yes | The business unit where the wastage occurred. |
| Date | No | Defaults to today. |
| Note | No | Cause of wastage — batch number, expiry date, incident description. |
These three types differ in intent and the expense account they post to — but the journal entry pattern is identical: inventory decreases at the item's cost, the chosen expense account increases. The distinction is for reporting clarity, not accounting logic.
4. Operational Use
Use this to record internal consumption of stock that is not part of a production batch — for example, packaging materials used in the office, or goods used for demonstrations.
| Field | Required? | Details |
|---|---|---|
| Quantity | Yes | Units consumed internally. Must be positive. |
| Expense Account | Yes | The expense account that absorbs the cost (e.g., Operational Supplies Expense). |
| Center | Yes | The business unit from which the stock is consumed. |
| Date | No | Defaults to today. |
| Note | No | What the stock was used for. |
5. Write-off
Use this to remove stock from the books entirely — items that are irrecoverable, stolen, or otherwise permanently removed without value.
| Field | Required? | Details |
|---|---|---|
| Quantity | Yes | Units being written off. Must be positive. |
| Expense Account | Yes | The expense account that absorbs the written-off cost (e.g., Inventory Write-off Expense). |
| Center | Yes | The business unit where the write-off originates. |
| Date | No | Defaults to today. |
| Note | No | Reason and authorization reference. |
6. Transform and Recipe Transform
Transform converts one item into another at the same business unit; Recipe Transform combines several input items into one or more outputs. Both are unit conversions with no labour or overhead. See Stock Transforms for the full field reference and cost calculation.
Stock Transfer
A stock transfer moves inventory from one business unit to another without changing the total stock in the system. No stock is created or destroyed, and no journal is posted — the quantity simply moves once the transfer is approved.
Navigate to: Operations → Business Units → open the sending unit → Stock tab → Transfers → Transfer Stock
Transfer Fields
| Field | Required? | Details |
|---|---|---|
| Mode | Yes | Single Destination, or Multiple Destinations with their own item lines. |
| Transfer Date | Yes | The date the physical transfer occurs (defaults to today). |
| Notes | No | Reason for the transfer or routing instructions. |
| Destination | Yes | The business unit receiving the stock. The sending unit is the one you opened. |
| Items to Transfer | Yes | One line per item with the quantity; only items stocked at the sending unit are offered, with the available quantity shown. |
What Happens
The transfer is created as Pending. When the receiving unit approves it (Receiving tab → Approve), it becomes Completed and the quantity leaves the source and arrives at the destination — that is the only point at which stock moves. A pending transfer can be cancelled; a completed one that is deleted is marked Cancelled so its stock effect is reversed.
An item carries one average cost across the business. A transfer changes where the quantity sits, not the item's cost, so the Value column of Inventory by Location is always quantity × that one cost.
Stock Transform
A stock transform converts one item into another — for example, breaking a case of 12 units into 12 individual units, or repackaging bulk material into retail packs. It is distinct from Production because there is no labour or overhead — it is purely a unit conversion.
Transform Fields
| Field | Required? | Details |
|---|---|---|
| Center | Yes | The business unit where both the source stock is held and the output will be received. |
| Source Quantity | Yes | Number of units of this item to consume in the conversion. Cannot exceed the stock available. |
| Target Item | Yes | The item that results from the conversion. Must already exist with an inventory account. |
| Target Quantity | Yes | Number of output units produced from the source quantity. |
| Additional Cost | No | Extra conversion cost, with the expense account it comes from. |
| Date | No | Defaults to today. |
| Note | No | Reason or description of the conversion. |
The target item's cost per unit is the total cost consumed (source quantity × source average cost, plus any additional cost) divided by the target quantity. See Stock Transforms for the journal.
Weighted Average Cost — How It Works
By default an item is valued at Weighted Average cost (the Valuation Method on the item form also offers FIFO, LIFO and Latest Purchase). The average cost is recalculated every time stock is received at a new price (purchased, adjusted upward, or produced).
The formula is:
New average cost = (Existing Stock Value + Incoming Stock Value) divided by (Existing Quantity + Incoming Quantity)
When stock is sold or consumed, it leaves at the average cost at the time of the transaction — not at the original purchase price of that specific batch. This means that cost fluctuations are smoothed over time, and COGS reflects the blended cost of all stock held. All of this is calculated on the server; no screen re-derives it.