Transfers — SanadiqCloud

Product version: 1.0.0+1
Last updated: 2026-10-14
Audience: Tenant Owners, Tenant Employees, Regular Users


A. What are Transfers?

A Transfer moves stock from one inventory to another — typically between warehouses. Source on-hand decreases on ship; destination increases on receive.

Distinct from bin transfers (move allocations within the same inventory) and pick lists (inventory issue from a source bin for internal use).

Permission: inventory:transfer:read | create | update (approve / ship / receive / cancel use update).


B. Viewing the Transfer List

Inventory > Transfers (/inventory/transfers). Status values:

Pending, Approved, In Transit, Completed, Cancelled, Reversed.


C. Creating a Transfer

  1. Create from the list FAB, inventory Operations (source inventory prefilled), or item Operations (source inventory + item locked; destination inventory still selectable).
  2. Choose source and destination inventories (must differ).
  3. Each line: item from source, source bin, destination bin, requested quantity (optional unit cost / batch / lot on extra fields).
  4. Save — status starts as pending.

Source bins are filtered to locations that hold the selected item. Destination bins are active bins in the destination inventory. Same drawable rule as pick lists: with no source bin, the line draws from unassigned stock when it covers the quantity, otherwise from the first bin that does; that bin is saved on the line and debited at ship. One line never splits across bins.


D. Lifecycle

pending → approved → in_transit → completed
                 ↘ cancelled (before ship)
in_transit | completed → reversed (undo ledger; restores QoH)
Step Status What happens
Create pending Edit header/lines; add/remove lines
Approve approved Required before ship when approval policy is on
Ship in_transit Deducts each active line's full requested quantity from source stock; transfer_out ledger rows on source
Receive completed Adds destination stock; transfer_in ledger rows on destination
Cancel cancelled Allowed only before ship (pending / approved)
Reverse reversed Undoes ship/receive: reverses every transfer_in then transfer_out so source and destination quantities return to pre-transfer values. Also available by reversing any transfer ledger row on the transaction detail screen.

There is no separate picking or packing step. To ship less than requested, edit the line's requested quantity while the transfer is pending, or cancel the line.

Transfers into or out of a custody pool

A stock pool held by an employee (a sales representative's van stock) is loaded and unloaded with ordinary transfers. See Custody stock.

  • Loads (into a custody pool): only the employee who holds the pool can receive the load, from Custody → My stock. Everyone else, including administrators, sees Awaiting receipt by <name> on the transfer instead of Receive, and the system refuses a receive from the transfer page. Shipping the load notifies the holder.
  • Unloads (out of a custody pool): received by the warehouse with the normal Receive.

E. Partial receiving

Received quantity may be less than shipped (partial). Received cannot exceed shipped; shipped always equals requested.



Next: Transactions
See also: Adjustments | Requisitions | Warehouses