A warehouse contains ten units. Seven are already promised to confirmed orders. How many can the business safely sell, transfer, or adjust downward?
The physical answer is ten. The operational answer is three. Both are correct because they answer different questions.
On-hand stock describes the recorded physical balance. Available stock describes the portion not already protected for existing demand. Treating those numbers as interchangeable is one of the simplest ways to promise the same unit twice.
On-hand, reserved, and available each describe a different truth
A reservation does not move the product. The seven promised units remain on the shelf, so on-hand remains ten. They are no longer free for unrelated demand, so available falls to three.
A warehouse user can see ten units while the system correctly refuses a new four-unit reduction. The refusal protects the seven units already promised.
Availability is calculated at the warehouse boundary
Available = max(warehouse on-hand − active reservations, 0)
The floor at zero keeps the displayed available quantity understandable if historical data, concurrent activity, or an exceptional reconciliation temporarily creates more reserved quantity than on-hand. It does not make the inconsistency harmless. A negative raw result should still trigger investigation.
In Amber Vertex, warehouse on-hand is the primary operational balance. Product-level aggregate stock summarises quantity across live warehouses. For batch-tracked products, batch balances subdivide the same warehouse quantity. These values must reconcile:
- Product aggregate stock equals the sum of its live warehouse balances
- For a batch-tracked product, live batch quantities equal the warehouse on-hand balance
- Product- and batch-level active reservations are subtracted before new consumption
- Every persisted stock change creates a signed movement with a useful source reference
Some businesses calculate projected stock or available-to-promise using expected receipts, safety stock, or future demand. Those can be useful planning measures, but they should not be labelled current available stock. A purchase order expected next week is not physically on-hand today.
One product, two orders, one remaining decision
Warehouse Bengaluru holds 10 units of a tracked product. Order AV-410 qualifies for a reservation of 4 units. Order AV-414 qualifies for another 3.
If the business confirms a new order for two units, available falls from three to one while on-hand remains ten. If that order is cancelled before invoicing, its reservation is released and available returns to three.
If an invoice posts the four units linked to AV-410, on-hand falls from ten to six and that order’s four-unit reservation is consumed during reconciliation. The remaining three-unit reservation still applies, so available remains three. The physical and promised quantities changed together; the genuinely free quantity did not.
Different inventory events change different quantities
Picking is deliberately absent from the stock-changing rows. In Amber Vertex, order picking verifies reserved demand and records progress; it does not itself deduct inventory. Sales invoice posting performs the stock deduction and reservation reconciliation as one business transaction.
Balances answer what is true now. Movements explain why the balances changed.
Organisation-wide stock cannot answer a warehouse-level promise
A product may have 20 units across the organisation while the warehouse serving today’s order has only three available. Adding all locations together can hide the operational cost or impossibility of moving stock to the required place.
A Bengaluru order for five units cannot safely consume five there. The business may reserve three locally and deliberately source two elsewhere, transfer available stock from Mumbai, change the fulfilment warehouse, or wait for a receipt. Each option is a workflow decision, not permission to ignore the local reservation floor.
A transfer validates available stock at the source. It writes a negative source movement and positive destination movement, leaving organisation-wide aggregate stock unchanged.
On-hand can exist while eligible batch availability is lower
When a product tracks batches, the warehouse balance is subdivided by lot. Reservations can also be allocated at batch level. A new reduction must satisfy both warehouse availability and eligible batch availability.
The sum of live batch quantities should equal the warehouse on-hand quantity for the tracked product.
Promised quantity is protected within the allocated batch as well as at the warehouse total.
Expired batches remain visible but are excluded from sales, reservation, and transfer allocation.
Amber Vertex uses FEFO—first expiry, first out—for eligible batches. Batches with an expiry date are allocated before undated batches; earlier expiry comes first, followed by earlier receipt date. Availability is subtracted before that allocation, so reserved or expired units cannot satisfy new demand.
Expired stock does not disappear. Removing or disposing of it still requires an explicit adjustment, count, or return workflow so the physical balance and movement history remain accountable.
Overselling begins when a promise checks the wrong quantity—or checks too early
- 01Validating against on-hand
A new order sees ten physical units and ignores that seven already belong to qualifying demand.
- 02Checking only the organisation total
Stock exists somewhere, but not necessarily at the fulfilment warehouse or in an eligible batch.
- 03Checking without reserving
Two users both see the same three available units and each promises them before either demand is protected.
- 04Trusting a stale screen
The quantity looked sufficient when the form opened, but another order, invoice, transfer, or adjustment changed it before posting.
- 05Changing stock outside controlled workflows
Direct balance edits bypass reservations, batches, aggregate reconciliation, concurrency, and movement history.
A trustworthy operation validates availability inside the same transaction that records the reservation or movement. If facts changed, it fails cleanly and asks the user to refresh rather than leaving the document and stock state half-updated.
Checks that reveal whether inventory availability can be trusted
Can users see on-hand, reserved, and available separately for each product and warehouse?
Do qualifying orders reserve only their uninvoiced remainder and release it when state or quantity changes?
Do transfers, returns, adjustments, and reversals validate available—not merely on-hand—stock?
Are expired and reserved batches excluded from allocation while remaining visible for audit and correction?
Can every balance change be reconstructed from signed movements and source documents?
Are availability validation, document posting, reservation reconciliation, and movement creation atomic?
Amber Vertex Inventory is a paid add-on inside the Billing workspace—not another workspace to maintain. It adds warehouses, on-hand balances, reservations, movements, receipts, transfers, returns, counts, batches, valuation, and reorder planning beside the commercial documents that create stock demand.
See Inventory within BillingCount what is present. Protect what is promised.
On-hand and available stock should not compete for one label because the business needs both truths. On-hand keeps the physical record honest. Reservations protect accepted demand. Available stock tells the next operation what it can safely consume.
When every reduction validates availability at the correct warehouse and batch, overselling becomes a controlled exception rather than a routine surprise.
On-hand and available stock: frequently asked questions
01What is the difference between on-hand and available stock?
On-hand is the physical quantity recorded at a warehouse. Available is the quantity not already committed to active reservations and therefore eligible for a new stock-reducing operation. In Amber Vertex, displayed available quantity is on-hand minus reserved, floored at zero.
02Does reserving stock reduce on-hand quantity?
No. A reservation records promised demand while the units remain physically present. It reduces available quantity. On-hand decreases later when the stock-affecting document is posted; in Amber Vertex, sales invoice posting performs that deduction.
03Can available stock be greater than on-hand stock?
Not under the basic current-stock formula. Available is on-hand minus active reservations and is floored at zero. Projected or available-to-promise measures may include expected receipts, but they should be labelled separately from current availability.
04Why can stock exist but still be unavailable?
It may already be reserved for qualifying sales orders, allocated to a batch that has expired, held at another warehouse, or otherwise ineligible for the attempted operation. The system should show the reason rather than treating every physical unit as newly usable.
