Current Additional Shopify Webhooks Options:
When a POS order on Shopify is refunded fully or partially, a Refund object on Shopify is created and if configured, a webhook endpoint will be triggered in Extensiv Order Manager and we will automatically create a RMA for the refunded items sent by Shopify.
⚠️ NOTE: This webhook will only create an RMA for orders in Shipped status in Order Manager. This webhook now works for both Shopify e-commerce and POS orders. For information on how the e-commerce refund webhook will work, see this article.
⚠️ WARNING: Webhooks are not retroactive, so if they were not configured properly at the time of an event in Shopify, the event will not apply in Order Manager.
⚠️ NOTE: This Refund Create webhook will work for both POS and non-POS orders. For information on how the refunds will operate for e-commerce orders, see the Order Manager RMA Creation Details (specific to e-commerce orders) section of the article here.
How to set up the Refund Webhook
In Order Manager, navigate to the Settings Module, click Sales Channels, select the Shopify sales channel and click the Edit button. From here, go to the Connection tab and click Edit Integration.
Expand the Webhook Configuration view.
Check the box for the Refund Webhook.
Here you can also choose the option “Restock items from Refund based on Shopify’s restock value”, which will allow Shopify and Order Manager to communicate if inventory will be restocked into Order Manager.
If this setting is enabled AND the return in Shopify has a restock value of true, Order Manager will set the action on the RMA as Reinsert.
If this setting is enabled AND the return in Shopify has a restock value of false, Order Manager will set the action on the RMA as Write Off
If this setting is disabled, Order Manager ignores the restock value from Shopify and the RMA action will have to be manually selected
Click the Save button.
Order Manager RMA Creation Details (specific to POS orders)
When a refund is created in Shopify, the webhook will be hit and we will create an RMA for all the items involved. This works across splits and bundle breakdowns. The RMA in Order Manager will be automatically created with the below default information from Shopify.
If an RMA is created in this flow, it will be marked Received on the date the webhook was hit.
RMA Number = RMA-REFUND-[order-number]
RMA Notes = Created from Shopify Refund Webhook: [refund-reason-from-shopify]
Tracking Number = “In Store Return”
RMA Type = Refund
RMA Reason = Other
Loss to Seller = $0.00
RMA Item Action = IF the Restock items from Refund based on Shopify's restock value checkbox is enabled AND Shopify says to restock, then this value will be "Reinsert". Otherwise, it will be set to "Write Off"
The Returns Location can actually be configured using Shopify Location Warehouse Mappings. If we have a mapping for the Location ID we receive from the refund, then we will choose that warehouse’s returns location. If there are multiple warehouses pointing to this location, then we will choose the first one we find. If that warehouse does not have a returns location, then we will use the original order fulfillment source’s returns location.
Additionally, we have a feature in beta that would allow you to dictate a single Default Warehouse (as long as it's active) in place of the Returns Location via Warehouse Mappings for all of your RMAs created via returns webhooks after enabling this feature.