Skip to main content

Understanding how discounts carry over to exchanges (Returns V2)

How order-level and product-level discounts carry over when a customer exchanges for a different product, including settings, the Swap sales channel requirement and examples.

Written by Guido Kaspers

When a customer exchanges an item for something completely different, you can control whether the original order-level discount, product-level discount, or both are carried over to the exchange.

For example:

  • If they bought an item with a 20% discount, the exchange will also have a 20% discount.

  • If you used a voucher or a fixed amount discount (e.g., £20 off), the same amount will carry over to your exchange.

This feature ensures that exchanges are fair and consistent with the original purchase.

This applies when a customer exchanges for a different product. Swapping for a different variant of the same product is an equal exchange, which handles discounts differently — see Understanding equal exchanges.


What customers see

When a customer exchanges an item, the discount from their original order automatically carries over to the new one. Throughout the process, they’ll see clear confirmation that the discount still applies.

In the exchange flow

  • The discount is shown next to the order items, so customers know their savings will stay the same.

  • A note below the item list explains:

    “Your original discount will be applied at checkout.”

At checkout

  • The same discount (either a percentage or a fixed amount) appears automatically.

  • If the promotion has expired, customers will still see their original discount applied.

  • If both a Shop Now bonus and a carry-over discount are active, both will display on the checkout summary (if your settings allow).

After completing the exchange

  • On the summary page and in their confirmation email, an applied order-level discount appears under the exchange item.

  • Carried-over product-level discounts are not shown on the RMA or in the confirmation email. They are still applied to the exchange — they just aren't displayed in those two places.


How it works

Exchange discounts are controlled from Returns → Settings → Discounts & Credit, in the Exchange for a different product panel, under Exchange item discounts.

You can choose how discounts are reapplied during exchanges.

Apply order level discount

When enabled, Swap will carry over the original order-level discount to exchange items.

This applies to discounts that were applied to the entire order in Shopify.

Example:

If a customer received 20% off their order, the same 20% can be applied to the exchange.

Apply product level discount

When enabled, Swap will carry over product-level discounts to eligible exchange items.

This applies to Shopify discounts configured for:

  • Specific products

  • Specific collections

Eligibility is evaluated per exchange item.

If the new item qualifies under the original discount configuration, the discount is reapplied.

If it does not qualify, no discount is applied to that item.

Collections must be published to the Swap sales channel

The returns portal reads your catalogue through Shopify's Storefront API, which only returns collections that are published to the sales channel making the request. If a collection used by a product discount is not published to the Swap sales channel, the portal cannot see that the exchange item belongs to it, so the item is evaluated as ineligible and the discount is not carried over.

This affects Exchange for Something Else (EFSE) exchanges only. Exchanging for the same product still carries the discount over, because eligibility is taken from the original return item rather than a collection lookup.

To resolve this, open the collection in Shopify, and under Publishing, add the Swap sales channel. For the full setup steps, see How to Set Up Swap as a Sales Channel.

Products used directly in a product discount must also be published to the Swap sales channel for the same reason.

Choosing how the product discount is applied

When Apply product level discount is on, you choose between two options:

  • The same percentage (% applied to replacement item) — the original percentage is applied to the exchange item.

  • Nominal discount value only (the same currency amount) — the original cash value is applied instead of the percentage.

So if the original item had a 10% discount worth £10, the nominal option gives the exchange item £10 off rather than 10% off.

Combining order-level and product-level discounts

If both toggles are enabled:

  • Both discount types can be applied according to their respective rules.

  • Product-level discounts are evaluated per eligible item.

  • Order-level discounts are applied at the order level.

If only one toggle is enabled, only that discount type will be reapplied.

Do not allow shop now bonus

When this setting is enabled, customers cannot apply the Shop Now bonus to items that already have another discount. It applies to both discount types above — order level and product level.

If it is disabled, a carry-over discount and the Shop Now bonus can apply together.

Expired discounts

Discounts can still be reapplied even if they are no longer active in Shopify, provided they existed on the original order.

Deleted discounts. If a product discount is deleted in Shopify, Swap carries over the discount from the original return item when the customer exchanges for the same product.

