Skip to main content

🔁 How the Webshipper WMS Integration Works (Functional Overview)

Jeppe Oestergaard Hansen avatar
Written by Jeppe Oestergaard Hansen
Updated over 2 months ago

Once the Webshipper WMS integration is activated and your webhook is configured, Returnflows will automatically handle exchange orders from creation to fulfillment – with full sync to Shopify.

This article explains how the system works in practice when a customer initiates an exchange.


🧱 Overview of the Flow

  1. A customer starts a return and selects exchange

  2. Returnflows creates a new order in Webshipper

  3. The order is assigned status: “On hold”

  4. When the return is confirmed or the parcel is handed in → the order is released

  5. When the exchange order is shipped → Shopify is updated automatically

(order in Shopify, as only 1 order)

Uploaded image


In Webshipper, this would be 2 seperate orders, containing one product each:


🧾 What does the order look like in Webshipper?

When an exchange is created:

  • A new order is created in Webshipper

  • It’s tagged as #EXCHANGE-#XXXX

  • Only the new product (to be sent to customer) is included

  • Status = On hold

Uploaded image

(Exchange order created in Webshipper)


🔓 When is the order released for fulfillment?

The order changes from “On hold” to “Awaiting” (ready to pick/ship) based on whether Instant Exchange is active:

Condition

Required trigger

Order released when...

Instant Exchange = ON

Return parcel is handed in

Webhook: shipment.event.in_transit

Instant Exchange = OFF

Return is closed and approved

Webhook: return.closed


✅ What happens in Shopify?

When the Webshipper exchange order is marked as shipped:

  • Returnflows listens via webhook for the status update

  • We fulfill the corresponding item in Shopify

  • If there's a price difference, we capture payment for that amount

The customer still sees a single order in Shopify, but all logic is handled through Webshipper and Returnflows.


🔍 How to identify exchange orders in Webshipper

Exchange orders can be identified using:

  • #EXCHANGE in the order number

  • Status: On hold / Awaiting

  • Same Shopify reference (original order number retained)

  • Webshop = Shopify (e.g., returnflows.myshopify.com)

Uploaded image

(Webshipper order list showing exchange orders)


📌 Important to know

  • Only one Webshipper order is created per exchange, even if multiple items are included

  • In Shopify, it’s still the same original order – we update fulfillment inline

  • Returnflows does not send original return items to Webshipper – only the item to be shipped


💬 Need help?

Not sure why your order didn’t release? Or how to test webhook flows?

Chat with us – we’ll help you get it working right 🧠

Did this answer your question?