Feature / Admin

UPS return labels can now
be created right from the Shopify admin

Just create a return from a fulfilled order and pick UPS as the carrier. The label reaches the customer by email or a shared link. You're only charged when the carrier scans the label. Available for US domestic orders.

What's on this page
  1. What's changing (in 30 seconds)
  2. How it works: the return label flow
  3. Choosing a rate: Shopify discounted vs. your own UPS account
  4. Pricing model: free until the label is scanned
  5. Scope, and what the announcement doesn't say
  6. How to do it (3 steps)
  7. 5 things developers should know
  8. 3 practical use cases
  9. A one-line summary for your pitch

1What's changing

In the Shopify admin, when you create a return from a fulfilled order , you can now select UPS as the carrier.
The label reaches the customer by email or a shared link . This applies to US domestic orders.

Created in the admin only

Pick the order → create the return → select UPS as the carrier. No extra external tools needed.

Two ways to hand it to the customer

Send by email, or share a link. Customers can pick whichever fits their printer setup and preferred channel.

Unused labels expire free after 6 months

You're charged only on scan. Labels that go unused expire after 6 months at no cost.

2How it works: the return label flow

Fulfilled order Shopify admin Create a return Carrier: UPS Select the return items Set carrier to UPS Issue the return label Two rate options (Section 3) No charge at this point Send by email To the customer's inbox Shareable link Send the URL through any channel Scanned = billing is triggered
The key point is that "issuing" and "billing" are decoupled. You can hand out labels up front and pay only for the ones that are actually shipped back.

3Choosing a rate: Shopify discounted rates vs. your own UPS account

A. Buy at Shopify's discounted UPS rates

Buy labels at the discounted rates Shopify provides. No separate contract with UPS is required, so you can start right away.

Zero contract work
UPS

B. Connect your own UPS account

Connect your own UPS account to Shopify and issue return labels atyour own contract rates. Go this route if you have already negotiated rates with UPS.

Your own rates applied
Guidance on which is cheaper, and the specific discount percentages, is not stated. Stores with meaningful shipping volume should compare their existing UPS contract rates against Shopify's discounted rates at their actual weight ranges.

4Billing model: free until the label is scanned

1 Label issued Charge: none 2 Sent to the customer Charge: none 3 Carrier scans the label Billing starts here × If it is never used Expires free of charge after 6 months
TimingStatusCost
When the label is createdLabel issued, unused0
Sent to customer (email/link)In the customer's hands, unused0
Carrier scans the labelThe return has actually startedBilled at this point
6 months after issuance (unused)Expires0 (free)
The cost risk of the "include a return label in the box" strategy disappears. Even if you issue a return label upfront when shipping, no cost is incurred unless the package is actually sent back.

5Scope, and what the post doesn't say

Covered

US domestic orders

The post explicitly covers only US domestic orders. Nothing is said about international returns.

Covered

Fulfilled orders

It states that you can create a return from "any fulfilled order." How unfulfilled orders are handled is not mentioned.

Items not covered in the post (= needs verification)

Not stated

Supported plans

There is no mention of which plans (Basic / Shopify / Advanced / Plus) this is available on.

Not stated

API / Webhook details

Whether return labels can be issued via the Admin API, or whether there are notification events, is not addressed.

Not stated

Coexistence with other carriers / phased rollout

There are no details on how this relates to existing carriers that support return labels, or on rollout timing.

6How it works (3 steps)

1

Pick an order

Open a fulfilled order in the admin.

2

Create a return and select UPS

Specify UPS as the carrier when creating the return.

3

Get it to the customer

Send it by email, or hand over a shareable link.

75 points developers should keep in mind

1. The billing trigger is the "scan" — an asynchronous event

The cost isn't final at issuance. Cost calculations and return-cost reporting need to be based on the number of scans, not the number of labels issued. Design on the assumption that this won't line up with your accounting close.

6 mo

2. Labels have a 6-month expiration

Unused labels expire free of charge after 6 months. If your return policy accepts returns beyond 6 months, you'll need a re-issuance flow for expired labels built into your operations.

3. Rates now come from two different sources

Shopify discounted rates and your own UPS account rates follow different billing paths. The former is billed by Shopify, the latter is tied to your contract with UPS, soconfirm which one you are actually using before running any cost analysis.

4. There are two ways to reach the customer: email and a shared link

Because a shared link is available, support can hand it over through channels other than email — chat, SMS, or follow-up after a phone call. Adding a slot for the link in your support tool's templates makes day-to-day handling faster.

API ?

5. If you want to automate this, check API support first

The announcement only describes this as an admin UI workflow, andsays nothing about whether labels can be created or retrieved via the Admin API / webhooks. If you are planning to connect this to an RMA system or a WMS, verify against the developer docs and a sandbox before you start building. The fact that it covers US domestic orders only is also a branching condition for stores selling in multiple countries.

8Three practical use cases

In-box label
USE CASE 1

Eliminate support tickets in apparel by issuing return labels up front

Problem
In categories with frequent size exchanges and returns, support has to arrange a label for every return request, and the handling time per ticket adds up.
Approach
Issue the UPS return label for fulfilled orders up front, and include the shared link in the order confirmation email or in the packing insert. Customers who want to return an item can complete the process themselves without going through support.
Impact
Fewer return-driven support tickets and a shorter lead time to completing a return. A better return experience also feeds into repeat purchase rates.
Technical note
Even when you issue labels up front, you are not charged until the label is scanned, and unused labels expire at no cost after 6 months, so unused labels add no cost. That said, if your return window is longer than 6 months, you need a path for reissuing labels.
Shopify Discounted rates Your own UPS Contract rates
USE CASE 2

Use real data to decide which return shipping rate is actually cheaper

Problem
Stores that already have a UPS contract are deciding by gut feel whether to buy return labels at Shopify's discounted rates or at their own contract rates.
Approach
① Issue labels at Shopify discounted rates for a set period → ② connect your own UPS account and run an equivalent period → ③ compare actual charges by weight band and shipping distance, then move to whichever is cheaper.
Impact
A lower unit cost for return shipping. The higher the return rate in a category, the bigger the annual impact.
Technical note
The announcement gives no specific discount rates, so the only way to decide is to measure. For the comparison period, either avoid seasonal effects (returns spiking after a sale) or apply the same season to both.
Return cost by SKU
USE CASE 3

Track the "issued but never shipped back" rate as a return experience metric

Problem
Returns are only visible on a request basis, so there's no way to tell whether a customer gave up on the return or is simply holding onto the item.
What to do
Make issuing a return label the standard for every order, then tracklabels issuedvs.labels scanned, broken down by SKU and category. Where the gap is large, suspect friction in the return itself (hard to repack, unclear instructions) and fix that flow.
Impact
You can see where customers drop out of the return process and act before it turns into a support complaint or a bad review.
Technical notes
This metric only works because unused labels are free. That said, whether issued/scanned status is available via API is not stated in the article, so confirm how to retrieve it before assuming you can automate the tracking. If it isn't available, fall back to an export from the admin.

9One-line summary for proposals

"You can now issue UPS return labelsdirectly from fulfilled orders in the Shopify admin.
Choose between Shopify's discounted rates or your own UPS rates; you're only charged when a label is scanned, and unused labels expire for free after six months.
That makes it possible to send return labels up front with no cost risk (US domestic orders only)."