Skip to content

Stock Transfers ​

Stock Transfers move inventory between two branches with a controlled, auditable handoff. A transfer deducts stock from the source only when it is dispatched and adds stock to the destination only when the destination records receipt.

The source and destination must be different active branches using the same currency. Each line maps a source-branch ingredient to a destination-branch ingredient with the same measurement unit.

Transfer Lifecycle ​

text
Draft → Approved → Dispatched → Partially Received → Received
  │          │          │                 └──→ Closed With Discrepancy
  └→ Cancelled ────────┘
                         └──→ Voided (only before any receipt)
StatusMeaning
DraftDefinition can be edited or cancelled. No stock is moved.
ApprovedDefinition is frozen and ready for dispatch.
DispatchedThe full approved quantity has been removed from the source branch.
Partially ReceivedOne or more receipts were posted; some dispatched quantity remains outstanding.
ReceivedAll dispatched quantities were received at the destination.
Closed With DiscrepancyOutstanding quantities were closed with a required discrepancy reason.
CancelledA Draft or Approved transfer was stopped before dispatch.
VoidedA dispatched transfer with no receipts was reversed, restoring the source stock.

Index Page ​

The list includes the transfer reference, source branch, destination branch, status, expected arrival, item count, dispatch time, and completion time.

Filters and Actions ​

  • Filter by Source Branch, Destination Branch, Status, and date range.
  • Create a transfer, open its details, or export the list when permitted.
  • Available row actions change with the transfer status and the user’s permissions: Edit, Approve, Dispatch, Receive Stock, Close With Discrepancy, Cancel, or Void Dispatch.

Branch-assigned users can create, edit, approve, dispatch, cancel, and void transfers only for their source branch. They receive and close transfers only for their destination branch.

Create a Transfer ​

  1. Open Inventory → Stock Transfers and select Create.
  2. Select the Source Branch and a Destination Branch. Only branches with the same currency are available.
  3. Add one or more transfer lines.
  4. On each line, select the source ingredient, then choose its matching destination ingredient. The destination list is restricted to the same unit.
  5. Enter the requested quantity. It must be greater than zero and no greater than the source ingredient’s available stock.
  6. Optionally enter an expected arrival date and notes, then save the Draft.
FieldDescriptionRequired
Source BranchBranch that provides stockYes
Destination BranchBranch that receives stockYes
Expected ArrivalExpected delivery date/timeNo
NotesInstructions or transfer contextNo
Source IngredientIngredient stocked at the source branchYes
AvailableCurrent source on-hand quantity, shown for referenceCalculated
Destination IngredientEquivalent ingredient at the destination branch, with the same unitYes
QuantityRequested transfer quantityYes

An ingredient can be used only once as a source and only once as a destination within the same transfer. You cannot save a transfer with duplicate ingredient pairs.

Approve and Dispatch ​

Approve ​

Approve a complete Draft after checking the branch pair, ingredient mapping, unit, and available source stock. Approval freezes the document—its branches and lines can no longer be edited—and does not change inventory.

Dispatch ​

Dispatch an Approved transfer only when the goods leave the source branch. The system rechecks availability, then posts a Transfer Out movement for every line. The source stock decreases by the full dispatched quantity and the transfer becomes Dispatched.

The dispatch captures the item cost and the shared currency/rate used by the transfer. This preserves the cost trail for the destination receipt.

Receive Stock ​

At the destination, select Receive Stock and enter the quantity actually received for one or more outstanding lines. A receipt may include only part of the dispatched quantity, and no line may exceed its remaining quantity. Receipt notes are optional.

Each receipt creates a Transfer In movement at the destination for the received quantity. The result is:

  • Partially Received if any dispatched quantity remains; or
  • Received when all dispatched quantities have been received.

The detail page retains each receipt, its quantities, timestamp, recipient, and linked movements. A receipt is immutable; correct any operational error through the approved inventory process rather than editing the receipt.

Exceptions ​

Cancel Before Dispatch ​

Draft and Approved transfers can be cancelled from the source side. A reason is required. Cancellation does not create stock movements because nothing has been dispatched.

Close With Discrepancy ​

If a dispatched or partially received transfer will not be completed, the destination can close it with a required reason. The remaining dispatched quantity is recorded as a discrepancy and the transfer becomes Closed With Discrepancy. This does not add the missing quantity to destination stock.

Void a Dispatch ​

A Dispatched transfer can be voided from the source side only if no receipt has been recorded. A reason is required. The system creates reversal movements for the outbound transfer movements, restores source stock, and sets the transfer to Voided. A transfer that has a receipt cannot be voided.

Audit and Reconciliation ​

Use the transfer detail page to compare Requested, Dispatched, Received, Remaining, and Discrepancy quantities for each line. It also shows lifecycle history, users and timestamps, receipts, movement links, and cost information. Use this view together with Stock Movements when investigating an inter-branch discrepancy.

Tenvoro