Print barcode labels when a Shopify inventory transfer arrives
A delivery lands, and every unit in the boxes needs a barcode label before it goes on the shelf. The fastest honest way to do that in Shopify is to receive the stock as an inventory transfer, then print labels for the received quantities. You label exactly what arrived, you type nothing, and short-shipped items do not turn into leftover labels. This guide explains what transfers are, why received counts are the right label counts, the step-by-step workflow, and how to handle partial deliveries.
What a Shopify inventory transfer is
An inventory transfer is Shopify's native record of stock moving into one of your locations. The origin can be a supplier or another location you run; the destination is where the stock ends up. Transfers live in Shopify admin under Products → Transfers.
Each transfer lists its items with two numbers that matter for labeling:
- Expected quantity: what the transfer says should arrive.
- Received quantity: what you have actually accepted, recorded shipment by shipment as deliveries land.
Transfers are part of Shopify's public platform, which is why label apps can build on them directly. That distinction became important when Shopify announced the Stocky shutdown: purchase orders were never public data, so printing labels without Stocky runs through transfers instead.
Why received quantities are the right label count
You label physical goods, so the label count should come from what physically arrived:
- Short shipments happen. You ordered 24, the box holds 18. Printing from the order gets you 6 orphan labels; printing from the received count gets you exactly 18.
- Damaged units get rejected. Items you refuse at receiving are not stock and should not get labels.
- No re-typing. The person who received the shipment already counted it. Reusing that count means nobody types 24 numbers into a label app by hand.
The old Stocky habit of printing "whatever is on the PO" only worked when deliveries were perfect. Received counts are correct even when they are not.
Print labels from a received transfer, step by step
Steps 1 and 2 happen in Shopify admin and apply whatever label app you use. Steps 3 to 5 use LabelFast (LabelFast), which reads transfers natively.
- Open the transfer and receive the shipment. In Products → Transfers, record the accepted quantity for each item as you unpack. This is the count of sellable units actually in the boxes.
- Reject what you will not stock. Damaged or wrong items get rejected rather than accepted, so they stay out of your received counts.
- Open Receive & print in LabelFast and pick the transfer. The page lists recent transfers with status, origin and destination, and a received-of-total count (for example 18 of 24), with tabs to separate transfers still on the way from those already received.
- Review the pre-filled quantities. Every line defaults to its received quantity, so the label run already matches the delivery. If nothing has been received yet, lines fall back to the expected totals. You can edit any line before printing.
- Pick a format, preview, print. Choose a DYMO or Zebra roll, an Avery sheet, or a custom size, check the exact preview, and print the generated PDF at 100% scale. Test-scan one label before running the full batch.
Partial receipts and backorders
Deliveries split, and the transfer workflow handles that cleanly because each print run follows the received counts at that moment:
- First box arrives with 18 of 24. Receive 18, print 18 labels, shelve the stock.
- Backordered 6 arrive next week. Receive the remaining units on the same transfer, then print a run for the new arrivals.
Two habits keep this tidy. Receive before you print, so the pre-filled counts reflect the latest delivery rather than the expected totals. And print at receiving time rather than batching several deliveries up, so each run maps to boxes you can still see.
Choosing a label format for a fresh shipment
| Format | Printer | Best for |
|---|---|---|
| DYMO or Zebra roll | Thermal label printer | Steady receiving volume; prints exactly the number received, no waste |
| Avery sheet (for example 5160) | Office inkjet or laser | Small deliveries; no extra hardware, but partial sheets are awkward to reuse |
| Custom size | Either | Stock that standard templates do not fit, including round labels |
Rolls suit receiving best: a run of 18 labels is 18 labels, not two thirds of a sheet. If you are on sheets today, the setup guides cover both paths: DYMO 30334 setup, Zebra printer setup, and the Avery 5160 template.
Replacing the Stocky purchase order habit
If your team's muscle memory is "open the PO, print the labels," the transfer version is the same motion with different names: create a transfer instead of a PO, receive the shipment instead of receiving against the PO, print from the received transfer instead of from the PO. What you give up is nothing; what you gain is label counts that match reality and a workflow built on Shopify's public platform rather than on an app that shuts down on August 31, 2026.
Received stock is the moment labels matter most: the goods are in hand, unlabeled, and headed for the shelf. Wire label printing to the transfer that received them and that moment stays a two-minute job.