Vai al contenuto principale

Manuale di tracciamento

Questo articolo descrive il processo di configurazione del tracciamento degli eventi tramite Google Tag Manager (GTM) in Google Analytics 4 (GA4).

💡 Assicurati di consultare il Registro delle modifiche per verificare che gli eventi che stai tracciando siano aggiornati.


Come viene implementato il tracciamento

📒 NOTA

Ventrata Checkout utilizza l'implementazione del dataLayer secondo la documentazione di Google.

Questo articolo offre una guida completa per configurare il tracciamento degli eventi tramite Google Tag Manager (GTM) e Google Analytics 4 (GA4). Scoprirai come configurare e tracciare diversi eventi principali e personalizzati, per acquisire le interazioni significative lungo tutto il percorso del cliente nel processo di checkout.

Il sistema di checkout di Ventrata consente ai clienti di tracciare le azioni degli acquirenti utilizzando una combinazione di eventi principali ed eventi personalizzati. Questi eventi permettono di raccogliere dati e ottenere informazioni sul comportamento dei clienti, consentendo di ottimizzare il processo di checkout.

Eventi principali

Eventi che vengono sempre attivati, indipendentemente dalla configurazione del prodotto o del checkout.

Evento

Descrizione

view_item

attivato quando il cliente visualizza un articolo iniziale o successivo

add_to_cart

attivato quando il cliente aggiunge un prodotto al carrello

view_cart

inviato quando il cliente visualizza il carrello e controlla gli articoli prima di procedere al checkout

begin_checkout

attivato quando il cliente avvia il processo di checkout

create_or_update_order

inviato quando il cliente inserisce tutti i dati richiesti e procede al pagamento

add_payment_info

attivato quando il cliente inserisce le informazioni di pagamento

purchase

attivato quando la transazione è completata e il pagamento è confermato

order_expired

attivato quando una singola sessione di checkout scade senza un acquisto andato a buon fine

Eventi personalizzati

Eventi facoltativi che vengono attivati in base a configurazioni specifiche, caratteristiche del prodotto e interazioni del cliente.

Evento

Descrizione

view_option_select

inviato come primo evento quando il cliente seleziona un'opzione

view_gift_item

attivato quando il cliente seleziona l'opzione Buy as a Gift Card (Acquista come gift card)

gift_added_to_cart

attivato quando un articolo regalo viene aggiunto al carrello

select_unit

attivato quando il cliente seleziona un'unità o una categoria specifica, ad esempio "Adult"

remove_unit

attivato quando il cliente fa clic sul pulsante meno per deselezionare un'unità o una categoria specifica, ad esempio "Adult". Questo evento è l'opposto di select_unit.

select_date

inviato quando il cliente seleziona una data per la prenotazione

select_time

attivato quando il cliente sceglie una fascia oraria specifica per la prenotazione

notify_me

attivato quando il cliente sceglie di ricevere una notifica sulla disponibilità di un prodotto esaurito

quote_confirmed

attivato quando il cliente sceglie di salvare la prenotazione come preventivo

wait_list_confirmed

inviato quando il cliente conferma il proprio posto in una lista d'attesa

view_upgrade

attivato quando viene visualizzata la selezione degli upgrade

upgrade_ticket

attivato quando il cliente effettua l'upgrade del biglietto

view_cross_sell

attivato quando viene visualizzata la selezione del cross-sell

cross_sell

attivato quando il cliente seleziona un prodotto aggiuntivo da acquistare

select_pickup

attivato quando il cliente seleziona un punto di raccolta per la prenotazione

select_question

inviato quando il cliente seleziona e risponde a una domanda configurata

edit_booking

attivato quando il cliente modifica la prenotazione

remove_booking

inviato quando il cliente rimuove una prenotazione dal carrello


Configurazione di GTM

Prerequisiti:

  • Un sito web a cui hai accesso per aggiungere i codici di tracciamento di GTM e GA4.

  • Un account Google Tag Manager e un contenitore configurato per il tuo sito web.

  • Una proprietà Google Analytics 4 creata nella console di amministrazione di Google Analytics.
    ​

Installare GTM

  • Se non hai ancora installato GTM sul tuo sito web, segui le istruzioni fornite da Google.

Configurare il tag di configurazione GA4

  • Crea in GTM un nuovo tag di tipo "Google Analytics: GA4 Configuration (Google Analytics: configurazione GA4)". Configura il tag con il tuo ID misurazione GA4.

Configurare i tag evento GA4

  • Crea un tag per ogni evento che vuoi tracciare (View Item, Custom Event, Add To Cart, View Cart, Begin Checkout, Add Payment Info, Purchase). Per ogni tag, imposta 'Event Name (Nome evento)' ed eventuali 'Event Parameters (Parametri evento)' aggiuntivi richiesti.

Configurare gli attivatori

  • Crea gli attivatori che attiveranno i rispettivi tag in base alle interazioni degli utenti o agli eventi sul tuo sito web.
    ​

Ogni evento consigliato da Google dispone di un esempio di configurazione del tag, come mostrato in questo esempio di evento Purchase.
​

📗 SUGGERIMENTO

Segui i passaggi di questo articolo per configurare Google Tag Manager (GTM) e Google Analytics 4 (GA4).


Glossario

📗 SUGGERIMENTO

Ti consigliamo di consultare anche questa documentazione di Google.

Parametri globali

Parametro

Descrizione

Esempio

event

nome dell'evento tracciato

"purchase"

custom_timestamp

timestamp del momento in cui è stato attivato l'evento

"1759833980195"

preferred_locale

lingua selezionata dal cliente

"en"

label

informazioni associate all'evento, in particolare agli eventi personalizzati

"Hotel Bishram"

Parametri condivisi

