Reservations and Availability
Two different questions get confused in stock systems: how much is here, and how much can I promise. Reservations are what separate them.
Reservations are movements in a reserved state
A reservation is recorded as a movement, but in a reserved state rather than a completed one. It does not change what is physically present — the goods are still on the shelf — but it does change what is available to promise to the next customer.
Recording reservations as movements rather than as a separate mechanism means the same ledger answers both questions, and a reservation is as auditable as a despatch.
On-hand versus available
- On hand — what is physically in the location.
- Reserved — committed to orders not yet despatched.
- Available — on hand less reserved, which is the figure a salesperson should be shown.
Showing on-hand where you meant available is the direct cause of overselling. Ten in stock and ten already reserved is not ten to sell.
When to reserve
Reserve at the point the business genuinely commits — usually order confirmation rather than quotation. Reserving at quotation ties up stock against speculative demand and produces artificial shortages; reserving at despatch is too late to prevent the overselling it exists to stop.
Releasing
Reservations must be released when the order is cancelled or fulfilled, otherwise availability drifts downward and the system reports a shortage that does not exist. Fulfilment converts the reservation into a completed issue. Cancellation releases it. Make sure both paths exist before going live — an unreleased reservation is much harder to spot than a missing one.
Checking availability at the right moment
Check availability when the commitment is made, not when the order was first keyed. In a busy system stock can be committed elsewhere in the interval, and a check performed against a figure fetched several screens ago is a check against history.