Hur det fungerar
Eftersom Zonos Checkout körs inuti en iframe på ett annat ursprung, är det
kan inte direkt komma åt er sidas fbq-funktion. Reläsystemet löser detta
med ett tvåstegs handslag (steg 1-2) följt av vidarebefordran av händelse (steg 3):
- Checkout pingar föräldern -- När kassan laddas inuti iframe, den skickar ett meddelande till föräldrafönstret som indikerar att den är redo att vidarebefordras händelser, inklusive Pixel ID.
- Föräldern erkänner -- Reläskriptet på er sida tar emot pinget, upptäcker (eller injicerar) er Meta Pixel-baskod och signalerar att den är det redo att ta emot evenemang.
- Händelser vidarebefordras -- Var och en när kunderna går igenom kassan
analytics händelse skickas via
postMessagetill er sida, där reläet skriptet vidarebefordrar det tillfbqmed rätttrack/trackCustomläge.
Alla meddelanden valideras mot betrodda Zonos-ursprung (zonos.com och
iglobalstores.com) endast över HTTPS.
Förutsättningar
- En Metapixel med ett Pixel-ID (en numerisk sträng, vanligtvis 15–16 siffror). Du kan skapa en i Meta Events Manager.
- En legacy Checkout-integrering som laddar Zonos Checkout i en iframe på er sida.
- Facebook Pixel aktiverad i era Zonos Checkout-inställningar (i Zonos instrumentpanelen, under Kassainställningar -> Spårning).
Inställning
Steg 1: Lägg till Meta Pixel-baskoden på er sida
Om ni inte redan har Meta Pixel installerad på er webbplats, lägg till standarden
Pixelbaskod till <head> på sidan som är värd för Checkout iframe.
Byt ut YOUR_PIXEL_ID mot ert eget numeriska Pixel-ID.
<!-- Meta Pixel Code --> <script> !(function (f, b, e, v, n, t, s) { if (f.fbq) return; n = f.fbq = function () { n.callMethod ? n.callMethod.apply(n, arguments) : n.queue.push(arguments); }; if (!f._fbq) f._fbq = n; n.push = n; n.loaded = !0; n.version = '2.0'; n.queue = []; t = b.createElement(e); t.async = !0; t.src = v; s = b.getElementsByTagName(e)[0]; s.parentNode.insertBefore(t, s); })( window, document, 'script', 'https://connect.facebook.net/en_US/fbevents.js', ); fbq('init', 'YOUR_PIXEL_ID'); fbq('track', 'PageView');</script>Obs! Om er webbplats redan har Meta Pixel installerad (t.ex. via Google Tag Manager, Shopifys inbyggda integration eller ett direktutdrag) kan ni hoppa över detta steg. Reläskriptet kommer att använda er befintliga
fbq-funktion.
Du hittar det här utdraget i er Meta Event Manager under er Pixel Inställningar -> Fortsätt Pixelkonfiguration -> Installera koden manuellt.
Steg 2: Skicka ert Pixel-ID till Zonos Checkout
Berätta för Zonos Checkout vilket Pixel ID ni ska använda genom att ställa in window.Zonos.facebookPixelId
inuti er Checkouts customHTML. Zonos instrumentpanel avslöjar en
customHTML-redigerare under kassainställningar -- lägg till en <script>-tagg så här:
<script> window.Zonos.facebookPixelId = 'YOUR_PIXEL_ID';</script>Detta värde skickas till föräldern under relähandskakningen. Om er förälder
sidan inte redan har fbq laddad, reläskriptet kommer att injicera Meta
Pixelbaskod för er som använder detta ID.
Steg 3: Lägg till Zonos analytics relay script
Lägg till följande skripttagg på samma sida som laddar Checkout iframe, efter Meta Pixel-baskoden. Det här är samma skript som används för Google Analytics 4 -- ett enda relä hanterar båda leverantörerna, så om ni redan har lagt till det för GA4, hoppa över detta steg.
<script async src="https://cdn.jsdelivr.net/npm/@zonos/elements/dist/scripts/analyticsRelayOnInit.js"></script>Komplett exempel
Så här ser hela konfigurationen ut i er sidas <head>:
<head> <!-- ... your existing head tags ... --> <!-- Meta Pixel Code --> <script> !(function (f, b, e, v, n, t, s) { if (f.fbq) return; n = f.fbq = function () { n.callMethod ? n.callMethod.apply(n, arguments) : n.queue.push(arguments); }; if (!f._fbq) f._fbq = n; n.push = n; n.loaded = !0; n.version = '2.0'; n.queue = []; t = b.createElement(e); t.async = !0; t.src = v; s = b.getElementsByTagName(e)[0]; s.parentNode.insertBefore(t, s); })( window, document, 'script', 'https://connect.facebook.net/en_US/fbevents.js', ); fbq('init', 'YOUR_PIXEL_ID'); fbq('track', 'PageView'); </script> <!-- Zonos analytics relay for iframe checkout --> <script async src="https://cdn.jsdelivr.net/npm/@zonos/elements/dist/scripts/analyticsRelayOnInit.js" ></script></head>Det är allt. När båda skripten finns på er sida är Facebook Pixel aktiverad i din
Zonos instrumentpanel och customHTML ställer in Pixel ID, reläet automatiskt
vidarebefordrar alla kassatratthändelser till Meta.
Meta Pixel händelsereferens
För varje steg i tratten aktiverar Zonos Checkout både en anpassad händelse (så att du
kan bygga exakta målgrupper) och det matchande Meta-standardevenemanget (så det syns
upp i Metas optimerings- och konverteringsrapportering). Alla evenemang inkluderar en
isTestMode-flaggan och checkoutSessionId.
| Utlösare↕ | Anpassad händelse (fbq('trackCustom', ...))↕ | Standardhändelse (fbq('track', ...))↕ | Ytterligare metadata↕ |
|---|---|---|---|
| Kassan öppnar | zonos-checkout-start | InitiateCheckout | -- |
| Shopper anger kundinformation | zonos-checkout-customer-info | ingen | -- |
| Shopper väljer en fraktmetod | zonos-checkout-shipping-info | ingen | serviceLevelId |
| Shopper anger betalningsuppgifter | zonos-checkout-payment-info | AddPaymentInfo | paymentMethod |
| Betalningsförsök misslyckas | zonos-checkout-payment-fail | ingen | -- |
| Beställningen slutförs framgångsrikt | zonos-checkout-success | ingen | order_id, currency, value, contents, content_ids |
| Beställning slutförs (e-handelshändelse) | purchase | Purchase | order_id, currency, value, contents, content_ids |
| Shopper stänger kassan | zonos-checkout-close | ingen | -- |
Steg utan en Meta-standardmotsvarighet (t.ex. kundinformation, fraktinformation) aktivera endast den anpassade
zonos-checkout-...-händelsen. Ni kan rikta in er på dessa i Meta Ads Manager via anpassade målgrupper med "Event =zonos-checkout-customer-info", osv.
Köphändelsemetadata
Standardhändelsen Purchase följer
Meta Pixel Purchase event
schema. Varukorgsartiklar mappas från items-arrayen i GA-stil till Metas
contents array:
| Fält↕ | Beskrivning↕ |
|---|---|
value | Totalt ordervärde |
currency | Valutakod med tre bokstäver (t.ex. USD) |
order_id | Zonos order-ID eller kassasessions-ID |
contents | Uppsättning av kundvagnsartiklar, var och en med id, quantity och item_price |
content_ids | Matris av artikel-ID:n (SKU, produkt-ID eller reservproduktnamn) |
content_type | Alltid "product" |
num_items | Total kvantitet för alla artiklar |
Felsökning
För att aktivera felsökningsloggning för reläskriptet, lägg till zonosDebug=1-frågan
parameter till er webbadress:
https://www.yourstore.com/checkout?zonosDebug=1Öppna webbläsarens utvecklarkonsol för att se detaljerade loggar över reläet handslag och vidarebefordrade händelser. Detta är användbart för att verifiera att:
- Reläskriptet tar emot ping från kassans iframe.
- Meta Pixel är konfigurerad med rätt Pixel-ID.
- Händelser vidarebefordras till
fbqmed den förväntadetrack/trackCustomläge.
Den Meta Pixel Helper Chrome-tillägget är också användbart för att inspektera Pixel-samtal i realtid.
Vanliga frågor
Varför utlöses två händelser för samma steg (t.ex. zonos-checkout-start och InitiateCheckout)?
Metas standardhändelser driver konverteringsoptimering, annonsrapportering och lookalike
publik utanför boxen. De anpassade zonos-checkout-...-händelserna låter er bygga
mer detaljerade anpassade målgrupper på det exakta trattsteget, även när ingen Meta
standardmotsvarighet finns (t.ex. kundinformation, fraktinformation). Avfyrar båda
ger er det bästa av två världar utan att förlora någon signal.
Vad händer om jag kör både Google Analytics och Facebook Pixel?
Du behöver inte två reläskript -- samma analyticsRelayOnInit.js hanterar
båda leverantörerna i ett enda handslag. Lägg till GA4-bastaggen och Meta Pixel
baskod till er <head>, ställ in både window.Zonos.googleAnalyticId och
window.Zonos.facebookPixelId i customHTML, och aktivera båda leverantörerna i
din Zonos instrumentpanel. Varje evenemang sprids till vilken leverantör som helst
aktiverat.
Vad händer om min överordnade sida inte har Meta Pixel installerad?
Om er customHTML ställer in window.Zonos.facebookPixelId och reläskriptet
upptäcker ingen fbq på sidan, den kommer att injicera Meta Pixel-baskoden åt dig
under handskakningen med det Pixel-ID ni angav. Ni kan också förinstallera
Meta Pixel-baskoden själv om ni vill avfyra PageView och annat
händelser utanför kassan.
Spåras testorder?
Alla evenemang inkluderar ett isTestMode-fält. När Checkout är i testläge, händelser
är fortfarande vidarebefordrade till Meta men flaggade med isTestMode: true. Ni kan filtrera
dessa i Meta Ads Manager eller exkludera dem med anpassade konverteringsregler.
Ersätter Conversions API (CAPI) detta?
Nej – det här är en Pixel-integration på webbläsaren som körs i era kunders webbläsare. Meta Conversions API är en separat server-till-server-kanal som vissa handlare använder tillsammans med Pixel för redundans. De två kompletterar varandra och Zonos relä hanterar endast Pixel-sidan på webbläsaren.
Facebook Pixel för iframe Checkout
Spåra hela kassan med Meta (Facebook) Pixel när ni använder en iframe-baserad äldre Checkout-integrering.
Säljare som använder den äldre Checkout-integrationen (iframe värd på
iglobalstores.com) kan spåra Meta Pixel-händelser över hela kassan tratt. Zonos Checkout vidarebefordrar automatiskt analyshändelser från iframe till den överordnade sidan med samma lätta reläskript som används för Google Analytics 4, alltså händelser visas i er Meta Event Manager som om de kom från er egen webbplats.För varje trattsteg sänds två händelser ut:
zonos-checkout-...(viafbq('trackCustom', ...)) för anpassade målgrupper i hela tratten.fbq('track', ...)) för inbyggd optimering, t.ex.InitiateCheckout,AddPaymentInfoochPurchase.