Stock Transfer Procedures
By the end of this guide you will have moved stock from one branch to another, seen it disappear from the sending branch, found it sitting in the transfer queue, and received it at the other end. The whole thing takes about five minutes once you know where the queue is — and the queue is the part nobody is told about.
The single most useful thing to understand first: between the two documents, the goods are counted
at neither branch — they sit at the company’s stock-in-transit location. That is not a bug. BigLedger
creates one location per company, coded L-STOCK-IN-TRANSIT…, and every Transfer Out moves the quantity
there until the Transfer In moves it on. It is the in-transit record, and it is the only reason you can
tell “sent but not arrived” from “never sent”.
Meet GadgetSphere
GS-KV-03 has sold out of a popular wireless earbud model; GS-KV-01 has 40 in the back store. Head
office wants 15 moved across. Both branches belong to GadgetSphere Sdn Bhd, so this is an ordinary
stock transfer.
(If the stock were moving to GadgetSphere Distribution Sdn Bhd, a different company, a stock transfer would not do it — see When a stock transfer is the wrong document below.)
Before you start
- Both locations exist in Organization and both are
ACTIVE. A deactivated location is not selectable. - The item is linked to an inventory item — otherwise the transfer will finalise and nothing will move.
- Someone at
GS-KV-01holds the permission to finalise an Outbound Stock Transfer, and someone atGS-KV-03holds it for Inbound. Ideally not the same person.
How a transfer actually works
flowchart LR
REQ["Stock Requisition<br/>raised by GS-KV-03<br/><b>moves nothing</b>"] -.->|"optional"| OUT
OUT["<b>Transfer Out</b><br/>at GS-KV-01"] -->|FINAL| Q["Transfer queue<br/>quantity at the company's<br/>stock-in-transit location"]
Q -->|"knocked off by"| IN["<b>Transfer In</b><br/>at GS-KV-03"]
IN -->|FINAL| DONE["GS-KV-03 +15<br/>GS-KV-01 already −15"]
Two documents, two branches, one queue. Quantity only — a transfer posts no journal and changes no cost. The value of the stock never leaves your balance sheet; it simply sits somewhere else.
Step 1 (optional): Ask for the stock
Inventory > Stock Requisition (Internal) > Create
If your policy is that a branch asks rather than head office pushes, GS-KV-03 raises a Stock
Requisition: the items, the quantities, the sending location and the receiving location.
A requisition moves nothing. Its quantity signum is 0. It is a request on the record, and the transfer is raised against it afterwards — either from the transfer applet’s Search Document > Stock Requisition tab, or with the CREATE ST button on the requisition itself.
Do not expect the requisition to be approved. BigLedger’s approval engine does cover this document type in the backend, but the Stock Requisition applet has no approval tab on the document, no Approval Request screen and no Approval History screen. A setting you create under its Approval Settings menu cannot be used from that applet. See Document Approvals.
If you need a sign-off before stock moves, it is a permission: only give the finalise right on Outbound Stock Transfer to the people whose sign-off you want.
Step 2: Raise the Transfer Out at the sending branch
Inventory > Stock Transfer > Outbound > +
On Main Details: Location From (GS-KV-01), Location To (GS-KV-03), the transfer date, a
reference number, remarks, and a tracking ID if you use one.
On Line Items: add the item and the quantity, 15. Two ways in:
- Standard view — one line at a time, with Item Details, Serial Number, Batch Number and Bin Number sub-tabs. Use it for serialised stock, where you have to name every unit going on the van.
- Spreadsheet view — grid entry, for a long list of plain items.
There is also a Scan Serial No or Item Code box, which adds lines from a scanner, and an Outbound File Import for bulk.
GS-KV-01 can happily send 40 of an item it has 12 of.SAVE keeps it as a draft — nothing has moved. FINAL takes the 15 out of GS-KV-01, puts them into the company’s stock-in-transit location, and
puts every line in the queue.
Watch out for: the location on a line follows a precedence — line delivery location, line store, header store, then the branch’s default location. On a transfer that usually does not bite, but if a line somehow carries an old location the stock will leave from there instead.
Step 3: Find them in the queue
Inventory > Stock Transfer > Queue
The Queue is every finalised outbound line that has not been fully received. Your 15 earbuds are
here. On the Stock Balance they show against the
L-STOCK-IN-TRANSIT… location, not against either branch.
Details is the same information one row per outbound line, showing quantity sent, quantity received and quantity outstanding, with the inbound document that received it. This is the screen to live in.
Step 4: Receive them at the destination
Inventory > Stock Transfer > Inbound > +
Create an Inbound Stock Transfer at GS-KV-03 and knock off the queue lines it covers. Check the
quantity against what physically arrived before you finalise.
FINAL takes the quantity out of the in-transit location, puts it into GS-KV-03 and closes the
queue line.
If fewer arrived than were sent — 13 of 15 — receive 13. The remaining 2 stay outstanding in the queue, which is exactly what you want: the discrepancy is now visible and attributable, rather than being absorbed silently at one end. Investigate, then either receive the last 2 when they turn up, or close the gap with a Stock Adjustment at whichever branch actually lost them, with a GL code that says why.
Step 5: Confirm the cost did not change
Open Stock Balance for the item. GS-KV-03’s
quantity is up by 15 and the MA Price is the company’s cost — unchanged.
This is correct and it is worth knowing: a transfer never changes the company’s unit cost. The receiving location takes the company-level cost. No value moved, because no journal was posted.
When a stock transfer is the wrong document
| Situation | Use instead |
|---|---|
| Moving stock to another company in the group | Not a stock transfer. Sell it — a sales document in one company and a purchase document in the other — or use the consignment documents if ownership is not changing |
| Moving stock to a partner showroom, dealer or customer site while you still own it | Consignee Stock Transfer. It is a single document with no queue: finalising takes the quantity out of one location and puts it into the other in the same posting |
| Receiving stock a supplier still owns | Consignment GRN (Internal) |
| Correcting a quantity that is simply wrong | Stock Adjustment — a transfer moves stock, it does not create or destroy it |
What success looks like
Five minutes, one item, four checks:
- Stock Balance at
GS-KV-01is 15 lower. - Stock Balance at
GS-KV-03is 15 higher. - The Queue no longer lists those lines, Details shows 15 sent, 15 received, 0
outstanding, and the company’s
L-STOCK-IN-TRANSIT…location no longer holds any of the item. - The general ledger has no new entry for the transfer. That is correct — transfers post nothing.
If (1) happened and (2) did not, look in the Queue: the Transfer In has not been raised.
Common mistakes
| Mistake | What you see | Fix |
|---|---|---|
| Nobody raises the Transfer In | Stock missing from both branches and piling up at the in-transit location; the Queue grows | Check Details weekly; make receiving somebody’s named job |
| Expecting an approval to route the transfer | Nothing routes. Whoever holds finalise, moves stock | Control it with permissions, at both ends separately |
| Negative-stock check left off | A branch sends more than it has and goes negative | Turn on Disallow negative stock for basic item |
| Receiving the full quantity when less arrived | The discrepancy vanishes into the receiving branch’s balance | Receive what arrived; leave the rest outstanding and investigate |
| Using a transfer between two companies | Quantity moves with no sale, no purchase and no journal — two sets of accounts now disagree | Use sales and purchase documents, or consignment |
| Expecting the cost to follow the goods | It does not; the receiving location uses the company cost | Expected. Nothing posted, nothing to correct |
| Looking for the transfer in a stock report and not finding the value | Transfers are quantity only; the Stock Summary Report By Location shows them under Others and Stock In Transit | Use those columns |
Related documentation
- Stock Transfer applet — every field, setting and error message
- Stock Requisition (Internal) — the request half, and why its approval screens do nothing
- Consignee Stock Transfer — the single-document variant for partner locations
- Inventory core concepts — the ledger, the signum and the balance
- Stock Management Guide — the setup this assumes