Executive summary
- What: Shopify admin can now generate UPS return labels for any fulfilled US domestic order, priced either at Shopify's discounted UPS rates or on your own connected UPS account.
- Why: UPS joins USPS and FedEx as a native return carrier, which removes a common reason to keep a third party label provider in the reverse logistics stack.
- Who: US merchants with meaningful return volume, plus the ops and CX leads who own carrier contracts and returns SLAs.
What changed
Return label creation in the Shopify admin now supports UPS. From a fulfilled order you open Return, set the returned quantities, choose the return location, enter expected package size and weight, then pick a UPS service. Shopify emails the label to the customer or gives you a shareable link you can paste into an existing support thread. Two pricing paths exist: Shopify's discounted UPS rates out of the box, or your own negotiated rates once you connect your UPS account to Shopify.
Scope is narrower than it first appears. Coverage is US domestic only, and every UPS domestic service is supported except UPS Ground Saver. Billing is pay on scan: nothing is charged until the carrier scans and weighs the package. Unused labels expire six months after purchase at no cost, but the label URL expires after 30 days, which matters if you issue labels early in a long return window.
Why it matters
The commercial argument is rate control. A negotiated UPS contract now applies to returns without routing label generation through a separate app, and the cost lands in the same Shopify shipping bill as your outbound labels. On Plus that bill flushes at a $4,000 threshold, so high return volume will invoice more often than teams expect. The operational argument is consolidation: one fewer integration, one fewer place for return state to drift. Teams already automating enterprise operations with Flow can trigger label creation and customer notification from the same workflow layer as the rest of the order lifecycle.
Role-specific impact
- Marketers: A prepaid UPS label in the return confirmation is a real conversion lever on considered purchases. Test it on high return categories first, since label cost scales directly with return rate.
- Developers: Audit any RMA app, 3PL sync, or middleware that assumes labels originate outside Shopify, because duplicate label generation is the failure mode here. Confirm reconciliation handles pay on scan timing, since the charge lands days after the return is created.
- Store admins: Labels are created at the order level, not the item level. On partial returns you must adjust expected weight manually, or dimensional weight adjustments will quietly inflate the charge against your estimate.
Use-case example
Real-world scenario
A US apparel merchant on Plus ships 30,000 orders a month at a 20 percent return rate, so roughly 6,000 return labels. Their incumbent provider bills at label purchase rather than at scan, and about 8 percent of issued labels are never used: 480 labels a month of dead cost, near $4,000 at an $8.50 average. Moving to pay on scan removes that line item outright, and applying their own UPS contract saves further on every label that does scan. The work is mostly policy and macro updates, not engineering.
Implementation checklist
- Confirm scope. APO, FPO, and DPO addresses, US territories requiring a customs form, and international returns are excluded. Keep the existing process for those lanes.
- Model the rates against your actual return weight and dimension mix, not a headline discount percentage.
- Connect your UPS account in shipping settings if your contract wins, then run a test return to confirm the applied rates.
- Set the default return location so labels do not route to the wrong warehouse, and verify it per fulfillment location.
- Record expected weights for your highest returning SKUs so admins do not guess on partial returns.
- Remove UPS Ground Saver from returns documentation and support macros.
- Brief CX on both expiry rules: 30 days for the label URL, six months for the label itself.
- Reconcile the first month of shipping charges under Settings then Billing, and flag dimensional weight adjustments.
FAQ
Q: Can we use our own negotiated UPS rates instead of Shopify's?
A: Yes. Connect your UPS account and return labels price on your account rates. Without it, labels use Shopify's discounted UPS rates. Compare both against your real weight distribution, since dimensional weight pricing can reverse the answer on bulky lightweight goods.
Q: What happens to return labels customers never use?
A: Nothing is charged. Billing triggers on the carrier scan, and unused labels expire six months after purchase at no cost. The shareable URL expires after 30 days, so a customer who waits past that needs a fresh link from support.
Resources
Shopify Help Center: Buying return labels
Need guidance? Talk to Makro.