Questi parametri non sono inclusi in ogni evento. In alcuni casi sono annidati in ecommerce.items (vedi l'esempio Purchase - full object), mentre in determinati eventi compaiono direttamente nel corpo principale (vedi l'esempio Select unit - full object).

Parametro

Descrizione

Esempio

label

informazioni associate all'evento, in particolare agli eventi personalizzati

"Hotel Bishram"

product_id

identificatore univoco del prodotto che corrisponde a product_id nel backend

"69f07800-0b30-4824-b462-09a7f19529as"

item_name

nome del prodotto nella lingua predefinita

"Mount Everest"

option_id

identificatore univoco assegnato all'opzione del prodotto

"1e143307-1ef3-4d3a-8005-b9adb3e54d5b"

item_variant

nome dell'opzione nella lingua predefinita

"Mount Everest - Ascent to Camp 3"

checkout_mode

modalità del checkout, che può essere popup oppure embedded

popup

crossSell

valore booleano che indica se il cross-sell era attivato

false

Parametri dell'oggetto e-commerce

Parametro

Descrizione

Esempio

coupons

nome della promozione / del coupon

"10% discount for online booking (10% OFF)"

currency

valuta degli articoli associati all'evento

"EUR"

items

informazioni dettagliate su prodotti / opzioni

Vedi la tabella Item Parameters più avanti

extras

informazioni dettagliate sugli extra

Vedi la tabella Extra Parameters più avanti

value

valore monetario dell'evento - ricavo (IVA esclusa)

199

tax

imposta applicata alla prenotazione

18.08

order_id

identificatore univoco assegnato all'ordine; corrisponde a order_id nel backend, visibile anche nella dashboard

"3918ba5e-3da8-45ac-8fa1-23fb3949983d"

transaction_id

identificatore univoco assegnato all'ordine; corrisponde a order_id nel backend, visibile anche nella dashboard

"3918ba5e-3da8-45ac-8fa1-23fb3949983d"

transaction_type

il valore predefinito "ventrata" viene utilizzato per indicare chiaramente l'origine della transazione

"ventrata"

quantity

quantità del prodotto selezionato

5

discount

sconto applicato all'ordine

0

Parametri degli articoli

Parametro

Descrizione

Esempio

item_id

ID dell'unità

"unit_2b1e6f4e-c69b-40d1-bc2e-31872df4d535"

booking_id

identificatore univoco assegnato alla prenotazione; corrisponde a booking_id nel backend, visibile anche nella dashboard

"acf4c89f-f6b0-47ea-b690-522f8abef116"

product_id

identificatore univoco del prodotto che corrisponde a product_id nel backend

"69f07800-0b30-4824-b462-09a7f19529as"

item_name

nome del prodotto nella lingua predefinita

"Mount Everest"

option_id

identificatore univoco assegnato all'opzione del prodotto

"1e143307-1ef3-4d3a-8005-b9adb3e54d5b"

item_variant

nome dell'opzione nella lingua predefinita

"Mount Everest - Ascent to Camp 3"

item_category

nome dell'unità nella lingua predefinita

"Adult - Unskilled"

item_category2

data del viaggio

"2023-12-12"

item_category3

orario del viaggio

"09:00:00"

item_category4

tipo di gruppo di tour nella lingua predefinita

"sunset"

price

prezzo del prodotto

70

tax

imposta applicata alla prenotazione

1

discount

sconto del prodotto

0

quantity

quantità del prodotto

2

extras

informazioni dettagliate sugli extra

Vedi la tabella Extra Parameters più avanti

crossSell

valore booleano che indica se il cross-sell era attivato

false

gift

valore booleano che indica se l'acquisto è un regalo

true

gift_value

valore monetario del regalo

400

multidate

valore booleano che indica se il prodotto può essere prenotato in più date

false

packages

se il prodotto è un pacchetto, qui viene elencato un array di prodotti

Vedi la tabella Packages Parameters più avanti

Parametri degli extra

Parametro

Descrizione

Esempio

id

ID dell'extra

"extra_330c1c32-cd9d-4c7c-b216-04857e514c68"

name

nome dell'extra nella lingua predefinita

"Crampons and Ice-Axe"

price

prezzo dell'extra

20

quantity

quantità dell'extra

2

tax

imposta applicata all'extra

18.08

Parametri del cliente

Parametro

Descrizione

Esempio

fullName

concatenazione di nome e cognome del cliente

"John Doe"

firstName

nome inserito nel modulo di contatto

"John"

lastName

cognome inserito nel modulo di contatto

"Doe"

title

titolo selezionato dal cliente

"Product manager"

email

email inserita nel modulo di contatto

mobile

numero di telefono inserito nel modulo di contatto

"+420123456789"

age

età del cliente

35

birthdate

data di nascita del cliente

"1985-04-27"

locales

lingue selezionate dal cliente o lingue predefinite

"en", "cs"

country

paese selezionato dall'elenco nel modulo di contatto

"CZ"

streetAddress

indirizzo fornito dal cliente

"Behounská"

city

città inserita dal cliente

"Brno"

state

stato o regione del cliente

"Jihomoravský kraj"

postalCode

codice postale inserito nel modulo di contatto

"61200"

notes

note aggiuntive inserite dal cliente

"Please arrange vegetarian meals and window seats if possible."

taxId

codice fiscale / partita IVA del cliente

"CZ12345678"

allowMarketing

valore booleano che indica se il cliente ha acconsentito a ricevere comunicazioni di marketing

false

Parametri dei pacchetti

Parametro

Descrizione

Esempio

item_name

nome del prodotto incluso in un pacchetto nella lingua predefinita

"Kathmandu"

item_variant

nome dell'opzione di un prodotto incluso in un pacchetto nella lingua predefinita

"Kathmandu"

item_category

nome dell'unità di un prodotto incluso in un pacchetto nella lingua predefinita

"Person"

item_category2

data del viaggio all'interno di un pacchetto

"2024-08-17"

item_category3

orario del viaggio all'interno di un pacchetto

"00:00:00"

item_category4

tipo di gruppo di tour all'interno di un pacchetto nella lingua predefinita

"sunset"

Parametri delle domande

Parametro

Descrizione

Esempio

questions

domanda posta al cliente nella lingua predefinita

"Feedback"

answer

risposta fornita dal cliente alla domanda

"Good"

Parametri dei punti di raccolta

Parametro

Descrizione

Esempio

label

informazioni associate all'evento, in particolare agli eventi personalizzati, nella lingua predefinita

"Hotel Bishram"

item_name

nome del punto di raccolta nella lingua predefinita

"Mount Everest"

item_variant

nome dell'opzione per il punto di raccolta nella lingua predefinita

"Mount Everest - Ascent to Camp 2"

​

Testare il checkout

📗 SUGGERIMENTO

Puoi testare il checkout con un prodotto fittizio e utilizzare le carte di test Adyen per i pagamenti con carta.


Implementazione del tracciamento degli eventi

View_option_select

Traccia il momento in cui il cliente visualizza le opzioni del prodotto.

Corpo dell'evento

Esegui il seguente codice quando il cliente seleziona un prodotto con opzioni e viene visualizzata la pagina delle opzioni.

dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object.
dataLayer.push({
"event": "view_option_select",
"ecommerce": {
"currency": "EUR",
"checkout_mode": "popup",
"product_id": "c097cd5f-e7eb-45dc-adff-e00894d063cb",
"items": [
{
"item_id": "7319e191-e1e5-41b3-9cc8-0f94faea98d2",
"item_variant": "Mount Everest - Ascent to Camp 2"
},
{
"item_id": "fc8010ec-e785-4f19-af6d-34dec76a29e3",
"item_variant": "Mount Everest - Ascent to Camp 3"
},
]
},
"custom_timestamp": 1770377638403,
"preferred_locale": "en",
"gtm.uniqueEventId": 55
})


View_item

  • Attivato quando un cliente visualizza un prodotto all'interno del widget di checkout di Ventrata.

  • Questo evento viene attivato non appena si apre la finestra del checkout (in modalità pop-up o incorporata)

    • In modalità incorporata, questo evento si attiva ogni volta che il cliente visita la pagina in cui è incorporato il checkout, il che può generare più eventi view_item durante una singola sessione

    • In modalità pop-up, questo evento viene attivato quando il cliente fa clic sul pulsante Book Now (Prenota ora) o compie un'azione equivalente per aprire il checkout

Corpo dell'evento

Esegui il seguente codice per tracciare il passaggio Tickets (Biglietti):

dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object.
dataLayer.push({
"event": "view_item",
"ecommerce": {
"currency": "EUR",
"checkout_mode": "popup",
"items": [
{
"item_id": "unit_38d8b24e-89a9-488c-9f51-6981dc56a581",
"booking_id": "",
"product_id": "69f07800-0b30-4824-b462-09a7f195295b",
"item_name": "Chitwan National Park",
"option_id": "DEFAULT",
"item_variant": "Chitwan National Park",
"item_category": "6 seater car",
"price": 400,
"tax": 0,
"discount": 0,
"quantity": 1,
"extras": [],
"crossSell": false
}
],
"extras": []
},
"custom_timestamp": "1759833980195",
"preferred_locale": "en",
"gtm.uniqueEventId": 26
})


View_gift_item

Traccia il momento in cui il cliente acquista un regalo tramite il widget.

Corpo dell'evento

Esegui il seguente codice quando il cliente fa clic sul link Buy as a gift card (Acquista come gift card) :

dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object.
dataLayer.push({
"event": "view_gift_item",
"ecommerce": {
"currency": "EUR",
"checkout_mode": "popup",
"items": [
{
"item_id": "unit_38d8b24e-89a9-488c-9f51-6981dc56a581",
"booking_id" : "",
"product_id": "69f07800-0b30-4824-b462-09a7f195295b",
"item_name": "Chitwan National Park",
"option_id": "DEFAULT",
"item_variant": "Chitwan National Park",
"item_category": "6 seater car",
"price": 400,
"tax": 0,
"discount": 0,
"quantity": 1,
"extras": [],
"crossSell": false
}
],
"extras": []
},
"custom_timestamp": "1759833980195",
"preferred_locale": "en",
"gtm.uniqueEventId": 31
})


Gift_added_to_cart

Attivato quando un cliente aggiunge al carrello un articolo regalo o una gift card.

Corpo dell'evento

Esegui il seguente codice quando il cliente fa clic sul pulsante Continue (Continua) (dopo aver selezionato l'unità o l'importo) nel passaggio Gift (Regalo):

dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object.
dataLayer.push({
"event": "gift_added_to_cart",
"ecommerce": {
"checkout_mode": "popup",
"currency": "EUR",
"items": [
{
"item_id": "d75fb204-9bbe-465f-95a2-21945553c95e",
"booking_id" : "",
"option_id" : "",
"product_id" : "",
"item_name": "Gift card",
"item_variant": "",
"item_category": "",
"item_category2": "",
"item_category3": "",
"item_category4": "",
"crossSell": false,
"multidate": false,
"tax": 0,
"discount": 0,
"price": 400,
"gift_value": 400,
"gift": true,
"quantity": 1,
"extras": [],
"packages": []
}
],
"value": 400,
"tax": 0,
"discount" : 0
},
"custom_timestamp": "1759833980195",
"preferred_locale": "en",
"gtm.uniqueEventId": 34
})


Select_unit

Questo evento viene attivato quando il cliente seleziona un'unità (ad esempio un tipo di biglietto o un pacchetto specifico) durante il processo di checkout.

Corpo dell'evento

Esegui il seguente codice quando il cliente fa clic sul pulsante più (+) nel passaggio Tickets (Biglietti):

dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object.
dataLayer.push({
"event": "select_unit",
"label": "6 seater car",
"checkout_mode": "popup",
"crossSell": false,
"product_id": "69f07800-0b30-4824-b462-09a7f195295b",
"item_name": "Chitwan National Park",
"option_id": "1e143307-1ef3-4d3a-8005-b9adb3e54d5b",
"item_variant": "Mount Everest - Ascent to Camp 3",
"custom_timestamp": "1759833980195",
"preferred_locale": "en",
"gtm.uniqueEventId": 27
})


Remove_unit

Questo evento viene attivato quando il cliente riduce un'unità (deseleziona un'unità di un determinato tipo di biglietto o pacchetto) durante il processo di checkout.

Corpo dell'evento

Esegui il seguente codice quando il cliente fa clic sul pulsante meno (-) nel passaggio Tickets (Biglietti):

dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object.
dataLayer.push({
"event": "remove_unit",
"label": "6 seater car",
"checkout_mode": "popup",
"crossSell": false,
"product_id": "69f07800-0b30-4824-b462-09a7f195295b",
"item_name": "Chitwan National Park",
"option_id": "1e143307-1ef3-4d3a-8005-b9adb3e54d5b",
"item_variant": "Mount Everest - Ascent to Camp 3",
"custom_timestamp": "1759833980195",
"preferred_locale": "en",
"gtm.uniqueEventId": 27
})


Select_date

Traccia il momento in cui il cliente seleziona una data per la prenotazione.

Corpo dell'evento

Esegui il seguente codice quando il cliente seleziona una data:

dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object.
dataLayer.push({
"event": "select_date",
"label": "2024-09-17",
"product_id": "69f07800-0b30-4824-b462-09a7f195295b",
"item_name": "Chitwan National Park",
"option_id": "DEFAULT",
"item_variant": "Chitwan National Park",
"checkout_mode": "popup",
"crossSell": false,
"custom_timestamp": "1759833980195",
"preferred_locale": "en",
"gtm.uniqueEventId": 28
})


Select_time

Traccia il momento in cui il cliente seleziona una fascia oraria per la prenotazione.

Corpo dell'evento

Esegui il seguente codice quando il cliente seleziona una fascia oraria:

dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object.
dataLayer.push({
"event": "select_time",
"label": "15:30:00",
"product_id": "69f07800-0b30-4824-b462-09a7f195295b",
"item_name": "Chitwan National Park",
"option_id": "DEFAULT",
"item_variant": "Chitwan National Park",
"checkout_mode": "popup",
"crossSell": false,
"custom_timestamp": "1759833980195",
"preferred_locale": "en",
"gtm.uniqueEventId": 29
})


Notify_me

Questo evento può essere utilizzato per misurare la domanda per determinate date o prodotti e aiuta a evitare vendite perse. Traccia il momento in cui il cliente sceglie di ricevere una notifica sulla disponibilità del prodotto per una data o un orario al momento non disponibile.

Corpo dell'evento

Esegui il seguente codice quando il cliente fa clic sul pulsante Notify me (Avvisami) :

dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object.
dataLayer.push({
"event": "notify_me",
"ecommerce": {
"checkout_mode": "popup",
"currency": "CZK",
"order_id": "",
"items": [
{
"item_id": "unit_38d8b24e-89a9-488c-9f51-6981dc56a581",
"booking_id": "acf4c89f-f6b0-47ea-b690-522f8abef116",
"product_id": "c097cd5f-e7eb-45dc-adff-e00894d063cb",
"item_name": "Kathmandu",
"option_id": "fc8010ec-e785-4f19-af6d-34dec76a29e3",
"item_variant": "Kathmandu",
"item_category": "Adult",
"item_category2": "2024-09-30",
"item_category3": "10:00:00",
"item_category4": "",
"crossSell": false,
"price": 0,
"tax": 0,
"discount": 0,
"quantity": 1,
"extras": []
}
],
"value": 0,
"tax": 0,
"discount": 0,
"quantity": 1,
"extras": []
},
"custom_timestamp": "1759833980195",
"preferred_locale": "en",
"gtm.uniqueEventId": 31
})


Wait_list_confirmed

Attivato quando un cliente conferma il proprio posto nella lista d'attesa per un prodotto esaurito.

Corpo dell'evento

Esegui il seguente codice quando il cliente fa clic sul pulsante Continue (Continua):

dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object.
dataLayer.push({
"event": "wait_list_confirmed",
"ecommerce": {
"checkout_mode": "popup",
"currency": "CZK",
"order_id": "",
"items": [
{
"item_id": "unit_38d8b24e-89a9-488c-9f51-6981dc56a581",
"booking_id": "acf4c89f-f6b0-47ea-b690-522f8abef116",
"product_id": "c097cd5f-e7eb-45dc-adff-e00894d063cb",
"item_name": "Kathmandu",
"option_id": "fc8010ec-e785-4f19-af6d-34dec76a29e3",
"item_variant": "Kathmandu",
"item_category": "Adult",
"item_category2": "2024-09-30",
"item_category3": "10:00:00",
"item_category4": "",
"crossSell": false,
"price": 0,
"tax": 0,
"discount": 0,
"quantity": 1,
"extras": []
}
],
"value": 0,
"tax": 0,
"discount": 0,
"quantity": 1,
"extras": []
},
"customer": {
"firstName": "Karel",
"lastName": "Fisher",
"emailAddress": "[email protected]"
},
"gtm.uniqueEventId": 36
})


Add_to_cart

Traccia il momento in cui il cliente fa clic sul pulsante Continue (Continua) (dopo aver selezionato unità, data e orario), identificando l'azione che corrisponde all'aggiunta di un articolo al carrello nel passaggio Tickets (Biglietti).

Corpo dell'evento

Esegui il seguente codice quando il cliente fa clic sul pulsante Continue (Continua):

dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object.
dataLayer.push({
"event": "add_to_cart",
"ecommerce": {
"checkout_mode": "popup",
"currency": "EUR",
"order_id": "64c62751-2223-4461-99ee-351443c7d540",
"items": [
{
"item_id": "unit_38d8b24e-89a9-488c-9f51-6981dc56a581",
"booking_id": "acf4c89f-f6b0-47ea-b690-522f8abef116",
"product_id": "69f07800-0b30-4824-b462-09a7f195295b",
"item_name": "Chitwan National Park",
"option_id": "DEFAULT",
"item_variant": "Chitwan National Park",
"item_category": "6 seater car",
"item_category2": "2024-09-17",
"item_category3": "15:30:00",
"item_category4": "",
"crossSell": false,
"price": 400,
"tax": 0,
"discount": 0,
"quantity": 1,
"extras": []
}
],
"value": 400,
"tax": 0,
"discount": 0,
"quantity": 1,
"extras": []
},
"custom_timestamp": "1759833980195",
"preferred_locale": "en",
"gtm.uniqueEventId": 48
})


View_upgrade

Si attiva quando sono disponibili opzioni di upgrade e viene visualizzata la pagina Upgrade Your Experience (Migliora la tua esperienza).

Corpo dell'evento

Esegui il seguente codice quando viene visualizzata la pagina Upgrade Your Experience (Migliora la tua esperienza).

dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object.
dataLayer.push({
"event": "view_upgrade",
"ecommerce": {
"order_id": "d39ad68a-83b4-4c6a-8584-9e12bf68da35",
"coupons": [],
"currency": "EUR",
"checkout_mode": "popup",
"items": [
{
"item_id": "c097cd5f-e7eb-45dc-adff-e00894d063cb",
"product_id": "c097cd5f-e7eb-45dc-adff-e00894d063cb",
"option_id": "8f1b5c1c-8314-49d5-bc37-37bf02871fa2",
"booking_id": "f065f126-5bfa-47f1-ac43-380ad747992f",
"crossSell": false,
"quantity": 1,
"extras": [],
"item_name": "Mount Everest",
"item_variant": "Mount Everest",
"discount": 0,
"tax": 5,
"item_category": "",
"item_category2": "",
"item_category3": "",
"item_category4": "",
"price": 50
},
{
"item_id": "c097cd5f-e7eb-45dc-adff-e00894d063cb",
"product_id": "c097cd5f-e7eb-45dc-adff-e00894d063cb",
"option_id": "fc8010ec-e785-4f19-af6d-34dec76a29e3",
"booking_id": "f065f126-5bfa-47f1-ac43-380ad747992f",
"crossSell": false,
"quantity": 1,
"extras": [],
"item_name": "Mount Everest",
"item_variant": "Mount Everest",
"discount": 0,
"tax": 1.36,
"item_category": "",
"item_category2": "",
"item_category3": "",
"item_category4": "",
"price": 13.64
}
],
"quantity": 2,
"extras": [],
"value": 50,
"tax": 5,
"discount": 0
},
"custom_timestamp": 1770377306508,
"preferred_locale": "en",
"gtm.uniqueEventId": 54
})


Upgrade_ticket

Questo evento traccia il momento in cui il cliente decide di effettuare l'upgrade del prodotto.

Corpo dell'evento

Esegui il seguente codice quando il cliente fa clic sul pulsante Upgrade (Upgrade) nel passaggio Upgrade Your Experience (Migliora la tua esperienza):

dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object.
dataLayer.push({
"event": "upgrade_ticket",
"label": "Kathmandu",
"checkout_mode": "popup",
"product_id": "dcaf4844-324c-46ae-9209-a975a9d19acd",
"option_id": "DEFAULT",
"order_id": "64c62751-2223-4461-99ee-351443c7d540",
"custom_timestamp": "1759833980195",
"preferred_locale": "en",
"gtm.uniqueEventId": 49
})

📒 NOTA

In caso di upgrade, tutte le variabili item_name successive devono contenere le informazioni del biglietto aggiornato invece di quello originale.


View_cross_sell

Si attiva quando sono disponibili opzioni di cross-sell e viene visualizzata la pagina Combination Offers (Offerte combinate).

Corpo dell'evento

Esegui il seguente codice quando viene visualizzata la pagina Combination Offers (Offerte combinate).

dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object.
dataLayer.push({
"event": "view_cross_sell",
"ecommerce": {
"order_id": "d39ad68a-83b4-4c6a-8584-9e12bf68da35",
"coupons": [],
"currency": "EUR",
"checkout_mode": "popup",
"items": [
{
"item_id": "dcaf4844-324c-46ae-9209-a975a9d19acd",
"product_id": "dcaf4844-324c-46ae-9209-a975a9d19acd",
"option_id": "DEFAULT",
"booking_id": "",
"crossSell": true,
"quantity": 1,
"extras": [],
"item_name": "Kathmandu",
"item_variant": "Kathmandu",
"discount": 2,
"tax": 1.64,
"item_category": "",
"item_category2": "",
"item_category3": "",
"item_category4": "",
"price": 16.36
},
{
"item_id": "d60965be-a76a-410f-8e88-2f839aeecfbd",
"product_id": "d60965be-a76a-410f-8e88-2f839aeecfbd",
"option_id": "1e143307-1ef3-4d3a-8005-b9adb3e54d5b",
"booking_id": "",
"crossSell": true,
"quantity": 1,
"extras": [],
"item_name": "Mount Everest - Breathing course",
"item_variant": "Mount Everest - Breathing course",
"discount": 5,
"tax": 0,
"item_category": "",
"item_category2": "",
"item_category3": "",
"item_category4": "",
"price": 0
}
],
"quantity": 2,
"extras": [],
"value": 50,
"tax": 5,
"discount": 0
},
"custom_timestamp": 1770376264940,
"preferred_locale": "en",
"gtm.uniqueEventId": 53
})


