Will Shopify Webhook Fire with All Sales Channels?

Hi folks,

We have a client with multiple sales channels configured in Sales Channels of their Shopify (Ex: Facebook store, Tiktok shop etc). All the order and revenue data from purchases via those channels is flowing into Shopify where we can see these orders/revenue in the reports.

When we implement sGTM with GA4 and enable purchase webhooks in Stape app, will these orders trigger the purchase webhook and the order data will be sent to the sGTM as normal Online Store orders?

Or does it require some additional setup (Flow app?)

Appreciate your help!
@Alex @Dan

You need to define your server URL with the /data path, which is the standard path used by Data Client. Additionally you can add an event name to the URL: https://gtm.yoursite.com/data?v=2&event_name=purchase_webhook.

However standard webhooks have some serious limitations, such as lack of cookies or customer metrics (new_customer, total spend, etc) and that’s when Flow and a database are needed.

Thanks @Javier_Garijo! I’m asking if webhooks work for orders that come from custom sales channels that are other than your online store

Example:

Here is a list of sales channels that we currently have setup in Shopify

  • Amplify | Bundles & Upsell
  • Collective: Supplier
  • Draft Orders
  • Facebook & Instagram
  • TikTok
  • Yuma
  • Faire: Sell Wholesale
  • Gorgias Live Chat & Helpdesk
  • Marketplace Connect
  • Mirakl Connect
  • Snowball: Affiliate Marketing
  • Online Store
  • Shop

All of them show revenue if you break it down in Shopify Analytics

Our current standard GA4 implementation only tracks orders/revenue for the last two - Online Store & Shop

Question - when we enable purchase webhooks - will that help track orders/rev from those additional sales channels in GA4? or do we need to do something else to ensure they are sent to GA4 (i’m not sure if orders coming from say TikTok store are triggering the purchase webhook in Shopify)

I understood but I guess I wasn’t too clear; let me be more specific:

To correctly process all orders with identifiers (client id, clickID etc) you need to:

  1. enable purchase webhooks.
  2. Configure the server container to receive that webhook (Data Client).
  3. Configure an offline purchase GA4 tag.
  4. Stitch cookies, so that orders that started online but where completed offline will be correctly attributed in GA4. For example, orders paid via external payment processors tend to not register as online orders.
  5. Set up a process so that offline marketing tags don’t fire if the transaction was tracked as online.

I believe Stape has a tutorial on how to do all these steps.