Hvordan det fungerer
Fordi Zonos Checkout kjører inne i en iframe på et annet opphav, kan det
ikke direkte få tilgang til sidenes gtag-funksjon. Relaysystemet løser dette
med en to-trinn handshake (trinn 1-2) etterfulgt av hendelsesformidling (trinn 3):
- Checkout pinger den overordnede siden -- Når checkout laster inne i iframen, sender den en melding til overordnet vindu som indikerer at den er klar til å relayere hendelser.
- Overordnet side bekrefter -- Relayskriptet på siden mottar pingmeldingen, detekterer din eksisterende GA4-konfigurasjon, og signaliserer tilbake at det er klart til å motta hendelser.
- Hendelser blir formidlet -- Etter hvert som kjøpere progrederer gjennom checkout, sendes hver
analysehendelse via
postMessagetil siden, der relayskriptet formidler den tilgtag.
Alle meldinger valideres mot klarerte Zonos-opphav (zonos.com og
iglobalstores.com) over HTTPS bare.
Forutsetninger
- En GA4-egenskap med en måle-ID (format:
G-XXXXXXXXXX). Du kan opprette en i Google Analytics. - En eldre Checkout-integrasjon som laster Zonos Checkout i en iframe på siden din.
Oppsett
Trinn 1: Legg til GA4-taggen på siden
Hvis du ikke allerede har GA4 installert på nettstedet ditt, legg til standard Google
Analytics 4-tag i <head> på siden som hoster Checkout iframen.
Bytt ut G-XXXXXXXXXX med din egen måle-ID.
<!-- Google tag (gtag.js) --> <script async src="https://www.googletagmanager.com/gtag/js?id=G-XXXXXXXXXX"></script> <script> window.dataLayer = window.dataLayer || []; function gtag() { dataLayer.push(arguments); } gtag('js', new Date()); gtag('config', 'G-XXXXXXXXXX');</script>Merk: Hvis nettstedet ditt allerede har GA4-taggen installert (f.eks. gjennom Google Tag Manager eller et direkte utdrag), kan du hoppe over dette trinnet. Relayskriptet vil bruke din eksisterende
gtag-funksjon.
Du finner dette utdraget i GA4-egenskapen din under Admin -> Data Streams -> velg strømmen din -> View tag instructions -> Install manually.
Trinn 2: Send måle-IDen til Zonos Checkout
Fortell Zonos Checkout hvilken GA4-måle-ID som skal brukes ved å sette
window.Zonos.googleAnalyticId inne i Checkout sin customHTML. Zonos-dashbordet viser en
customHTML-redigering under Checkout-innstillinger -- legg til en
<script>-tag som denne:
<script> window.Zonos.googleAnalyticId = 'G-XXXXXXXXXX';</script>Denne verdien sendes til den overordnede siden under relayhandskaken. Hvis den overordnede
siden ikke allerede har gtag lastet, vil relayskriptet injisere GA4-
basen tag for deg ved å bruke denne IDen.
Trinn 3: Legg til Zonos-analysrelayskriptet
Legg til følgende script-tag på samme side, etter GA4-taggen. Dette skriptet
lytter etter analysehendelser fra Zonos Checkout iframen og formidler dem til
gtag.
<script async src="https://cdn.jsdelivr.net/npm/@zonos/elements/dist/scripts/analyticsRelayOnInit.js"></script>Komplett eksempel
Her er hvordan det komplette oppsettet ser ut i sidenes <head>:
<head> <!-- ... your existing head tags ... --> <!-- Google tag (gtag.js) --> <script async src="https://www.googletagmanager.com/gtag/js?id=G-XXXXXXXXXX" ></script> <script> window.dataLayer = window.dataLayer || []; function gtag() { dataLayer.push(arguments); } gtag('js', new Date()); gtag('config', 'G-XXXXXXXXXX'); </script> <!-- Zonos analytics relay for iframe checkout --> <script async src="https://cdn.jsdelivr.net/npm/@zonos/elements/dist/scripts/analyticsRelayOnInit.js" ></script></head>Det er alt. Når begge skriptene er på siden, fullfører relayskriptet automatisk handskaken med checkout iframen og formidler alle checkout-trakthendelser til GA4-egenskapen.
GA4-hendelses referanse
Zonos Checkout sender følgende hendelser gjennom relayskriptet. Alle hendelser inkluderer
en isTestMode-flagg og checkoutSessionId.
| Hendelse↕ | Utløser↕ | Ekstra metadata↕ |
|---|---|---|
zonos-checkout-start | Checkout åpnes | -- |
zonos-checkout-customer-info | Kjøper oppgir kundeinformasjon | -- |
zonos-checkout-shipping-info | Kjøper velger en forsendelsesmetode | serviceLevelId |
zonos-checkout-payment-info | Kjøper oppgir betalingsdetaljer | paymentMethod |
zonos-checkout-payment-fail | Betalingsforsøk mislykkes | -- |
zonos-checkout-success | Ordre fullføres vellykket | transaction_id, currency, value, items |
zonos-checkout-close | Kjøper lukker checkout | -- |
purchase | Ordre fullføres (GA4 standard e-handel-hendelse) | transaction_id, currency, value, items |
Betalings-hendelses metadata
purchase-hendelsen følger
GA4 e-handel purchase hendelse
skjema:
| Felt↕ | Beskrivelse↕ |
|---|---|
transaction_id | Zonos ordre-ID eller checkout-sesjons-ID |
currency | Tre-bokstav valutas kode (f.eks. USD) |
value | Total ordreverdi |
items | Array av handlevognartikler, hver med item_id, item_name, price, og quantity |
Feilsøking
For å aktivere debug-logging for relayskriptet, legg til zonosDebug=1 spørsmålsparameter
til siden din URL:
https://www.yourstore.com/checkout?zonosDebug=1Åpne nettleserens utviklerkonsoll for å se detaljerte logger for relayhandskaken og formidlede hendelser. Dette er nyttig for å bekrefte at:
- Relayskriptet mottar pingmeldingen fra checkout iframen.
- GA4 er konfigurert med riktig måle-ID.
- Hendelser blir formidlet til
gtag.
Vanlige spørsmål
Trenger jeg å endre createTempCart API-samtalen?
Nei. Relaysystemet fungerer uavhengig av createTempCart API. Du trenger bare
å legge til GA4-taggen og relayskriptet på siden.
Hva hvis jeg allerede bruker footerHTML for Google Analytics?
footerHTML-parameteren i
createTempCart API
injiserer skripter inne i checkout iframen, som er begrenset til å spore
side-nivåhendelser innenfor iframens opphav. Relaymetoden anbefales
fordi den sender hendelser til din egen GA4-egenskap på domenet ditt, noe som gir deg full
traktoverskrift i en enkelt egenskap.
Du kan trygt fjerne eventuelle GA4-skripter fra footerHTML etter å ha satt opp
relayskriptet.
Fungerer dette med GA4 debug-modus i Google Analytics?
Ja. Du kan bruke zonosDebug=1 for å aktivere relayskript-logger i nettleserens utviklerkonsoll, og bruke
GA4 DebugView i Google
Analytics for å bekrefte hendelser i sanntid.
Blir testordrer sporet?
Alle hendelser inkluderer et isTestMode-felt. Når Checkout er i test-modus, sendes hendelser
fremdeles til GA4, men er merket med isTestMode: true. Du kan filtrere disse ut
i GA4 ved å bruke egendefinerte dimensjoner om nødvendig.
Google Analytics 4 for iframe Checkout
Spor hele checkout-trakten med GA4 når du bruker en iframe-basert eldre Checkout-integrasjon.
Forhandlere som bruker eldre Checkout-integrasjon (iframe hosted på
iglobalstores.com) kan nå spore GA4-analysehendelser over hele checkout-trakten. Zonos Checkout relayerer automatisk analysehendelser fra iframen til overordnet side ved hjelp av et lettskriptet relayskript, slik at hendelser vises i GA4-egenskapen din som om de stammer fra ditt eget nettsted.