Geschreven door
Vlad Kononov
In dit artikel leggen we uit hoe u 100% nauwkeurige Shopify-tracking kunt bereiken met Stape en GTM aan de serverzijde. Leer hoe u gegevensverlies voorkomt, attributie verbetert en uw marketingprestaties optimaliseert met een betrouwbare en effectieve trackingoplossing. Nauwkeurige Shopify-analytics zijn essentieel om uw bedrijfsdoelen te bereiken.
U hebt betrouwbare gegevens nodig om te bepalen hoe u budgetten verdeelt, de prestaties van uw campagnes te bekijken en het rendement op uw investering te meten. Weten welke eCommerce-KPI's u moet volgen, helpt u deze gegevens te begrijpen en er effectief naar te handelen. Het verlies van conversies kan leiden tot een onvolledig beeld en verkeerde beslissingen. Gelukkig helpt Stape u daarbij. In dit artikel leggen we uit hoe u 100% van uw aankopen op Shopify kunt volgen, wat er ook gebeurt, en alle benodigde gegevens kunt doorgeven aan analytics- en/of marketingplatforms, zodat u betere inzichten en nauwkeurige attributierapporten krijgt en uw pixels effectiever kunt trainen.
Hoewel Shopify een web pixel API heeft uitgebracht waarmee we ons op verschillende events kunnen abonneren en deze nauwkeuriger kunnen volgen, kan het zijn dat u nog steeds een percentage bestellingen mist die niet aan uw advertentie- of analyticsplatforms zijn gerapporteerd. Dit kan verschillende oorzaken hebben - adblockers, ITP-beperkingen, een trage internetverbinding, een storing op het apparaat van de gebruiker of simpelweg pech. Elk van deze factoren kan ertoe leiden dat u uw conversies niet meer kunt volgen.
Maar maak u geen zorgen, Stape helpt u! Met tracking aan de serverzijde voor Shopify kunt u deze veelvoorkomende problemen omzeilen.
De Data Store-functie is beschikbaar bij Pro-abonnementen en hoger. Als u een oplossing op maat wilt, kunt u contact opnemen met onze salesafdeling.
Sla de handmatige installatie van events over
Stape Conversion Tracking for Shopify with Setup Wizard installeert GTM aan de serverzijde in enkele minuten, genereert automatisch belangrijke eCommerce-events en laadt kant-en-klare tags voor Google, Meta, TikTok en meer. Events lopen via het platform van Stape voor tracking aan de serverzijde, zodat u tot 40% meer conversies kunt vastleggen en uw ROAS kunt verbeteren.
Kort samengevat ziet de implementatiestroom er als volgt uit:
Voordat u de onderstaande instructies gaat uitvoeren, moet u Data Store activeren:
1. Log in op uw Stape-account en selecteer uw sGTM-container vanuit het dashboard.

2. Klik op het tabblad Data Store.
3. Klik op Activate Data Store.

Met de Stape Conversion Tracking app op Shopify kunt u eenvoudig Custom GTM en GA4 Loader installeren en uw tracking beter bestand maken tegen adblockers. Nadat u GTM op Shopify hebt geïnstalleerd, verzorgt deze basislaag de gegevensverzameling aan de clientzijde die nodig is voor uw servercontainer. In combinatie met de Cookie Keeper power-up kunt u hiermee ook ITP-beperkingen omzeilen.
We hebben uitgebreide artikelen en kant-en-klare containertemplates die uitleggen hoe u deze stap implementeert. Bekijk ze:
Shopify-tracking debuggen met web- en server-GTM: een complete handleiding – zodra uw basisconfiguratie actief is, moet u de verificatie niet overslaan. De sandboxed checkout van Shopify zorgt ervoor dat tags in GTM Preview kunnen lijken te werken, terwijl ze in productie stilzwijgend mislukken.
Nu moeten we de cookies die we in de toekomst mogelijk nodig hebben opslaan in de Data Store.
In ons voorbeeld slaan we Meta-cookies op bij het event “checkout_started” en sturen we deze van de Shopify-webpixel naar sGTM. Op dit moment is de checkout-token voor ons beschikbaar en kunnen we deze als koppelparameter gebruiken om de webhook later aan de checkout en cookies te koppelen.
Een vergelijkbaar proces kan worden toegepast op elk ander platform waarnaar u gegevens wilt rapporteren.
Het volgende codefragment stuurt een payload met de checkout-token en Meta-cookies naar de URL van de servercontainer. De Data Client neemt dit verzoek voor zijn rekening; standaard accepteert deze verzoeken op het pad /data.
analytics.subscribe("checkout_started", (event) => {
setTimeout(() => {
async function getCookiesPayload() {
try {
const payload = {
"event": "store_cookies",
"cart_token": init.data.cart.id,
"fbp": await browser.cookie.get('_fbp'),
"fbc": await browser.cookie.get('_fbc')
};
return payload;
} catch (error) {
console.error('Error retrieving cookies:', error);
return null;
}
}
async function sendCookiesToSgtm() {
const payload = await getCookiesPayload();
if (payload) {
fetch("https://sst.example.com/data", {
method: "POST",
headers: {
"Content-Type": "application/json"
},
body: JSON.stringify(payload),
keepalive: true
}).then(response => {
console.log('Payload sent successfully:', response);
}).catch(error => {
console.error('Error sending payload:', error);
});
}
}
sendCookiesToSgtm();
}, 1500);
});Nu moeten we deze cookies in Stape Store opslaan met de Stape Store Writer tag, die beschikbaar is in de server-GTM-galerij, zodat we ze later kunnen ophalen en vanuit de webhook aan Meta kunnen rapporteren. Naar deze cookies wordt verwezen via de cart-token, die beschikbaar is bij het event ‘store_cookies’ en die ook aanwezig zal zijn in de native webhook-payload die Shopify verstuurt.
Hier is een voorbeeld van hoe de Stape Store Writer tag kan worden geconfigureerd:

