Stock movements
Internal transfers, adjustments, kit builds — every non-receipt non-ship stock change.
2 min readLast updated 13 Apr 2026
Beyond inbound and outbound, stock moves for lots of reasons. Every one is a recorded movement in the ledger.
Movement types
- Bin-to-bin transfer — within a warehouse, move stock from one bin to another. Usually slotting optimisation or damage isolation.
- Warehouse transfer — between warehouses. Modelled as outbound at source + inbound at destination; stock shows in-transit between posts.
- Adjustment — write stock up or down, outside of a count. Requires role + reason. Goes to the variance account.
- Kit / assembly — combine component SKUs into a kit SKU (e.g. bundle + promotional pack). Components deduct; kit adds.
- De-kit / disassembly — reverse.
- Quarantine ↔ general — move stock in or out of quarantine. In-to-general requires QA release.
- Ownership change — 3PL: transfer stock from one customer's ownership to another's (rare; e.g. invoice dispute resolution).
Every movement has
- Source, destination (bin, warehouse, or owner).
- SKU, lot/serial if tracked, quantity.
- User, timestamp, reason.
- Reference (order number, GRN, count id, adjustment id).
Ledger
The ledger is an append-only log. Current stock at any bin = sum of inbound movements − outbound movements. Reports reconstruct historical stock for any date.
Reversals
Movements are not edited. To correct, post a reversing movement with reference to the original. Audit-traceable.
In-transit stock
Between warehouses, in-transit stock is visible:
- Not picked from the source (source count excludes).
- Not received at destination (destination count excludes).
- Shown in a separate "in-transit" bucket in reports.
If a transfer is lost in transit, post a variance against the in-transit bucket.
Reporting
Key views on /app/warehouse/movements:
- Ledger explorer — filter by SKU, bin, customer, date.
- Adjustment report — for internal audit.
- Transfer report — warehouse-to-warehouse movement summary.
Integration
Movements flow to finance via the inventory subledger:
- Transfers — no P&L impact, only location.
- Adjustments — hit shrinkage.
- Kit / de-kit — no net stock value change if components' cost = kit's cost.
Was this article helpful?