Inventory Planner
How-To Guide

Create and Receive a Stock Transfer End-to-End

A stock transfer in Alfred follows a clear lifecycle: Draft → Ready to Ship → In Transit → Received. Multi-shipment support means a single transfer can ship in several packages, each with its own tracking number and ship date. Transfers mirror to Shopify Admin automatically.

Option 1: Single-shipment transfer

Recommended
1

Go to Stock Transfers and click 'Transfer between Locations'.

2

Pick the origin and destination locations (they must be different) and optionally name the transfer.

3

The transfer opens in Draft state. Use the product picker to add variants, setting quantities for each. The picker shows current availability at both locations.

4

When the item list is final, click 'Mark Ready to Ship'. Alfred creates the corresponding Shopify transfer and reserves the committed units at the origin.

5

When the package physically leaves, click 'Add shipment'. Enter the quantity shipped per line (defaults to the full committed amount for a single-shipment transfer), add a tracking number and ship date, and save. The transfer transitions to In Transit.

6

When the shipment arrives at the destination, open the transfer and click 'Receive' on the shipment.

7

Enter the received quantity for each line. If a count differs from what shipped, pick a discrepancy reason (damaged, lost, miscounted, over-received).

8

Submit to push inventory increments to Shopify at the destination. The transfer transitions to Received once all shipped units are accounted for.

Option 2: Multi-shipment transfer (split across packages)

1

Create a draft transfer with all items and full intended quantities, the same way you would for a single-shipment transfer.

2

Mark Ready to Ship.

3

When the first package leaves, click 'Add shipment' and enter just the quantities going in that package (not the full transfer). Add the tracking number for that package. Save.

4

When the second package leaves, click 'Add shipment' again. Enter the quantities in this second package. Add its own tracking number. Save.

5

Continue creating shipments until all outstanding units are dispatched. The parent transfer's totals (committed, shipped, outstanding) update with each shipment.

6

Receive each shipment independently as it arrives at the destination — each gets its own receive event with its own discrepancy tracking.

7

The transfer transitions to Received once every shipment is closed.

Pro Tips

  • 💡Treat Draft as a planning tool — drafts don't reserve inventory, so leaving them open while you finalize the list costs nothing.
  • 💡Always enter a tracking number on each shipment. It gives your destination team a way to monitor arrival and stays attached to the shipment record for audit.
  • 💡Reconcile discrepancies at receive time, not later. The four reasons (damaged, lost, miscounted, over-received) live on the shipment item — useful when investigating carrier issues weeks down the line.
  • 💡Cancel transfers you're not going to ship rather than leaving them in Ready to Ship — cancellation releases the origin reservation so the units come back into available inventory.
  • 💡Open the transfer in Shopify Admin (Products → Transfers) once or twice to confirm the two sides match — they should always be in sync, but a spot-check builds confidence.