Skip to main content

How Loop Returns exchanges from Shopify are handled

Return apps such as Loop Returns, Redo and Returnly run inside Shopify. SKU.io doesn't connect to them directly, and there's nothing to set up in SKU.io for them. They create their returns, refunds and exchange orders in Shopify, and those reach SKU.io through your Shopify connection like any other order.

A few of these records would look wrong if SKU.io treated them as ordinary orders, so it recognises them and handles them differently.

Loop exchange orders are paid for by the return​

When a customer exchanges an item through Loop, Loop creates a new Shopify order for the replacement, numbered EXC- followed by the original order number, for example EXC-10452-1. That order costs the customer nothing new. It's funded by the value of the item they sent back.

SKU.io sees the EXC- number and links the exchange order to the sales credit on the original order:

  • The exchange order shows a Funded by Credit banner, with the sales credit number and the amount it used.
  • The sales credit lists the order under Applied to Exchange Orders, so its open balance drops by that amount.
  • The exchange order counts as no new revenue. Profit reports don't show the replacement as a fresh sale, and its cost of goods still follows the stock you ship.

The link is made against the original order's open sales credit created closest in time to the exchange, within a day either side. Loop usually creates the exchange order a few seconds before the refund that creates the credit, so SKU.io links the exchange again when the credit arrives. You don't need to do anything.

Fees Loop keeps​

Loop can keep part of the customer's credit for return shipping or restocking. When a small amount is left on the sales credit after the exchange is applied, up to 15% of the credit, SKU.io records it under Fees Retained on the sales credit, so the credit closes at zero. A larger leftover balance stays open, because it's more likely to be credit the customer is still owed. Refund it or apply it as you would any other sales credit.

Edited returns don't leave stale RMAs behind​

When a customer changes a return in Loop, Loop cancels the Shopify return and creates a new one. SKU.io cancels the RMA it made for the old return, as long as nothing has been received against it yet. The parcel then matches the RMA for the new return at the receive station. An RMA that already has received items is never cancelled this way.

Redo shipping protection isn't fulfilled​

Redo adds a shipping-protection line to Shopify orders and marks it fulfilled on its own. SKU.io brings that line in as a charge on the order, not as a product, so it never needs picking, doesn't hold up the real shipment, and doesn't split the order into extra fulfillments. Gift-card and insurance lines are treated the same way.

What isn't covered​

  • Returnly and Redo returns come through Shopify as ordinary returns and refunds. Only Loop's EXC- exchange orders get the credit linking above.
  • An exchange order whose original order isn't in SKU.io, or that has no open sales credit within a day of it, stays unlinked. Its lines then show the full price as revenue.
  • Exchanges made in SKU.io itself use Create Exchange on the sales credit. See Resend and exchange an order.

Next steps​

Last verified: