Transfers & Demands
A central store feeding outlets, an outlet bailing out a neighbour before the weekend — transfers are how stock crosses branches with both sides' books staying right.
How a transfer works
One entry creates the whole movement: the sending branch's stock-out and the receiving branch's stock-in, as a linked pair. The receiving side's lines mirror the sender's exactly — quantities and costs travel together, so the stock arrives at the cost it actually carried, not a re-typed price.
Statuses — and when stock actually moves
A transfer is created as pending, in transit, or completed, and the rule that matters is:
Stock moves only at completed. A pending or in-transit transfer is paperwork — the quantities still sit in the sender's stock until someone completes it.
Practically: use pending for "picked but not dispatched", in transit for "on the truck", and complete it when the goods are verified at the destination — completion is the receiving act. In-transit quantities are excluded from availability where you'd otherwise double-count them, and editing an in-transit transfer is restricted (setting-controlled) so paperwork can't drift from a truck already moving. Which statuses each user may set is itself restrictable per user — a loader who may only mark in transit can't "receive" a truck they never saw.
Demands: asking before moving
The flow can also start at the receiving end: a branch raises a stock transfer demand — a formal request listing what it needs — and the fulfilling branch turns the demand into an actual transfer. Departments have the parallel issuance demand toward their branch store. Demands make the "call the other branch and hope" workflow into a tracked queue with its own reports, and they're where multi-branch operations stop losing requests in chat messages.
The accounting side
Both legs post ledger vouchers. With inter-branch control accounts enabled (the branch dimension family), the sender books an inter-branch receivable and the receiver an inter-branch payable against each other — every branch's books balance alone, and what branches owe each other is a live report. Businesses on the legacy configuration map branches to counterpart accounts instead; support verifies this mapping is in place, because a transfer without one cannot post.
The habit that matters: complete transfers at physical receipt, same day. A transfer completed from the sending office "to save time" is a count surprise waiting at both branches.