Skip to main content
Integration with Loop Returns
Daryna avatar
Written by Daryna
Updated over a week ago

Loop Returns is a Shopify platform that enables merchants to simplify the returns process and encourage customers to turn returns into exchanges by offering 4 ways to return: exchange, shop now, store credit, or refund.



Integrate Omnisend with Loop Returns to send email and SMS updates based on the return-related events sent by Loop Returns.

Setup Process

Firstly, create an API key. To do this click on your brand name in the top right corner -> Store settings:

Click on the 'API keys' section:

Then click the 'Create API Key' button:

Enter the name of your API key, keep default settings and click 'Save':

Then proceed to your Loop Returns account. Go to Settings - > Integrations - > enable the toggle next to the Omnisend integration:

Paste your API key into the corresponding field in the popup window and click 'Save':

That's it! The integration is enabled.

What Data is Passed

Once the integration is enabled, a number of custom events will be created. Here's a full list of them:

  • Loop Return Created

  • Loop Return Status Updated

  • Loop Label Created

  • Loop Label Updated

  • Loop Exchange Out Of Stock

  • Loop Out Of Stock Resolved

  • Loop Return Expiring

  • Loop Return Expired

  • Loop Instant Exchange Reminder

  • Loop Instant Exchange Notice

  • Loop Payment Transaction

  • Loop Refund Transaction

All of these custom events will be passed along with a number of different properties. You'll be able to use these properties to split the workflows into a few different flows using the Split block. Also, you'll be able to add them to your Email/SMS content in the Automation Workflows based on each of the custom events passed by Loop Returns.

Custom property name and data type


phone (string)

The customer’s phone number

email (string)

The customer's email address

fields.returnId (integer)

Loop Generated RMA#

fields.returnStatus (string)

Current Return Status: [open, closed, cancelled, expired].

fields.order (string)

Original Order Name

fields.statusPageUrl (string)

Return Status Page URL

fields.labelsEnabled (boolean)

Whether Labels were enabled for this return

fields.label (string)

A link to download the label

fields.trackingNumber (string)

The tracking number for the label

fields.trackingUrl (string)

A link to the package’s tracking page. We recommend using the Return Status Page instead.

fields.trackingStatus (string)

Current transit status of the return package. [new, pre_transit, in_transit, out_for_delivery, delivered, cancelled, unknown]

fields.trackingCarrier (string)

The name of the carrier that issued the label.

fields.returnOutcome (string)

The outcome of the return. [exchange, upsell, refund, credit, exchange+refund, exchange+credit].

fields.outOfStockOutcome (string)

The outcome of an Out of Stock event (only present on relevant events). [credit, refund].

Building Workflows Using Loop Returns Custom Events

To create a workflow based on one of the Loop Returns custom events, go to the Automations tab - > click 'New workflow' button:

Then create a Custom Workflow:

Pick one of the Loop Returns events as a trigger for your workflow:

Then you may split based on any of the properties passed along with this event. For example, you can create separate paths for those who have picked 'I found something else I like more / I'd like a different item instead' as a Return Reason and send everyone who has picked any other reason through another workflow path:

Then proceed to build your workflow further by adding Email and/or SMS blocks that will be sent to everybody who'll trigger this workflow. To add properties passed along with the custom event to the email/SMS content, use personalization tags. Here's a simple example of an email that you can send to the customer informing him that the new Return for his order has been just created and that he can visit the Return Status page to track the progress.

Did this answer your question?