Home
Back to docs

Inventory

Stock is never edited directly — it is derived from movements; and reserved is not the same as gone.

Inventory tracks stock across warehouses, along with what it cost.

These are "items", not "products"

What this module holds is called an item. "Product" is deliberately reserved for the store. An item may or may not be linked to a store product — raw materials and consumables are never sold but still have to be counted.

Stock is the result of movements

The stock figure is not an editable field; it is the sum of movements. Receipts, issues, transfers, count corrections — each is a row in a ledger that is only ever appended to.

No movement is deleted or edited. Correcting a mistake is a new movement. That is why any number here can always be explained.

Reserved means "set aside", not "gone"

When an order is placed, stock is reserved: still physically present, but no longer available to sell. Shipping the order commits the reservation and stock actually decreases; cancelling releases it.

This is why "on hand" and "available" are two different numbers, and why that difference is not an error.

Cost is held in layers

Every receipt creates its own cost layer. When stock leaves, layers are consumed in the order configured for the site (first-in-first-out, or the reverse).

The consequence is that the value of a warehouse does not depend on the most recent purchase price, but on which layers were actually consumed.

Two people can open one page and see different numbers

A user's access can be limited to particular warehouses. Every list, every report and every CSV export then covers only those.

So a disagreement between two people's figures is not necessarily a fault. These grants are set on the Warehouses page.

WarehousesA warehouse with any movement history cannot be deleted even when empty, and a user's warehouse access decides what figures they see across the whole module.ItemsAn item not linked to a store product is untouched when that product sells — and a count correction is a new movement, not an edited figure.Purchase OrdersStock rises on receipt rather than when the order is raised, and each line's unit price becomes the cost layer that receipt creates.SuppliersSuppliers are deactivated rather than deleted, and an item's default supplier is what makes it eligible for a reorder suggestion.ReorderSuggestions are measured against available stock rather than physical stock, and accepting one creates a draft rather than a real order.ReportsEach report has its own definition — supplier spend counts only fully received orders — so two reports can disagree without either being wrong.Inventory SettingsChanging the costing method never rewrites the past — it only affects how later layers are consumed.
Developed by LogaTech Powered by LogaCore