Variant exchange is a resolution that enables customers to request an exchange for a variant of the original item purchased - such as a different size or color.
In your eCommerce platform account, you can set up variants for each product, and manage inventory for each variant.
When a product’s variants have different pricing, the price difference will be displayed in the return portal.

Note: Variant exchanges are one-for-one exchanges. For each item a customer returns, they can select one new variant to exchange it for. This differs from product exchanges, which are any-to-any exchanges and enable customers to add multiple new items.
When a variant exchange is selected for at least one item in the return request, ReturnGO will create a draft order in your Shopify store once the request is approved. This draft order will be $0 only for even-price exchanges; if the variants have different prices, the draft order will reflect the corresponding charge or refund. On other platforms, it may be a regular order.
At the same time, a new action button, RELEASE EXCHANGE, will be available on the RMA page after RMA approval.
For Shopify stores, the RELEASE EXCHANGE button moves the draft order that was created upon RMA approval into an actual unfulfilled order in Shopify, which you can then process like any order.

Configuring Variant Exchange Resolutions
There are many settings that you can configure to manage how a variant exchange resolution will behave in your returns flow.
Tip: The default settings work in most cases.
To configure variant exchange resolutions:
- Go to Settings > Resolutions.
- In the Exchange Resolutions section, open a variant exchange resolution to edit it or create a new one.

3. In the Details section, edit the internal name for this resolution. This name will not be displayed to customers in the portal.
4. Edit the display name, which is how this resolution will be displayed in your return portal.
5. Edit the description, which is how the additional details of this resolution will be displayed in your return portal.

6. In the Pricing section, set the free exchange variant price range.
- The default is 100%-100%, meaning that exchanges for items of the same price will be free while customers will be charged the difference for more or less expensive items.
- If you change the range, customers won't be charged for cheaper items or refunded for more expensive ones within this range.
- You can change the reference price for price differences in the Exchange section of Settings > Store Settings (read below for details).
Note: When a new item falls outside the configured free exchange range, the price difference is calculated against the original item’s actual price.
7. Toggle Charge price difference for more expensive variants to calculate the price difference and charge customers for variants above the free exchange range.
8. Toggle Refund price difference for less expensive variants to calculate the price difference and refund customers for variants below the free exchange range.
9. Select the refund method for how the customer will receive the refund for any price difference.

10. In the Stock section, select Allow out-of-stock exchange to allow customers to select out-of-stock variants.
11. Set a Minimum available stock threshold.
12. Add a link to the size chart you want to show customers when selecting a new product.
13. Add a size variant option name, to display the size chart URL only for this type of variant (i.e size, color).

14. In the Shipping section, configure how shipping will be applied to the new product that will be sent out:
- Use any existing free shipping rate: ReturnGO will automatically apply the first available free shipping option from your store. If no free shipping option is available, the shipping field will remain blank, and you will need to set it manually.
- Select shipping rate manually: No shipping option is applied by default. You will need to choose a shipping rate directly in your eCommerce platform while the exchange order is in draft status.
- Create custom free shipping rate: A specific free shipping rate will be created and applied to all new exchange orders. You will need to enter a name for this custom free shipping option.
- Always use one selected shipping rate: A specific existing free shipping rate will always be applied by name to all exchange orders. You will need to enter the shipping rate name and define a fallback behavior if the selected rate is not found. The fallback can either leave the shipping rate blank for manual selection or automatically create and apply a custom free shipping rate with the same name.

Note: The Exchange order shipping setting does not currently apply to manual exchanges.
15. Click on the save icon to save your changes.
You can then use this resolution to build your return policy in the return policy settings, where you can configure additional settings such as eligibility rules, fees, and more.
Price Difference Resulting in a Refund or a Charge
To settle exchanges where the chosen exchange item has a different price than the originally purchased item, variant exchange resolutions can be configured to:
- Refund the customer the price difference for less expensive variants.
- Charge the customer the price difference for more expensive variants.
Anything within the configured free exchange range will be a free 1-to-1 exchange. Items outside the range will have the price difference calculated based on the original item’s actual price (the paid price).
Using Catalog or Paid Price for the Price Difference
You can define which reference price to use when calculating the price difference:
- Paid price
- Catalog price at the time of RMA creation
- Catalog price at the time of purchase
To configure the price difference price source:
- Go to Settings > Store Settings.
- Open the Exchanges section.

4. Click on the save icon to save your changes.

