Webhook Deduplicatie

Tobias Pennings
October 22, 2024

Tracking en dataverzameling zijn de kern van elke succesvolle online marketingcampagne. Maar met de toenemende privacyregels en strengere eisen op het gebied van consentverwerking zoals AVG en ePrivacy, wordt het steeds lastiger om volledige data-inzichten te krijgen. Om first-party data te verzamelen is server-side tagging dé ideale tracking methode. Maar alleen een Server-Side Tagging setup is niet genoeg om de meest accurate data te verzamelen. Samen met geavanceerde oplossingen zoals Webhooks is dit wel mogelijk zoals je in ons vorige blog-artikel hebt kunnen lezen.

Voorheen kon je via AdPage alleen webhooks gebruiken om de GA4 purchase events te vervangen die je client-side op je GTM web container aanmaakte. Maar dankzij een nieuwe functionaliteit is het voortaan ook mogelijk om de GA4 purchase events vanuit client-side als leidend te gebruiken, en de purchase events vanuit webhooks als aanvulling hierop te gebruiken.

Om de betrouwbaarheid van je tracking verder te verbeteren, kan webhook deduplicatie ook dienen als een extra failover optie. In het geval dat het meten van aankopen via client-side uitvalt of niet goed functioneert, zorgen de webhooks ervoor dat je alsnog cruciale aankoopdata kunt vastleggen. Dit biedt een extra vangnet om gegevensverlies te voorkomen, zodat je geen waardevolle inzichten misloopt, zelfs als er technische storingen optreden aan de client-side kant. Met deze functionaliteit zorg je ervoor dat jouw tracking of die van jouw klanten betrouwbaar en nauwkeurig blijft, wat essentieel is voor het succes van je marketingcampagnes.

Wat zijn Webhooks?

Conversie webhooks voor eCommerce webshops zorgen ervoor dat je CMS-systeem automatisch een bericht kan sturen naar andere systemen, in het geval van webshops kan er een bericht gestuurd worden vanuit de backend van je shop richting je server op het moment dat er een order aangemaakt wordt. Het versturen van die berichten gaat direct van systeem naar systeem waardoor informatie direct en efficiënt kan worden uitgewisseld. Webhooks zorgen er onder andere voor dat je ook de aankopen kan meten van cookieweigerende-bezoekers (al kan je de marketing en user info van die bezoeker in je marketing en analytische kanalen niet inzien).

Welke nadelen hebben Webhooks?

Als er iets op je site misgaat met het vullen van het marketing object in de webhook, dan heb je een probleem in je marketing en analytische platformen omdat die platformen dan niet meer kunnen herleiden wie die bezoeker is en vanuit welke bron of campagne ze op de site terecht gekomen zijn.

Zo zijn er veel verschillende plugins, apps en modules die op Shopify, WooCommerce of Magento geïnstalleerd kunnen worden die voor problemen kunnen zorgen in het overschrijven (in plaats van aanvullen) van de order notes.

Het terugdraaien van je tracking setup op het moment van zo'n conflicterende plugin of script is makkelijker gezegd dan gedaan. En als marketeer wil je niet constant bezig zijn met de tracking setup van je klanten en dit toekomstgericht zo optimaal mogelijk ingesteld hebben staan.

Hoe werkt de AdPage oplossing?

Bij AdPage hebben we een functionaliteit ontwikkeld dat ervoor zorgt dat een webhook alleen wordt verstuurd als de GA4 purchase-gebeurtenis niet geregistreerd is. Dit gebeurt door te controleren of de transaction_id al beschikbaar is in de GA4 purchase event data. Als deze ontbreekt, wordt de webhook verstuurd om de data alsnog aan te vullen. Maar wordt de transaction_id wel herkend, dan wordt de webhook tegen gehouden. Zo voorkom je dubbele metingen en zorg je voor een compleet beeld van je conversies.

Op server niveau wordt er bepaald welk purchase-event doorgestuurd wordt

Hoe stel je de Webhook deduplicatie in?

Om de webhook deduplicatie te activeren voor een tracking setup die al gebruik maakt van purchase webshooks, heb je het volgende nodig:

AdPage Deduplicatie instelling

