A customer emails: “The medium doesn’t fit, can I swap it for a large?” Simple request. Except now you are manually refunding the order, asking them to place a new one, chasing the price difference, and updating stock by hand. Multiply that by every wrong size, wrong colour, and “actually I’d prefer the other model” request, and exchanges quietly eat hours of your week.
Handled by hand, an exchange costs more than the sale is worth. Handled properly, it saves the sale.
Zorem Returns, our WooCommerce returns plugin, adds a complete exchange workflow to WooCommerce. Customers request an exchange themselves from their account, pick the replacement variant or a different product entirely, and the plugin handles the price difference, the replacement order, and the notification emails. You approve, ship, done.
This guide walks through setting up product exchanges and processing them from request to completion.
How to set up and process exchanges
1. Enable exchanges in the Returns Center
Go to WooCommerce → Returns Center → Settings → Exchange Settings, where you control exchange rules, the exchange window, reasons, and guidelines. Exchanges run alongside refunds and store credit, so customers see exchange as a resolution option on eligible items.
2. Decide how far exchanges can go
By default, customers can swap an item for a different variant of the same product: a medium for a large, blue for black. Turn on cross-product exchange and they can swap for any purchasable product in your catalogue instead. Since version 1.7.3, multi-product exchanges let customers pick a separate replacement for each item in the same request.
3. Set your price-difference rules
Cross-product swaps rarely match to the penny, so you choose what happens. If the replacement costs more, the plugin creates a pending payment order for the difference. If it costs less, it can issue a store credit coupon automatically, calculated with tax included so the customer gets exactly what they are owed. Differences are recalculated server side, so a tampered form submission cannot change what is charged.
4. Add exchange reasons and guidelines
Define the reasons customers pick from (wrong size, changed mind, arrived damaged) and write short guideline text that appears on the request form. Reasons feed your analytics later, so make them specific enough to act on.
5. Let customers submit the request themselves
Logged-in customers start an exchange from the order view in My Account. They select the items, choose the replacement product or variant from a live picker that checks stock, give a reason, and can attach photos up to 5 MB. Guests can use the return portal with just their order number and email, no account needed.
6. Review and approve from the Returns dashboard
Every request lands in a central dashboard where you approve, reject, or complete it. Internal notes keep your support team’s context private to admins. If a customer calls instead of using the form, you can create the exchange request yourself straight from the order edit screen.
7. Ship the replacement and complete
Approving an exchange creates a linked child order for the replacement items, so fulfilment, stock, and accounting stay accurate. When you mark the exchange complete, the customer is notified automatically. All 14 email templates are customisable with a live preview, and exchange emails include the exact replacement items requested, so nobody has to ask “which one did I order again?”
8. Keep abuse in check
Built-in fraud prevention lets you set a per-customer return limit over a rolling window and blocklist repeat offenders. You can also apply restocking fees at the product, category, or global level when an exchange genuinely costs you money to process.
Manual exchanges vs Zorem Returns
| Manual process | With Zorem Returns |
|---|---|
| Email back-and-forth | Self-service request form |
| Refund plus new order | Linked exchange order |
| Price difference chased by hand | Auto payment or store credit |
| Stock updated manually | Live stock checks on replacements |
| One-off notification emails | 14 automated templates |
| No paper trail | Central dashboard and internal notes |
Why exchanges beat refunds
Every refund is revenue walking out the door. An exchange keeps the sale, and often the customer, because the fix took two minutes instead of two support tickets. With the workflow automated, saying yes to exchanges stops being a cost decision and becomes a retention one.
Frequently asked questions about WooCommerce product exchanges
Does WooCommerce support product exchanges by default?
No. WooCommerce core can issue a refund against an order, but it has no exchange flow: no way for a customer to request a swap, pick a replacement, or handle a price difference. Processing an exchange manually means refunding, asking the customer to reorder, and adjusting stock by hand. An exchange workflow needs a returns plugin that includes it.
What is the difference between a variant exchange and a cross-product exchange?
A variant exchange swaps an item for a different version of the same product, a medium for a large, one colour for another. A cross-product exchange lets the customer swap for a different product entirely. Cross-product swaps need price-difference handling, since the replacement rarely costs exactly the same, which a good exchange tool calculates automatically.
How are price differences handled in an exchange?
You set the rule. If the replacement costs more, the plugin creates a pending payment order for the difference; if it costs less, it can issue a store credit coupon, calculated with tax included. Because the difference is recalculated on the server, the amount charged cannot be altered by tampering with the form, which protects you from manipulation.
Can customers request an exchange without an account?
Yes. Logged-in customers start from My Account, and guests can use the return portal with just their order number and email. Both select the items, pick a replacement from a live stock-checked picker, give a reason, and can attach photos. Guest support matters if you run guest checkout, since account-only tools exclude those buyers.
Do exchanges keep my stock and accounting accurate?
Yes. Approving an exchange creates a linked child order for the replacement items, so stock levels, fulfilment, and accounting stay correct rather than being adjusted by hand. Live stock checks during the request also stop a customer choosing a replacement you cannot actually send, which is a common failure point in manual exchange handling.
Conclusion
Exchanges only feel expensive when you process them by hand. With a self-service request, automatic price-difference handling, linked replacement orders, and accurate stock, saying yes to a swap becomes the easy, revenue-keeping choice. Zorem Returns turns the request-to-completion flow into something your customers run themselves and you simply approve.
↩️ Ready to keep the sale when customers want a swap?
Self-service exchanges, automatic price difference handling, and a single dashboard for every request.
14-Day Money-Back Guarantee. HPOS Compatible. WPML Ready. Priority Support.