Cross_sell

Si attiva quando il cliente seleziona prodotti o servizi aggiuntivi (cross-sell) durante il processo di prenotazione.

Corpo dell'evento

Esegui il seguente codice quando il cliente fa clic sul pulsante Book now (Prenota ora):

dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object.
dataLayer.push({
"event": "cross-sell",
"label": "Mount Everest - Breathing course",
"checkout_mode": "popup",
"product_id": "d60965be-a76a-410f-8e88-2f839aeecfbd",
"option_id": "1e143307-1ef3-4d3a-8005-b9adb3e54d5b",
"order_id": "17def567-005d-43be-ad81-6a904325b17c",
"custom_timestamp": "1759833980195",
"preferred_locale": "en",
"gtm.uniqueEventId": 72
})


Select_question

Questo evento viene attivato quando il cliente risponde a una o più domande nel passaggio Questions (Domande) .

Corpo dell'evento

Esegui il seguente codice quando il cliente risponde a una o più domande e fa clic sul pulsante Continue (Continua):

dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object.
dataLayer.push({
"event": "select_question",
"crossSell": false,
"questions": [
{
"question": "Confirmation that you are in good health is required.",
"answer": "I understand",
"unit_name": null
}
],
"product_id": "c097cd5f-e7eb-45dc-adff-e00894d063cb",
"option_id": "7319e191-e1e5-41b3-9cc8-0f94faea98d2",
"order_id": "17def567-005d-43be-ad81-6a904325b17c",
"custom_timestamp": "1759833980195",
"preferred_locale": "en",
"gtm.uniqueEventId": 58
})


Select_pickup

Questo evento viene attivato quando il cliente seleziona un punto di raccolta nel passaggio Select Pickup (Seleziona punto di raccolta) .

Corpo dell'evento

Esegui il seguente codice quando il cliente seleziona un punto di raccolta per la prenotazione e fa clic sul pulsante Continue (Continua) :

dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object.
dataLayer.push({
"event": "select_pickup",
"label": "Hotel Bishram",
"pickups": [
{
"label": "Hotel Bishram",
"item_name": "Mount Everest",
"item_variant": "Mount Everest - Ascent to Camp 3"
}
],
"checkout_mode": "popup",
"crossSell": false,
"product_id": "c097cd5f-e7eb-45dc-adff-e00894d063cb",
"option_id": "7319e191-e1e5-41b3-9cc8-0f94faea98d2",
"order_id": null,
"custom_timestamp": "1759833980195",
"preferred_locale": "en",
"gtm.uniqueEventId": 70
})


View_cart

Identifica l'evento sul tuo sito web che corrisponde alla visualizzazione del carrello.

Corpo dell'evento

Esegui il seguente codice per tracciare la sezione Cart Summary (Riepilogo carrello) nel passaggio Checkout (Checkout):

dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object.
dataLayer.push({
"event": "view_cart",
"ecommerce": {
"order_id": "17def567-005d-43be-ad81-6a904325b17c",
"coupons": [],
"currency": "EUR",
"checkout_mode": "popup",
"items": [
{
"item_id": "unit_38d8b24e-89a9-488c-9f51-6981dc56a581",
"booking_id": "2a37bb6d-a62a-4d73-b147-3155bfad1d0f",
"product_id": "69f07800-0b30-4824-b462-09a7f195295b",
"item_name": "Chitwan National Park",
"option_id": "DEFAULT",
"item_variant": "Chitwan National Park",
"item_category": "6 seater car",
"item_category2": "2024-09-13",
"item_category3": "15:30:00",
"item_category4": "",
"crossSell": false,
"multidate": false,
"price": 400,
"tax": 0,
"discount": 0,
"quantity": 1,
"extras": [],
"packages": []
}
],
"quantity": 1,
"extras": [],
"value": 400,
"tax": 0,
"discount": 0
},
"custom_timestamp": "1759833980195",
"preferred_locale": "en",
"gtm.uniqueEventId": 85
})

📒 NOTA

Tieni presente che nella versione desktop sia l'evento view_cart sia l'evento begin_checkout devono essere attivati dalla pagina Checkout (Checkout). Nella versione mobile queste due sezioni si trovano su schermate separate, quindi anche gli eventi view_cart e begin_checkout vengono attivati da schermate diverse.


Begin_checkout

Identifica l'evento sul tuo sito web che corrisponde all'avvio del processo di checkout.

Corpo dell'evento

Esegui il seguente codice per tracciare il passaggio Checkout (Checkout):

dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object.
dataLayer.push({
"event": "begin_checkout",
"ecommerce": {
"order_id": "17def567-005d-43be-ad81-6a904325b17c",
"coupons": [],
"currency": "EUR",
"checkout_mode": "popup",
"items": [
{
"item_id": "unit_38d8b24e-89a9-488c-9f51-6981dc56a581",
"booking_id": "2a37bb6d-a62a-4d73-b147-3155bfad1d0f",
"product_id": "69f07800-0b30-4824-b462-09a7f195295b",
"item_name": "Chitwan National Park",
"option_id": "DEFAULT",
"item_variant": "Chitwan National Park",
"item_category": "6 seater car",
"item_category2": "2024-09-18",
"item_category3": "14:30:00",
"item_category4": "",
"crossSell": false,
"multidate": false,
"price": 400,
"tax": 0,
"discount": 0,
"quantity": 1,
"extras": [],
"packages": []
}
],
"quantity": 1,
"extras": [],
"value": 400,
"tax": 0,
"discount": 0
},
"custom_timestamp": "1759833980195",
"preferred_locale": "en",
"gtm.uniqueEventId": 86
})

📒 NOTA