Removed products. If a customer exchanges an item that had a product discount applied, but that product has since been removed from the discount in Shopify, Swap still carries the discount over — both to the original product and to any other products still covered by that discount.

One-time carry over

Discounts are only carried over once.

If an exchanged item is exchanged again, the original discount will not be applied a second time.


Enabling the feature

Go to Returns → Settings → Discounts & Credit. In the Exchange for a different product panel, the Exchange item discounts box controls whether Shopify discounts carry over to exchanged items.

The controls are:

  • Apply order level discount — when an item discounted at the order level is exchanged, the original order's discount carries over to the exchanged order.

  • Apply product level discount — when a discounted item is exchanged, choose how the original discount is applied to the replacement item, using the two options described above.

  • Do not allow shop now bonus — stops customers applying the Shop Now bonus to items that already have other discounts. Applies to both discount types.


Things to know

  • Discounts will only carry over once (for the first exchange). If the exchange is exchanged again, the discount won’t carry over.

  • The exchange item's discounted price will be updated in Shopify, so if the exchange item is returned, customers can only receive the discounted price.

  • Variant exchanges (e.g. changing size or colour of the same item) are treated as equal exchanges, so the original discount is reapplied. See Understanding equal exchanges.

  • The Shop Now bonus (if offered) may or may not combine with your discount, depending on your settings.

  • Order-level and product-level discounts are controlled independently via dashboard toggles.

  • This also applies when an exchange item is added to an open RMA via Edit RMA — see How to edit an exchange item on an open RMA.

  • Product-level discounts are only reapplied to eligible exchange items.

  • If multiple exchange items are selected, each item is evaluated individually.

    • Fixed product discounts: if the customer is returning one item with a fixed product discount applied, and exchanging for 2 items that are both included in the product discount, the discount is only carried over to one item, instead of both.

    • Product discounts: if a customer is returning 2 items with a product discount applied, and exchanging for 1 item that is included in the product discount, the exchange item will receive a discount from 1 of the return items, rather than both


Shopify exchange orders

When using Shopify native exchanges

When the exchange is processed and a new order is created, the discount is shown in Shopify to align prices in case of a return.

  • The discount appears on the new item.

  • If a Shop Now bonus was also applied, both will be displayed.

When using zero-value exchange orders

For zero-value orders, the discount is not shown in the text, but it is deducted from the exchange item price. This ensures that if the customer later returns the exchange, the refunded amount reflects both the discount and any Shop Now bonus.


Examples

Here are some scenarios to illustrate how discounts carry over:

  1. Exchange with a fixed discount (more expensive item)

    • Original item: £180

    • Discount: £20 voucher → Paid £160

    • Exchange item: £200

    If carry-over is enabled:

    • £20 discount reapplied

    • New total: £180

    • Customer pays: £20 extra

    Logic: The fixed discount value carries over once. The customer pays the difference between what they originally paid and the new discounted price.

  2. Exchange with a percentage discount (cheaper item)

    • Original item: £100

    • Discount: 20% → Paid £80

    • Exchange item: £60

    If eligible and carry-over is enabled:

    • 20% reapplied → New total £48

    • Refund: £32

    Logic: The same percentage is applied to the new item. Refunds never exceed what was originally paid.

  3. Exchange with a fixed discount (Multiple return items)

    • Return Item 1: Original Price £100, £20 fixed discount applied, Price after discount: £80

    • Return Item 2: Original Price £110, £20 fixed discount applied, Price after discount: £90

    • Exchange Item 1: Original Price £120, £20 fixed discount applied, Price after discount: £100

    Logic: only one discount is carried over from the return items, rather than both.

  4. Exchange with a fixed discount (multiple exchange items)

    • Return Item 1: Original Price £100, £20 fixed discount applied, Price after discount: £80

    • Exchange Item 1: Original Price £120, £20 fixed discount applied, Price after discount: £100

    • Exchange Item 2: Original Price £100, £0 discount applied, Price after discount: £100

    Logic: the product discount is carried over to one of the items, rather than divided across both exchange items — which is what happens with order-level fixed discounts.

Did this answer your question?