CAPI Doesnt record any event if the browser pixel is absent

hi, hope everyone is well.

Problem: The pixel is not tracking Server events for Shopify.

This is the follow-up for this case Purchase Event for Shopify The problem with the mentioned case was that the purchase event wasn’t being registered, however, the issue was that the price of the order was a string and not a float. it was resolved with the help of the support team.

I have two pixels on Shopify, one is the default partner integration and then the other is via GTM. the Pixel with partner integration recorded one purchase and 11 ATC and other events. All were from the CAPI, probably because the user was from Apple or using an Ads blocker.

Whereas the GTM pixel recorded 0 purchases and only 2 ATC events.

I am using the capi-shopify/analytics.js at main · stape-io/capi-shopify · GitHub this code, and as far as I can understand it, the code looks for a network request or script tag with facebook.com/tr/ and then match the event type. Kindly provide a fix for this issue, as I am using the GTM Pixel for ads, and it’s not recording any CAPI events.

Website URL https://www.aumi4.com/
The purchase code is mentioned here: Purchase Event for Shopify

-Hassan

I checked your site, and you are not using a custom domain for GTM SS.

We highly recommend configuring it. As it helps pass adBlockers and allows you to set 1st party cookies for your domain.

As you mentioned, our script works with “facebook.com/tr/” requests. If a web facebook pixel is blocked by adBlockers, events will not send to the server.

You can’t fix this as you can’t modify the Shopify server code. And that’s why our solution works with the official FB App from Shopify and uses browser events.

To solve your current issue, we recommend you use our solution how described in our tutorial. The main thing is to use FB App and GTM on one FB pixel. As we use event_id from native Shopify integration, all the same events that are sent from GTM will be deduplicated. And in the case when the user blocks JS code, you will still have events tracked from native FB App server integration.