Tieni presente che nella versione desktop sia l'evento view_cart sia l'evento begin_checkout devono essere attivati dalla pagina Checkout (Checkout). Nella versione mobile queste due sezioni si trovano su schermate separate, quindi anche gli eventi view_cart e begin_checkout vengono attivati da schermate diverse.


Edit_booking

Attivato quando il cliente modifica la prenotazione.

Corpo dell'evento

Esegui il seguente codice quando il cliente fa clic sul pulsante Edit (Modifica):

dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object.
dataLayer.push({
"event": "edit_booking",
"label": "Mount Everest",
"checkout_mode": "popup",
"product_id": "c097cd5f-e7eb-45dc-adff-e00894d063cb",
"option_id": "7319e191-e1e5-41b3-9cc8-0f94faea98d2",
"order_id": "17def567-005d-43be-ad81-6a904325b17c",
"custom_timestamp": "1759833980195",
"preferred_locale": "en",
"gtm.uniqueEventId": 105
})


Remove_booking

Attivato quando il cliente elimina la prenotazione.

Corpo dell'evento

Esegui il seguente codice quando il cliente fa clic sul pulsante Remove (Rimuovi):

dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object.
dataLayer.push({
"event": "remove_booking",
"label": "Mount Everest",
"checkout_mode": "popup",
"product_id": "c097cd5f-e7eb-45dc-adff-e00894d063cb",
"option_id": "7319e191-e1e5-41b3-9cc8-0f94faea98d2",
"order_id": "17def567-005d-43be-ad81-6a904325b17c",
"custom_timestamp": "1759833980195",
"preferred_locale": "en",
"gtm.uniqueEventId": 111
})


Create_or_update_order

Attivato quando il cliente ha compilato tutti i dati di contatto essenziali, ha spuntato tutti i campi obbligatori e procede al pagamento.

Corpo dell'evento

Esegui il seguente codice quando il cliente fa clic sul pulsante Pay Now (Paga ora):

dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object.
dataLayer.push({
"event": "create_or_update_order",
"ecommerce": {
"order_id": "17def567-005d-43be-ad81-6a904325b17c",
"coupons": [],
"currency": "EUR",
"checkout_mode": "popup",
"items": [
{
"item_id": "unit_2e1348c9-32c3-478a-9983-395bdd0267c8",
"booking_id": "a1026fcc-b02c-47ab-813b-8ea5a2d04666",
"product_id": "d60965be-a76a-410f-8e88-2f839aeecfbd",
"item_name": "Mount Everest - Breathing course",
"option_id": "1e143307-1ef3-4d3a-8005-b9adb3e54d5b",
"item_variant": "Camp 2",
"item_category": "Adult",
"item_category2": "2024-09-19",
"item_category3": "00:00:00",
"item_category4": "",
"crossSell": false,
"multidate": false,
"price": 5,
"tax": 0,
"discount": 0,
"quantity": 1,
"extras": [],
"packages": []
}
],
"quantity": 1,
"extras": [],
"value": 5,
"tax": 0,
"discount": 0
},
"custom_timestamp": "1759833980195",
"preferred_locale": "en",
"gtm.uniqueEventId": 117
})


Quote_confirmed

Attivato quando il cliente compila tutti i dati di contatto obbligatori nella pagina Checkout (Checkout) e sceglie di salvare la prenotazione come preventivo invece di procedere al pagamento.

Corpo dell'evento

Esegui il seguente codice quando l'utente preme il pulsante Save for later (Salva per dopo) per salvare la prenotazione per un secondo momento nella pagina Checkout (Checkout):

dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object.
dataLayer.push({
"event": "quote_confirmed",
"ecommerce": {
"order_id": "7cab3c1b-ce19-440a-b98b-88e30f20c850",
"coupons": [],
"currency": "EUR",
"checkout_mode": "embedded",
"items": [
{
"item_id": "unit_38d8b24e-89a9-488c-9f51-6981dc56a581",
"booking_id": "9cfbd3a2-1b76-40fc-87e1-a8a41e2af2c8",
"product_id": "69f07800-0b30-4824-b462-09a7f195295b",
"item_name": "Chitwan National Park",
"option_id": "DEFAULT",
"item_variant": "Chitwan National Park",
"item_category": "6 seater car",
"item_category2": "2025-10-08",
"item_category3": "10:30:00",
"item_category4": "",
"crossSell": false,
"multidate": false,
"price": 400,
"tax": 0,
"discount": 0,
"quantity": 1,
"extras": [],
"packages": []
}
],
"quantity": 1,
"extras": [],
"value": 400,
"tax": 0,
"discount": 0
},
"customer": {
"title": null,
"fullName": "John Doe",
"firstName": "John",
"lastName": "Doe",
"emailAddress": "[email protected]",
"phoneNumber": "+421123456789",
"age": null,
"birthdate": "1982-10-23",
"locales": [
"en"
],
"streetAddress": "Běhounská",
"city": "Brno-střed",
"state": null,
"postalCode": "60200",
"country": "CZ",
"notes": null,
"allowMarketing": true,
"taxId": null,
"company": null
},
"custom_timestamp": "1759833980195",
"preferred_locale": "en",
"gtm.uniqueEventId": 118
})


Add_payment_info

Determina l'evento, che sul tuo sito web, corrisponde all'inserimento delle informazioni di pagamento da parte del cliente durante il checkout.

Corpo dell'evento

Se non si tratta di una pagina esterna, esegui il seguente codice quando l'utente seleziona il metodo di pagamento nella pagina Payment (Pagamento):

dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object.
dataLayer.push({
"payment_type": "Cards",
"event": "add_payment_info",
"ecommerce": {
"order_id": "fa37528e-c0d2-4516-a4b6-71e10c994602",
"currency": "EUR",
"checkout_mode": "popup",
"items": [
{
"item_id": "unit_2e1348c9-32c3-478a-9983-395bdd0267c8",
"booking_id": "e5132bbf-b6d1-48c3-8e35-c9adedef210a",
"product_id": "d60965be-a76a-410f-8e88-2f839aeecfbd",
"item_name": "Mount Everest - Breathing course",
"option_id": "1e143307-1ef3-4d3a-8005-b9adb3e54d5b",
"item_variant": "Camp 2",
"item_category": "Adult",
"item_category2": "2024-09-19",
"item_category3": "00:00:00",
"item_category4": "",
"crossSell": false,
"multidate": false,
"price": 5,
"tax": 0,
"discount": 0,
"quantity": 1,
"extras": [],
"packages": []
}
],
"quantity": 1,
"extras": [],
"value": 5,
"tax": 0,
"discount": 0
},
"custom_timestamp": "1759833980195",
"preferred_locale": "en",
"gtm.uniqueEventId": 118
})


Purchase

Identifica l'evento, che sul tuo sito web che corrisponde al completamento di un acquisto.

Corpo dell'evento

Usa il codice seguente quando viene visualizzata la pagina Thank you (Grazie) per tracciare un acquisto andato a buon fine:

dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object.
dataLayer.push({
"event": "purchase",
"ecommerce": {
"order_id": "fa37528e-c0d2-4516-a4b6-71e10c994602",
"coupons": [],
"currency": "EUR",
"checkout_mode": "popup",
"items": [
{
"item_id": "unit_2e1348c9-32c3-478a-9983-395bdd0267c8",
"booking_id": "e5132bbf-b6d1-48c3-8e35-c9adedef210a",
"product_id": "d60965be-a76a-410f-8e88-2f839aeecfbd",
"item_name": "Mount Everest - Breathing course",
"option_id": "1e143307-1ef3-4d3a-8005-b9adb3e54d5b",
"item_variant": "Camp 2",
"item_category": "Adult",
"item_category2": "2024-09-19",
"item_category3": "00:00:00",
"item_category4": "",
"price": 5,
"tax": 0,
"discount": 0,
"quantity": 1,
"extras": [],
"packages": []
}
],
"quantity": 1,
"extras": [],
"value": 5,
"tax": 0,
"discount": 0,
"transaction_id": "fa37528e-c0d2-4516-a4b6-71e10c994602",
"transaction_type": "ventrata"
},
"customer": {
"full_name": "Karel Fisher",
"email": "[email protected]",
"mobile": "+4201234567899",
"country": "CZ",
"postal_code": null
},
"custom_timestamp": "1759833980195",
"preferred_locale": "en",
"gtm.uniqueEventId": 119
})

📒 NOTA

'Transaction ID (ID transazione)' è l'identificatore univoco assegnato a ogni ordine. Nella pagina Bookings (Prenotazioni) > Orders (Ordini), premi il pulsante Show Columns (Mostra colonne) e aggiungi 'ID' alla tua vista. 'Order ID (ID ordine)' corrisponde a 'Transaction ID (ID transazione)' (Transaction ID = Order ID).

Orders - Transaction ID


Order_expired

Attivato quando una singola sessione di checkout scade senza un acquisto andato a buon fine oppure quando il cliente chiude il checkout prima di completare il pagamento.

Corpo dell'evento

Esegui il codice seguente quando la sessione di checkout scade e viene visualizzata la pagina Order expired (Ordine scaduto):

dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object.
dataLayer.push({
"event": "order_expired",
"order_id": "eb16d401-3b9f-44b7-b927-417487369f70",
"checkout_mode": "popup",
"page": "bottom_bar",
"product_id": null,
"option_id": null,
"custom_timestamp": "1759833980195",
"preferred_locale": "en",
"gtm.uniqueEventId": 119
})


Come verificare se il Web Checkout sta inviando dati

  • Puoi utilizzare un'estensione del browser in grado di controllare il data layer, ad esempio dataLayer checker.
    ​


Pubblicare e testare

Dopo aver configurato tutti i tag, gli attivatori e i parametri, salva e pubblica il contenitore GTM per rendere effettive le modifiche sul tuo sito web.
​

Testa l'implementazione del tracciamento eseguendo le azioni pertinenti sul tuo sito web e verificando che gli eventi vengano tracciati in GA4.
​


Verificare i dati in GA4

Una volta che i dati vengono inviati a GA4, accedi alla tua proprietà GA4 e vai alla sezione dei report.
​

Usa gli Event reports (Report sugli eventi) per analizzare e verificare che gli eventi tracciati vengano registrati correttamente.
​

Controlla e aggiorna regolarmente il contenitore GTM a secondo delle necessità, per garantire un tracciamento accurato e adeguarlo a eventuali modifiche del sito web o dei requisiti di tracciamento degli eventi.


I logs delle modifiche

Ultimo aggiornamento

I logs delle modifiche

6.2.2026

2.0.4 - aggiornato l'elenco degli eventi personalizzati e aggiunti gli eventi View_option_select, View_upgrade e View_cross_sell

7.10.2025

2.0.3 - aggiornati i parametri e i corpi degli eventi, aggiunti gli eventi Remove_unit, Quote_confirmed e Order_expired

17.9.2024

2.0.2 - aggiornati l'elenco degli eventi e i corpi degli eventi

18.12.2023

2.0.1 - aggiunto quantity in e-commerce

12.12.2023

2.0.0 - aggiunta la nuova struttura degli items + questions, pickups, extras

4.8.2023

1.0.4 - aggiunti alla documentazione esempi JSON concreti

20.7.2023

1.0.3 - aggiunte le informazioni del cliente all'evento purchase

29.6.2023

1.0.2 - il prezzo di un articolo è indicato per unità (non come totale)

28.6.2023

1.0.1 - aggiunto il conteggio 1 a quantity per l'evento view_item

22.5.2023

1.0.0 - Prima versione


​

Hai ricevuto la risposta alla tua domanda?