Back to Blog
Shopify Platform10 min read

Shopify POS 11.5: Returns and Exchanges in the Cart

Shopify POS v11.5 moved returns, refunds, and exchanges into the cart and added three new staff permissions. Here is what changed and how to configure it.

April 30, 2026
Boutique shop owner processing a return and exchange on a POS tablet at a wooden retail counter

On April 27, 2026, Shopify quietly changed the single most sensitive interaction that happens at a retail counter. Returns, refunds, and exchanges now happen directly in the cart in Shopify POS v11.5, instead of inside a separate, linear workflow that pulled staff away from the screen they use all day.

If you run a store with a physical location, this is not a cosmetic release. The Shopify POS returns flow your team trained on is gone, three new staff permissions were switched on by default, and an optional setting that forces staff to record a return reason is sitting off by default in your admin right now.

Here is what actually changed, what it means for your margins, and the configuration decisions you should make before your next busy Saturday.

What changed in the Shopify POS returns workflow

Before v11.5, a return on Shopify POS was a detour. Staff opened the order, launched a dedicated return screen, worked through a stack of modals, and came back out the other side with a refund. The exchange path felt like a different product from the checkout path.

Now the cart does the work. According to Shopify's April 2026 retail roundup, staff can select return items, add exchange items, and manage refund decisions directly in the cart using the same tools they already use for a sale: product search, barcode scanning, Smart Grid actions, notes, and customer info.

The mechanical difference matters more than it sounds. An exchange now begins as a return. Your associate selects the returned item, and the cart stays live. The moment they scan a replacement product into that same cart, POS recognizes the transaction as an exchange and calculates the balance automatically.

If the replacement costs more, the checkout button asks for the difference. If it costs less, the same button flips to a refund for the balance. One transaction, one record, no context switching.

This is the same conceptual model Shopify uses in the admin with its native same-order exchange framework, where the return and the replacement live on the original order and the money nets out automatically. We covered the trade-offs of that approach in detail in our guide to same-order versus new-order exchanges, and POS has now been pulled onto the same side of that line.

Two constraints have not changed. Exchanges on Shopify POS still require a POS Pro subscription at the location, and staff still need the Return and exchange orders permission, per Shopify's POS exchange documentation. On POS Lite, your team is still limited to refunds.

Three new POS permissions you did not ask for

The part of this release most likely to bite you is the permission model. Shopify introduced three new POS return permissions, and all three were allowed by default at launch:

  • Manage item restock: lets staff control where (and whether) a returned item goes back into inventory during a return or exchange.
  • Complete in-progress returns: lets staff finish a return or exchange that was already started elsewhere, including one initiated online.
  • Remove unfulfilled items: lets staff strip unfulfilled line items out of an order during the return process.

Each one can be set to Allowed, Denied, or Approval required, the last of which forces a manager PIN before the action completes, as described in Shopify's Point of Sale permissions reference.

The default-on posture deserves a second look. "Manage item restock" is the closest thing retail has to a loss-prevention lever: it decides whether a damaged, worn, or fraudulently returned item quietly reappears as sellable stock. Handing that to every part-time associate by default is a policy decision your store may not have made deliberately.

Shopify did map existing approvals forward. If your Return & exchange orders manager approval setting was already enabled, it now also applies to Manage item restock and Complete in-progress returns. Manager approval for Remove unfulfilled items is enabled by default. If you never turned manager approval on in the first place, none of that mapping helps you.

A sensible starting configuration for most multi-staff stores: leave Return and exchange orders allowed so the line keeps moving, set Manage item restock to Approval required so a manager decides what goes back on the shelf, and restrict Remove unfulfilled items to managers outright.

"Require return reasons" is the setting worth turning on

Shipping alongside the new workflow is an optional Require return reasons setting, and per the changelog it is turned off by default at launch. That default is a missed opportunity, because return reason data is the cheapest merchandising research you will ever collect.

A return reason captured at the counter answers questions no analytics dashboard can. Are your knits running small, or is one supplier's sizing drifting? Is a product's photography setting the wrong expectation? Is a single SKU generating a quarter of your returns?

The catch is consistency. Reason data is only useful if the in-store list matches the online list, because a return logged as "Size Too Small" at the counter and "Wrong size" in the customer portal will not aggregate into anything you can act on.

This is where the online and in-store sides of your returns program need to be designed together rather than separately. Exchange It ships with ten configurable return reasons (Color, Defective, Not as Described, Size Too Large, Size Too Small, Style, Unwanted, Wrong Item, Unknown, and Other), and each one can optionally require a photo or a written note before the return is accepted. Aligning that list with the reasons your POS staff select gives you one clean dataset instead of two partial ones.

