Interstore transfers: the van, the form, and the count between stores
The interstore transfer form template, van-versus-courier math, two counts at the custody handoff, and the reconciliation when units go missing.
InventoryX is in development and not available today. ClearStock is the live Shopify app.
48 units of SOCK-MER-M-01 left Store A on the paperwork. 46 were signed for at Store B. Nobody wrote down the two missing units, nobody adjusted the system, and six days later a cycle count at Store B logged the shortfall as shrinkage — a theft investigation where the answer was a carton that never got counted. The gap between what leaves one store and what arrives at another is where small multi-store retailers lose stock, and the fix isn't software. An interstore transfer is a custody handoff between your own locations, and treating a store-to-store transfer like an errand is how the units vanish. The discipline: a transfer form that rides with the boxes, a deliberate choice between your van and a courier, two counts at the custody change, and a reconciliation routine for when the numbers don't close. The Shopify admin half — creating the transfer, the in-transit state, receiving it — is covered in the Shopify inventory transfers guide; this article is the physical half that guide can't do for you. And when a move between locations is a real relocation — racking, bins, a lease — that's a project of its own, run on the warehouse move checklist; the transfer form below is for the routine shuttling.
The interstore transfer form that rides with the boxes
A transfer without paperwork is a rumor with wheels. The form is the custody record — it converts "the driver took some boxes over" into "Dana released 48 units in 3 cartons to Marcus at 10:14 a.m." Copy this as a one-page template:
| Field | Filled by | Example |
|---|---|---|
| Transfer ID | Sender | TRF-1128 (matches the Shopify transfer) |
| Date and departure time | Sender | 2026-11-06, 10:14 |
| From / to store | Sender | Store A → Store B |
| Driver or courier + tracking | Sender | Dana (own van) |
| Carton count | Sender | 3 cartons |
| SKU and description | Sender | SOCK-MER-M-01, merino hiking sock |
| Units sent | Sender | 48 (16 per carton) |
| Units received | Receiver | 46 |
| Condition notes | Receiver | Carton 2 retaped, sleeve open |
| Sender signature and time | Sender | Dana, 10:14 |
| Receiver signature and time | Receiver | Marcus, 12:05 |
Three rules make the form worth printing:
- One line per SKU, with units-per-carton written on the carton. "48 units across 3 cartons" is unverifiable at the far end; "16 per carton" is checkable in a minute.
- The signature is the custody change. Everything before it is the sender's problem; everything after is the receiver's. When a discrepancy appears, you know which side to investigate without an argument.
- A photo of the signed form travels with the shipment. Paper gets left on dashboards; the photo in your store group chat doesn't.
If the transfer carries context beyond the lines — who drives, which vehicle, which courier pickup — Shopify's Fall '26 release added transfer metafields, so that detail can live on the transfer record itself instead of a text thread (Shopify Editions Fall '26, accessed November 2026).
Van or courier: the actual decision
| Factor | Points to your own van | Points to a courier |
|---|---|---|
| Distance | Same metro, under an hour each way | Across regions |
| Load | More than 2–3 cartons, or odd-sized stock | Parcel-sized loads |
| Frequency | Weekly or biweekly run | One-off or irregular moves |
| Urgency | Same-day flexibility matters | Next-day acceptable |
| Accountability | Your own staff, your own process | Third-party tracking and claims |
The cost math, illustrative: a van run between two stores 18 miles apart takes a staff member about 1.3 hours door to door. At a $22/hour wage plus roughly $0.70 per mile in vehicle cost, the run costs about $29 + $13 ≈ $42 (illustrative). Parcel rates vary by city; at an illustrative $16 per carton, the same 3-carton load costs around $48 (illustrative) — break-even territory, and the van also buys same-day flexibility and a signature from your own staff. Two cartons on an irregular basis: the courier wins. A weekly 4-carton run: the van wins, and the $42 becomes your cost per cycle rather than a decision you re-make each time.
One check before the van becomes routine: insurers commonly treat regular commercial delivery differently from personal driving, so confirm your auto coverage covers the run — once, in writing. A $42 trip is not worth an uncovered claim. One cargo note: a closed van at 1 p.m. in July runs hotter than any room in either store — for anything heat-vulnerable, the three-temperature policy in the heat-sensitive inventory guide applies to the run.
The handoff: two counts, one record
The count discipline is where transfers are won or lost:
- The sender counts at pack-out, not at pick. Pickers work from a system number that may already be wrong; the pack-out count is the last accurate look at physical reality before custody changes. Count per carton and write it on the form and the carton.
- Seal cartons with the count visible. Tape a duplicate slip to the outside or write "16/48" across the seam. A receiver should never have to open all three cartons to verify the load.
- The receiver counts before signing, in front of the driver. Carton count first, then units against the form. A discrepancy noted while the driver is standing there gets fixed or annotated on the spot; one discovered at next week's count becomes a two-store argument with no witnesses.
- Receive in Shopify only after the physical count. While the transfer sits in transit, the units belong to neither store's sellable count (Shopify Help Center, "Transfers", accessed November 2026) — exactly the state you want until the count closes. Marking a transfer received on faith converts an unknown error into future fake shrink at the receiving location: the system will insist the units are on a shelf they never reached.
When the transfer doesn't reconcile
Sent 48, received 46, carton 2 retaped with an open sleeve. Before anyone adjusts anything, triage in this order — each step is cheaper than the next:
- Recount with the form in hand. Check per-carton numbers: 16 + 16 + 14 is a different problem than a flat 2 missing. Open the retaped carton fully, including the bottom layer, before anything else.
- Check the transport. Own van: did a carton stay on the dock at Store A? Courier: does tracking show a third parcel still in transit? Multi-parcel courier shipments deliver split — the missing 2 units are sometimes just tomorrow's delivery.
- Check for the mis-scan. Were the 2 units received onto a sibling SKU? A 46-and-2 pattern across SOCK-MER-L-01 means a scan error at receiving, not a loss — fix it with a corrective adjustment and move on.
- Recount the sender. The pack-out count can be the wrong one. Sender recounts their remaining shelf and pick faces; if their count was 46 all along, the error happened at Store A before custody ever changed.
- Then adjust, with a cause code. Whatever survives triage gets adjusted with its own code — "transfer variance" — never folded into store shrinkage. Adjustments land in the variant's history with the note attached (Shopify Help Center, "Inventory adjustments", accessed November 2026), and a simple ledger adds SKU, date, units, carton, and cause.
The arithmetic that justifies the discipline, illustrative: 2 units × $8.50 unit cost = $17 on this run — trivial. But 12 runs a quarter with a quiet 2-unit average loss is 24 units ≈ $204 a quarter (illustrative) reading as mystery shrink, plus the count hours spent investigating it. The form and the two counts exist to surface that loss at the handoff, where it's fixable, instead of at quarter-end, where it isn't.
When the pattern repeats, the ledger speaks: same SKU short on three consecutive runs is a pick-face or pack-out problem at one store; shortfalls that follow one driver are a process conversation; shortfalls that follow the courier but never the van are a carrier problem with receipts behind it. Persistent transfer variance also feeds the count schedule — the cadence that catches drift between transfers is covered in the cycle count frequency guide.
In-transit shrinkage is still shrinkage
Two habits make in-transit loss rare instead of chronic:
- No unrecorded runs. The worst pattern in a 2–3 store operation is "I just threw a box in the car and took it over." No transfer record, no in-transit state, no custody signature — and both stores' counts are wrong until someone notices at a count. If it moves, it gets a transfer and a form, even for one carton.
- Transfer variance never reads as store theft. The cause code keeps the loss attributed to the pipeline, not to Store B's team — which keeps the count team hunting real causes instead of defending themselves against imaginary ones. The wider picture of where loss comes from and which controls actually move the number is covered in the inventory shrinkage prevention guide.
Next step
Print the transfer form above — one page, one line per SKU — and run your next store-to-store move with two signatures and carton counts on the tape, including the one-carton errand. Then check whether your last three transfers reconciled exactly; if a pattern shows up, the counting cadence that catches it between transfers lives in the cycle count frequency guide.