Using Loop and Fulfil.io together

Edited

OVERVIEW

While Loop and the Fulfil ERP do not have a direct integration, Loop has built into Shopify's native returns and exchanges infrastructure, which means that third parties like Fulfil can manage returns using data found within Shopify. With Shopify as the source of truth, Loop sends returns data to Shopify and Fulfil pulls the information directly from Shopify to perform accounting, order and inventory management functions for our mutual customers.

FAQ

Here are a few common questions about using Loop and Fulfil to process your returns. 

Q: How do I get started? 

A: All you need to do on the Loop side is reach out to your Merchant Success Manager or support@loopreturns.com and ask to toggle on “Return Refunds” in your Loop admin. There may be some additional configuration required on the Fulfil side, which you can work through with your Fulfil support contacts. 


Q: Where can I go to learn more about managing returns and refunds in Fulfil? 

A: The returns and refunds pages of Fulfil's support documentation are the best place to go for additional information on those workflows


Q: Is there anything else I might need to configure or setup to ensure everything is working in both systems? 

A: All of the functionality described above should work “out of the box” regardless of which Loop or Fulfil plan you are on. That said, if you are using Stripe to process exchanges through Loop, some of the fees associated with these transactions may not make it into Fulfil. If that applies to your setup with Loop, you can use Fulfil's native Stripe integration to bring in the payment entries that Loop isn't sending. Please create a Fulfil support ticket if you need additional help setting this integration up. 

Q: Are there any known gaps in the integration experience today? 

A: Yes, the Loop and Fulfil teams are tracking 3 items that merchants should be aware of. Below is a description and a recommended workaround for each issue. 

  1. Stripe Payment Recording Issues.

Issue: Payments for higher-value exchange items are recorded in Loop using Stripe but these payments are not transferred to Shopify.

Context: This missing payment information results in incomplete financial records in Fulfil. The invoice for the exchanged item remains open in Fulfil due to the absence of payment data. Loop's inability to pass the Stripe transaction to Shopify means these invoices stay unresolved unless handled manually.

Workaround: These invoices can be manually marked as paid to record the payment transaction.

  1. Restocking/Handling Fee Issues.

Issue: Restocking or handling fees applied on returns are imported into Fulfil as "Refund discrepancy" lines, which makes them difficult to distinguish from other refund discrepancies or order adjustments. This only becomes a challenge if merchants charge a handling fee for returns in Loop.

Context: This causes confusion when reviewing transactions, as not all refund discrepancies are related to restocking fees.

Workaround: Since the restocking fees come in without any product associated, they will record against a merchant's default revenue account. These entries can then be filtered for and re-coded as needed.

Potential Solution: Shopify will be expanding on their native support for fees in the future to better support integrations into third party systems like Fulfil. Loop will continue to monitor these developments and will be sure to incorporate them once available. 

  1. Order Adjustments Leading to Revenue Overstatement.

Issue: Loop creates order adjustments on the original order when handling exchanges, as it cannot transfer payments directly to the exchange order.

Context: This leads to incorrect revenue reporting, as both the original and the exchange orders show transactions. For example:

Exchange for Same Value:

A $100 item is exchanged for another $100 item. The original item is returned in Shopify.

Loop creates a $100 adjustment on the original order since payment cannot be transferred.

Result: Both a $100 adjustment and a $100 exchange order, overstating revenue by $100.

Exchange for Lower Value:

A $100 item is exchanged for an $80 item with a $20 refund. The original item is returned in Shopify.

Loop creates an $80 adjustment on the original order.

Result: Both an $80 adjustment and an $80 exchange order, overstating revenue by $80.

Exchange for Higher Value:

A $100 item is exchanged for a $150 item. The original item is returned in Shopify.

Loop creates a $100 adjustment on the original order.

Result: A $100 adjustment and a $150 exchange order, overstating revenue by $100.

Workaround: These adjustments would need to be identified on Loops' side and could then be reversed via importing credit notes/journal entries.

Potential Solution: Loop is testing the new exchanges update to see if it addresses this.


Please contact support@loopreturns.com for any additional questions.