Can I buy shipping labels for Shopify outside Shopify Shipping?
Yes. Shopify's fulfillment screen asks for a tracking number from your shipping provider and lets you pick the carrier yourself, so the label can come from anywhere. Apps that fulfill orders on behalf of merchants create the same fulfillment record through Shopify's API, with tracking attached, which is what keeps the order status page and the customer emails correct.
What Shopify actually requires
One fulfillment against the order, and ideally a tracking number on it. The field is described as a tracking number from your shipping provider, and the carrier list is yours to choose from. Shopify recognizes tracking numbers from hundreds of carriers worldwide, and clickable tracking links are generated automatically for your customers once the carrier is identified.
Nothing in the fulfillment flow asks where the label was purchased.
Three routes to a fulfilled order
| Route | Who creates the fulfillment | Where tracking comes from |
|---|---|---|
| Shopify Shipping | Shopify, when you buy the label | The label you bought in the admin |
| Outside label, typed in | You, on the order screen | Copied by hand from the label |
| Connected shipping app | The app, through the API | The label the app bought |
Where Shopify Shipping fits
It is the built in option, and Shopify states that you can choose from multiple supported carriers depending on your location, so eligibility varies by carrier and country. Shopify also documents connecting your own carrier accounts through third party carrier calculated shipping rates. Sellers outside the supported set, or with service needs the built in carriers do not cover, fulfill from elsewhere and write the tracking back.
Return labels through Shopify Shipping require a default location in the United States, and insurance and claims are United States only.
Doing it by hand, and where it breaks
Typing tracking numbers is the version most sellers start with. It works, and it breaks in predictable ways: a transposed digit, a carrier guessed wrong, an order fulfilled in bulk with the numbers promised for later. Every one of those reaches the customer as an email with a link that shows nothing, and the fix is another email.
Buy the label in whatever system you use.
Open the Shopify order and click Mark as fulfilled.
Paste the tracking number and check the carrier Shopify selected.
Pick Other and paste the full tracking URL if your carrier is not listed.
Confirm, and let the shipping confirmation carry the link.
Doing it through an app
Shopify's own developer documentation describes order management apps as apps that fulfill orders on behalf of merchants, either automatically or from inside the app. Such an app reads the fulfillment order, creates the fulfillment with the tracking number and carrier, and Shopify sends the notification. The merchant approves the permissions once, and the copying step disappears for good.
Key takeaways
- Shopify never requires the label to come from Shopify Shipping.
- Shopify Shipping eligibility itself varies by carrier and country.
- What matters to Shopify is a fulfillment with a tracking number and a carrier.
- An unrecognized carrier still works if you supply the full tracking URL.
Rate USPS and UPS, and let the order update itself
The Shopify connection is in early access. Unfulfilled orders arrive within minutes through webhooks and a 10 to 15 minute poll, with addresses, line items and weights summed from the order.
You rate USPS and UPS per order or across the batch in The Workbench, buy, and the fulfillment is created against the fulfillment order with tracking, so Shopify emails the buyer as it always has. Address validation, carrier packaging and packing slips are in the same screen.
Related questions
No. They see a fulfillment, a carrier, a tracking link and the order status page, exactly as they would otherwise. The shipping confirmation is the same template you already use, sent by Shopify from your store. What changes is on your side: which system priced the shipment and printed the label.
Yes. Fulfillment happens per fulfillment order, so nothing forces one route for the whole store. Sellers commonly keep the built in option for the occasional one off and use an app for the daily batch. Just avoid fulfilling the same items twice, once in each system.
Select Other and enter the full tracking URL provided by your carrier. Shopify will present that link to the customer instead of building one from a recognized carrier name. Carrier detection and the automatic delivery notifications are what you give up, so use a recognized carrier where you can.
Checkout rates come from your shipping settings and any carrier calculated rates you have configured, not from the app that buys the labels. Fulfillment and checkout pricing are separate systems in Shopify. Changing where you buy labels does not silently change what customers are quoted.