Skip to content

Event types and dispositions

The inventory event vocabulary is fixed by the schema. Events are append-only and idempotency-protected; projected balances are derived from these rows.

23 event types3 dispositions5 adjustment reasons

Event typeClassWritten by
opening_balanceStock increaseInitial stock creation/seed history.
purchase_receiptStock increaseReceiving a purchase order.
manufacturing_outputStock increaseRecording produced output.
manual_adjustment_increaseStock increaseAdjustment count above current available quantity.
stocktake_gainStock increaseCompleted stocktake count above expected quantity.
manufacturing_variance_gainStock increaseManufacturing variance that returns stock.
transfer_inStock increaseReceiving side of an inventory transfer.
unpick_restockStock increaseReturning picked material to stock.
manual_adjustment_decreaseStock decreaseAdjustment count below current available quantity.
stocktake_lossStock decreaseCompleted stocktake count below expected quantity.
sales_consumptionStock decreaseDelivering sales stock.
manufacturing_ingredient_consumptionStock decreaseConsuming ingredients into production.
manufacturing_variance_lossStock decreaseManufacturing variance that consumes extra stock.
quality_scrapStock decreaseScrapping quantity from a disposition.
transfer_outStock decreaseSending side of an inventory transfer.
quality_disposition_changeDispositionMoving quantity between available, blocked, and rejected.
demand_increasePlanningRegistering demand without moving stock.
demand_releasePlanningReleasing demand without moving stock.
expected_increasePlanningRegistering expected supply without moving stock.
expected_releasePlanningReleasing expected supply without moving stock.
cost_basis_changeCost onlyChanging item cost basis with quantity 0.
landed_cost_revaluationCost onlyRevaluing PO-referenced tracked stock still on hand.
stocktake_verificationCost onlyCompleting a zero-variance stocktake line.
DispositionMeaningUsable
availableReady to sell, consume, allocate, or count as usable stock.Yes
blockedHold for inspection without passing or failing it yet.No
rejectedFailed quality review and may be scrapped.No

Quality actions are release, block, reject, and scrap. Release/block/reject write quality_disposition_change; scrap writes quality_scrap.

ReasonUse when
cycle_countA routine count corrected inventory.
found_stockPhysical stock exists but was missing from the system.
damaged_spoiledStock was lost to damage, spoilage, or similar.
data_correctionCorrecting an earlier entry or system data issue.
otherNone of the specific reasons fit.