Where the Shopify POS returns flow still frustrates merchants

Reaction to Shopify's recent POS changes has not been uniformly warm. In a Shopify Community thread about the latest POS update, merchants reported that the redesigned interface slowed their counters down rather than speeding them up.

"When you add a product to the cart there is no indication that it was successful. You the have to exit the product search or product page and then go into the cart and check there. It's adding so much extra time to the process."

Another merchant in the same thread raised a refund-specific problem that goes straight to revenue retention:

"I can no longer issue a credit to gift card, our store does not do cash refunds and now it just automatically goes to cash or card refund. This is a disaster for me."

That complaint is worth understanding in context, because Shopify has been moving in the opposite direction elsewhere in POS. A separate changelog entry describes a dedicated refund screen for returns and exchanges that stops defaulting staff to the original payment method and instead surfaces revenue-retaining options like a gift card or store credit. The intent is right; the rollout clearly landed unevenly across stores and versions.

Developers hit a related edge. In the Shopify developer forums, a partner building POS discounting found that the POS exchange flow does not expose extension targets with Cart API access during exchange product selection, so apps cannot programmatically apply a discount to the replacement item. If you rely on an app for VIP or loyalty pricing, your staff may be doing that math by hand at the counter.

Even configured perfectly, the new in-cart flow inherits several constraints documented by Shopify that will shape how you write your policy:

  • Automatic discounts do not apply to exchange items. To discount a replacement, staff must apply a manual discount to that line.
  • Bundles must be exchanged item by item. You cannot swap a bundle as a unit, even when the items are identical.
  • Returned items always restock at the location processing the exchange. There is no way to redirect that inventory to another location from POS.
  • An open admin return blocks the POS exchange. If a return is already in progress from the Shopify admin, staff cannot exchange that order in store until the existing return is closed.

That last one is the quiet operational trap. A customer starts a return online on Tuesday, changes their mind, and walks into your store on Saturday. Your associate opens the order and hits a wall that has nothing to do with the customer standing in front of them.

The fix is procedural, not technical: give your store managers a documented path to cancel or close a stale admin return, and make sure your online returns process does not leave requests hanging in an open state for weeks. Our guide to tightening up your returns process covers the workflow hygiene that prevents this class of collision.

Making in-store and online returns behave like one system

The strategic read on v11.5 is that Shopify is treating the counter as a revenue-retention surface, not a refund desk. Putting the exchange in the cart, next to product search and the Smart Grid, is a deliberate nudge: the easiest action for your associate should be offering a replacement, not processing a refund.

That only pays off if the same instinct exists on the online side of your business. A store that offers instant exchanges in person but a slow refund-by-default form online is training half its customers to take the money and leave. We made the full case for that alignment in turning returns into revenue with an exchange-first strategy.

Three things should match across both channels: your return window, your return reason list, and what you offer before a refund. Store credit is the clearest example. Exchange It issues credit through Shopify's native store credit system on Standard and Advanced plans, so a balance created from an online return is the same balance your POS recognizes at the counter rather than a parallel ledger your staff cannot see.

Exchange It also handles the reverse direction, where an in-store sale needs an exchange processed from the admin. Its exchange flow includes explicit POS order handling: you can mark the new order as fulfilled for POS since the customer is walking out with the item, and process POS orders with no customer information required, which matters for the walk-in sales that never captured an email address.

Merchants who want the replacement order to stand on its own can use Quick Exchange, which creates a new order. Merchants who want Shopify's native same-order framework, with automatic financial netting when the exchange is uneven, can use Returns Manager instead. Both approaches are worth weighing against how your accounting treats in-store versus online swaps, and it is worth revisiting your written exchange policy once you have picked one.

Your v11.5 rollout checklist

Before your next high-volume weekend, work through this list:

  1. Confirm every device is on POS v11.5 or later, and update them together rather than running a mix of versions.
  2. Open your POS roles and review the three new return permissions individually rather than accepting the defaults.
  3. Decide whether manager approval should gate restocking decisions, and confirm which staff hold the Manager approval permission.
  4. Turn on Require return reasons and align that list with the reasons your online returns portal offers.
  5. Retrain staff on one point above all others: exchanges start as returns, and there is no separate exchange button to hunt for.
  6. Run test scenarios for the awkward cases: an uneven exchange, a bundle, a discounted original item, and an order with an open return from the admin.

The stores that get the most out of this release will be the ones that treat it as a policy review rather than a software update. Shopify handed you finer-grained control over who can do what at the counter; the value only shows up if you actually use it.

If you want the online half of your returns program to match what your counter can now do, Exchange It handles exchanges, store credit, and configurable return reasons across both channels, with plans starting at $4.99 per month and a 7-day free trial on every tier.

Related Articles