A customer wants to swap an item for one that costs more, or less, and after you add the exchange Shopify shows a balance: either the customer owes you money or you owe them a refund. Handled in the wrong order, you can end up refunding money you then have to collect back. This guide explains how Shopify calculates the difference, what causes surprises and how to settle it.
How Shopify calculates the balance
Shopify's returns guide says return fees and exchange items are applied against the returned items to work out whether a refund is due or payment needs to be collected. The order total then updates to show the remaining balance.
| Situation | What happens |
|---|---|
| New items cost less | You refund the difference, now or later |
| New items and fees cost more | You collect the difference from the customer |
| Even exchange | The money paid for the returned items covers the new items |
Why the balance looks wrong
Most surprises come from discounts and fees, not the item prices.
- Order-level discounts: Shopify states they don't apply to exchange items, so a new item can cost more than the customer expects
- Return fees: A restocking or return shipping fee reduces the credit from the returned item
- Partial processing: Shopify notes that processing only some items can change the result, so processing only the exchange might require payment even if processing everything would end in a refund
Find the right numbers before you commit
Open the order and start the return without processing it yet. Shopify shows the estimated balance as soon as you add exchange items.
- Returned items: What the customer actually paid for them
- Exchange items: Current price, with any discount you add
- Fees: Restocking and return shipping
- Result: Refund due or payment due
Settle it step by step
These steps follow Shopify's returns documentation.
- Start the return: Open the order and click Return, or More actions then Return if some items are unfulfilled
- Add the exchange: Click Add products in the Exchange items section, choose the items, then Done
- Adjust the price if you want: Click an exchange item's price to add a product discount, for example to honor the original sale price
- Create the return: Click Create return
- Customer owes you: Send an invoice when processing the return, or capture payment or mark the order as paid
- You owe the customer: Issue the refund now or later
Shopify advises against issuing refunds during partial processing if you'll need to collect payment for the remaining items later.
Limits to know
- ❌ Returns only work on fulfilled items that haven't been refunded
- ❌ Custom items can't be added as exchange items
- ❌ Exchange items can't be added to orders with duties
- ❌ Returns and exchanges share the same limitations as order editing
Prevent it
State in your return policy whether exchanges are price-matched, and whether fees apply. See refund, exchange or store credit for choosing the outcome.
Doing this at scale
ReturnSage reads return requests created in Shopify with your full return policy and the order and customer context, recommends approve, exchange, store credit, deny or escalate with a confidence score and cited policy clauses, and drafts the reply. You decide with one click. It does not create labels or run a returns portal. See ReturnSage.