Schakel de mogelijkheid binnen je trytagging-omgeving in om op serverniveau te controleren op ontvangen purchase gebeurtenissen met een transaction_id om dubbele conversies te voorkomen. Dit doe je in de Configuratie-instellingen.

Configuratie instellingen op de trytagging-omgeving

X-Order-Exists variabele

Om de ontdubbeling in te schakelen zul je een variable "X-Order-Exists" moeten toevoegen op je sGTM container. Die variabele is een Request Header variabele met de waarde 'X-Order-Exists'.

Request Header variabele met X-Order-Exists als waarde

De Request Header die door deze variabele gecheckt wordt, bevat de informatie over het ontvangen van een purchase event met een transaction_id. Is de transaction_id niet geconstateerd, wordt de X-Order-Exists in de request header gevuld met de waarde "false". Is de transaction_id wel geconstateerd, dan wordt de X-Order-Exists in de request header gevuld met de waarde "true".

Als je dus het purchase event van de webhook door wilt sturen, moet je in de trigger van deze tag de voorwaarde toevoegen dat de X-Order-Exists variabele 'false' is. Als AdPage je implementatie gedaan heeft, zal je voor Meta Ads en GA4 in totaal 4 tags gebruiken. Dat zijn deze vier tags met hun triggers:

  • GA4 tag - Wanneer een gebeurtenis (behalve purchase als gebeurtenisnaam) binnenkomt op de GA4 client
  • GA4 purchase tag - Wanneer een /order_created request binnenkomt op de Data Client.
  • Meta Ads tag - Wanneer een gebeurtenis (behalve purchase als gebeurtenisnaam) binnenkomt op de GA4 client
  • Meta Ads purchase tag - Wanneer een /order_create request binnenkomt op de Data Client
De twee verschillende GA4 tags en triggers op je sGTM container
De twee type Meta Ads tags en triggers op je sGTM container

Om de webhook deduplicatie voor beide platformen te laten werken, pas je de triggers op de volgende manieren aan:

  • In de GA4 trigger zorg je ervoor dat de 'Event Name does not equal Purchase' voorwaarde weggehaald wordt.
  • In de Meta Ads trigger zorg je ervoor dat de 'Event Name does not equal Purchase' voorwaarde weggehaald wordt.
  • In de webhook trigger zorg je ervoor dat de 'X-Order-Exists equals false' voorwaarde toegevoegd wordt.
De drie nieuwe triggers om deduplicatie op je sGTM container live te zetten

Is dit AVG-proof?

Ja, de oplossing is volledig in lijn met de AVG en ePrivacy regelgeving. Zodra een klant een aankoop doet, verwerkt je bedrijf de gegevens zoals vastgelegd in de algemene voorwaarden of privacy policy. Dit betekent dat je, na een aankoop, wel klantgegevens mag verwerken als je expliciete toestemming daarvoor gekregen hebt. Echter, als er geen toestemming is gegeven voor het gebruik van cookies, mag je de PII (persoonlijk identificeerbare informatie) van je bezoekers niet gebruiken voor marketing of analytische doeleinden en dus ook niet de marketing- en userinfo, doorsturen naar je analytische en/of marketing platformen. Dit maakt de oplossing AVG-compliant: je kunt nog steeds je conversies meten zonder de privacy van je bezoekers te schenden. Alleen kan je deze aankopen niet aan een bezoeker of een marketingcampagne koppelen, maar zorg je wel voor 1-op-1 metingen in je analytische platform.

Conclusie

Door Webhooks te integreren in je GA4 en Meta Ads setup, zorg je ervoor dat je altijd een compleet beeld hebt van je conversies, ook wanneer bepaalde data ontbreekt door bijvoorbeeld het ontbreken van de gegeven consent in een cookiebanner. Met de webhooks en de deduplicatie functies van AdPage kun je slim omgaan met ontbrekende data en ben je tegelijkertijd verzekerd van een AVG-proof oplossing. Wil je meer weten over hoe je webhooks en de deduplicatie van deze webhooks kunt inzetten om je tracking of die van je eCommerce klanten te verbeteren? Neem contact op met ons team en ontdek wat AdPage voor jou kan betekenen.