Example:
Original item:
- Catalog price: $25
- Purchased with a 20% discount
- Net paid price: $20
- Free exchange rate is set to 100% to 100%
If the reference price is set to the catalog price:
- Choosing a $25 variant will result in a price difference of $0.
- Choosing a $30 variant will result in a charge of $5.
If the reference price is set to the paid price:
- Choosing a $25 variant will result in a charge of $5.
- Choosing a $30 variant will result in a charge of $10.
Free Exchange Range
The free exchange range is the price range where customers can exchange items without paying extra or getting a refund.
- If the new item is within the range, the exchange is free.
- If the new item is outside the range, the price difference is calculated based on the original item’s actual price (paid price).
Example:
If the original item costs $100, and the free exchange range is set to 80%-120%, any new variant priced between $80 and $120 will be a free exchange.
In this case:
- Choosing a new variant that costs $90 will be a free exchange because $90 is within the $80-$120 range.
- Choosing a new variant that costs $110 will also be a free exchange because it is within the $80-$120 range.
If the new variant is priced outside this range, in this case:
- Choosing a new variant that costs $130, the customer will be charged $30 (calculated based on the original item’s price).
- Choosing a new variant that costs $75, the customer will receive a refund of $25 (calculated based on the original item’s price).
Set the range to 100%-100% if you want only exact-price exchanges to be free. Anything outside that will result in a charge or refund.
Note: Most stores use the default setting of 100%-100%.

In this example, the price difference is based on the paid price.
Charging and Refunding Price Differences
If the price difference results in a refund, you can use REFUND/CREDIT on the RMA page to issue the refund.
If the price difference results in a charge, you can use RELEASE EXCHANGE on the RMA page to send an invoice to the customer.

Applying Fees on Variant Exchanges
If you configure a variant exchange policy rule to issue either a restocking fee and/or a return label fee, ReturnGO will create a draft order in your store which itemizes the fees.
This will automatically email the invoice to the customer. The customer will need to settle it before the exchange request can be approved.
Alternatively, you can have customers pay any fees directly in the portal using Portal Checkout.

Allow Exchanged Items to be Returned
You can enable previously exchanged items to be returned. Resolutions will be offered based on your configured policy rules.
To enable exchanged items to be returned:
- Go to Settings > Store Settings.
- Open the Exchanges section.
- Enable the Allow Exchanged Items to be Returned toggle.
- Click on the save icon to save your changes.

Note: When disabled, previously exchanged items cannot be returned in any form.
Stock Display for Variant Exchange Based on Location
This feature is currently in beta and not yet available to all merchants. Apply to join the beta.
You can configure stock allocation to control which warehouse inventory is displayed to customers during variant exchanges based on the country associated with the original order, using custom rules to define which inventory is shown in the return portal for each country.
Note: By default, ReturnGO shows all inventory to all locations.
To configure a custom inventory rule:
- Go to Settings > Store Settings.
- Open the Exchanges section.
- Click ADD RULE to create custom rules to override the default inventory display for specific warehouse locations during exchanges.
- Define which inventories to show to customers based on location:
- Select warehouse location
- Select zones
Note: The dashboard displays all countries, and unsupported countries are automatically filtered by platform behavior or eligibility settings.
5. Click APPLY.
Note: Customers will only see inventory that is available for exchanges in their location. Limited inventory visibility ensures that only products stocked in the relevant country are selectable, preventing exchanges for unavailable items.
Fallback Rule
If a country is not explicitly assigned to a warehouse, its inventory becomes part of the Fallback rule (Rest of the World). Customers in these countries will see inventory in the return portal from at least one warehouse, or as defined in your Fallback rule.

Limiting Inventory Visibility
If you want to limit which customers can see inventory from specific warehouses, you can:
- Define country eligibility in your policy rules.
- Assign countries to warehouses manually to control which warehouse inventory is displayed for each country.
Fulfill Exchanges Based on Order Country
This feature will be deprecated and replaced by the Stock Display for Variant Exchange Based on Location.
You can enable location-based exchanges, allowing customers to see only items available in warehouses in their country when performing an in-portal exchange.
This may be relevant if you have multiple warehouses in different countries for the same market and do not offer international shipping.
To enable location-based exchanges:
1. Go to Settings > Store Settings.
2. Open the Exchanges section.
3. Enable the Fulfill Exchanges Based on Order Country toggle.
4. Click on the save icon to save your changes.

Note: When the Fulfill Exchanges Based on Order Country setting is enabled, any products or variants that aren’t in stock in the country where the original order was placed will not be available for selection in the return portal.
Replace Option
The replace option is part of the variant exchange functionality. Replacement means exchanging an item for an identical item. This is typically used when the original item was defective or damaged, and the new customer needs to receive a replacement for that item.
When using the Edge portal, items with multiple variants, such as size or color, are shown as Variant Exchange. Items without selectable options are shown as Replace. You can customize the text that appears in the portal.
On the Classic portal, the Replace option is shown only if you have a specific policy rule configured for it.