Houd indien van toepassing ook rekening met privacyregelgeving en de toestemmingsstatus van de winkel voor advertenties en/of analytics, zodat u later kunt bepalen of deze gebruiker toestemming heeft gegeven en u deze conversie mag rapporteren. Als uw toestemmingsbanner de Shopify Privacy API ondersteunt, kunt u uw webpixel ook zo configureren dat deze alleen wordt geactiveerd als de vereiste toestemmingsstatus is verleend.
We moeten elke aankoop die op de 'gebruikelijke' manier vanuit de webcontainer wordt gerapporteerd, opslaan in Data Store, zodat we later kunnen controleren of deze conversie al aan Meta is gerapporteerd.
Pas een vergelijkbare aanpak toe als in de vorige stap, maar gebruik deze keer transaction_id als documentsleutel, die ook beschikbaar is in de Shopify-webhook-payload.
Hier is een voorbeeld van een Stape Store Writer tag die hiervoor kan worden geconfigureerd:

Het is beter om het variabeletype “number” van transaction_id om te zetten naar een string om conflicten tussen de datatypen die in sGTM, Shopify en Data Store worden gebruikt te voorkomen. Er is een variabele in de sGTM-galerij waarmee u dit eenvoudig kunt doen.
U kunt een webhook op Shopify op veel verschillende manieren instellen. Een van de eenvoudigste manieren is de Stape Conversion Tracking app te gebruiken - deze bevat alle benodigde payloadgegevens: cart-token, correct gestructureerde bestel- en productinformatie en gebruikersgegevens. U kunt ook de native webhookfunctionaliteit of een andere app naar keuze gebruiken.

We raden ook aan om Stape's Request Delay Power Up te gebruiken om ervoor te zorgen dat het verzoek dat vanuit de webcontainer wordt verzonden de servercontainer bereikt vóór de webhook vanuit de backend. Zo kunnen we de volgorde van verzoeken expliciet beheren, wat in ons geval cruciaal is. Een vertraging van 1 minuut zou voldoende moeten zijn om het aankoopverzoek de servercontainer te laten bereiken, zodat alle benodigde tags kunnen worden geactiveerd en de vereiste verzoeken kunnen worden verwerkt.
In deze stap hebben we het volgende:
Nu moeten we controleren of de binnenkomende webhooks moeten worden verwerkt en aan Meta gerapporteerd, of moeten worden genegeerd omdat de bestelling al is verwerkt.
Daarom halen we transaction_id uit de binnenkomende webhook en controleren we met de Stape Store Lookup variable of deze beschikbaar is in Data Store.

Onze variabele retourneert ‘true’ als deze transaction_id in Data Store wordt gevonden. Dit betekent dat we deze webhook moeten negeren, omdat deze transactie al vanuit de webcontainer is gerapporteerd.
Als onze variabele undefined of false retourneert, betekent dit dat deze transactie om een bepaalde reden niet vanuit de webcontainer is gerapporteerd en dat we deze webhook moeten verwerken.
Stel een extra Facebook-tag in voor Shopify CAPI en vul deze met basisinformatie uit de webhook, zoals value, currency, content_ids, user data enzovoort.
Voor de meest nauwkeurige attributie moet u ook de _fbp- en _fbc-cookies vanuit Data Store rapporteren. Deze kunnen worden opgehaald met de Stape Store Lookup variable die verwijst naar de cart-token die beschikbaar is in uw webhook. Hier is een voorbeeld:

De Stape Store Lookup variable voor _fbp moet de parameter Browser ID in de Facebook-tag overschrijven, en Stape Store Lookup voor _fbc moet de parameter Click ID overschrijven.
Deze Facebook-tag moet worden geactiveerd wanneer onze Stape Store Lookup variable voor transaction_id een waarde retourneert die niet gelijk is aan true.
Voer indien van toepassing op vergelijkbare wijze een extra controle van de toestemmingsstatus uit.
Met deze aanpak bereikt u 100% nauwkeurigheid bij het volgen van Shopify-conversies, zodat u nooit een conversie mist die correct kan worden toegeschreven. U kunt deze aanpak uitbreiden naar elk marketing- of analyticsplatform dat u nodig hebt; zorg er alleen voor dat u in stap 2 alle benodigde cookies opslaat. Vervolgens kunt u in stap 5 een extra tag maken voor bijvoorbeeld TikTok, Snapchat, GA4, Google Ads enzovoort. U hoeft alleen de benodigde parameters te overschrijven met cookie-waarden die u uit Data Store hebt opgehaald.
Voor complexere platforms zoals Google Ads biedt Stape al uitstekende oplossingen met een eenvoudig authenticatieproces, waaronder de Google Ads Offline Conversion tracking tag en Conversion Adjustment tag, als u dergelijke specifieke behoeften hebt.
Neem gerust contact met ons op als u vragen hebt.
Wilt u met tracking aan de serverzijde beginnen?
Probeer gratis
Opmerkingen