GA4 és GTM események az online időpontfoglalás folyamataiban
Rövid összefoglaló
Az online időpontfoglalási folyamat során a rendszer GA4 és GTM integrációval rendelkezik. A főbb lépésekhez kapcsolódóan DataLayer események kerülnek elküldésre a megfelelő attribútumokkal. Minden esemény előtt tisztítás történik a következő hívással: `dataLayer.push({'event': 'cleanup', 'ecommerce': null});`.
Az alábbiakban eseményenként megtalálhatók a triggerelés körülményei és a DataLayer-be küldött adatok mintái.
Előfeltételek
A GA4 és GTM integráció engedélyezve a rendszerben.
Lépések
1. Szakterület vagy szakember választás
Esemény akkor fut le, amikor a felhasználó szakterületet vagy szakembert választ a listából.
Küldött adatok:
item_name: Szakterület vagy orvos neve
item_id: Szakterület ID vagy orvos ID (string)
item_category: Választó felület típusa, pl. Szakemberválasztó
index: A találat sorszáma a listában (integer)
Példa:
dataLayer.push({'event': 'cleanup', 'ecommerce': null});
dataLayer.push({
'event': 'select_item',
'ecommerce': {
'items': [{
'item_name': 'Dr. Minta Ágnes', // Szakterület vagy orvos neve
'item_id': '302194', // Szakterület ID vagy orvos ID, string
'item_category': 'Szakemberválasztó', // Választó felület típusa
'index': 1 // Helye a listában, integer
}]
}
});
2. Szakterület kiválasztása utáni vizsgálati lista megjelenése
Esemény akkor fut le, ha megjelenik a kiválasztott szakterülethez tartozó vizsgálatok listája.
Szabály egyedi ár esetén:
Egyedi áras vizsgálatnál a `price` paraméter nem kerül beküldésre.
A `custom_price` paraméter értéke ilyenkor `true`.
Küldött adatok:
currency: HUF
items tömb elemei:
item_name: Vizsgálat neve
item_id: Vizsgálat ID (string)
item_category: Szakterület neve
price: Vizsgálat ára (double, csak nem egyedi ár esetén)
custom_price: true, ha egyedi árú; false, ha fix árú
index: A vizsgálat sorszáma a listában
Példa:
dataLayer.push({'event': 'cleanup', 'ecommerce': null});
dataLayer.push({
'event': 'view_item_list',
'ecommerce': {
'currency': 'HUF',
'items': [{
'item_name': 'Kapilláris mikroszkópia, bőrgyógyászati alapvizsgálattal együtt', // Vizsgálat neve
'item_id': '43622', // Vizsgálat ID, string
'item_category': 'Gyermek bőrgyógyászat', // Szakterület neve
'price': '43900.00', // Vizsgálat ára, double (csak fix ár esetén)
'custom_price': false, // Egyedi ár esetén true, egyébként false
'index': 1
}]
}
});
3. Vizsgálat kiválasztása
Esemény akkor fut le, ha a felhasználó egy konkrét vizsgálatra kattint a listából.
Küldött adatok:
currency: HUF
items tömb (egyetlen vizsgálattal), ugyanazokkal a paraméterekkel, mint a listanézetben.
Példa:
dataLayer.push({'event': 'cleanup', 'ecommerce': null});
dataLayer.push({
'event': 'select_item',
'ecommerce': {
'currency': 'HUF',
'items': [{
'item_name': 'Kapilláris mikroszkópia, bőrgyógyászati alapvizsgálattal együtt',
'item_id': '43622',
'item_category': 'Gyermek bőrgyógyászat',
'price': '43900.00',
'custom_price': false,
'index': 1
}]
}
});
4. Időpontválasztó oldal megjelenése
Esemény akkor fut le, amikor a felhasználó az adott orvoshoz vagy szakterülethez tartozó elérhető időpontokat listázó oldalra érkezik.
Küldött adatok:
currency: HUF
items tömb elemei:
item_name: Vizsgálat neve
item_id: Vizsgálat ID (string)
item_category: Szakterület neve
item_category2: Vizsgálat neve
price: Vizsgálat ára (double, ha nem egyedi ár)
custom_price: Egyedi ár jelzése
doctor_id: Orvos ID (string)
Példa:
dataLayer.push({'event': 'cleanup', 'ecommerce': null});
dataLayer.push({
'event': 'view_item',
'ecommerce': {
'currency': 'HUF',
'items': [{
'item_name': 'Kapilláris mikroszkópia, bőrgyógyászati alapvizsgálattal együtt',
'item_id': '43622',
'item_category': 'Gyermek bőrgyógyászat',
'item_category2': 'Kapilláris mikroszkópia, bőrgyógyászati alapvizsgálattal együtt',
'price': '43900.00',
'custom_price': false,
'doctor_id': '168159' // Orvos ID, string
}]
}
});
5. "Lefoglalom" gomb megnyomása (véglegesítési folyamat indítása)
Esemény akkor fut le, amikor a felhasználó elindítja a foglalás véglegesítését a "Lefoglalom" gombbal.
Küldött adatok:
currency: HUF
items tömb elemei:
item_name, item_id, item_category, item_category2: a vizsgálat adatai
price, custom_price: ár adatok
doctor_id: Orvos ID (string)
item_variant: Az időpont ISO dátum-idő formátumban
location: Intézmény neve
Példa:
dataLayer.push({'event': 'cleanup', 'ecommerce': null});
dataLayer.push({
'event': 'add_to_cart',
'ecommerce': {
'currency': 'HUF',
'items': [{
'item_name': 'Kapilláris mikroszkópia, bőrgyógyászati alapvizsgálattal együtt',
'item_id': '43622',
'item_category': 'Gyermek bőrgyógyászat',
'item_category2': 'Kapilláris mikroszkópia, bőrgyógyászati alapvizsgálattal együtt',
'price': '43900.00',
'custom_price': false,
'doctor_id': '168159',
'item_variant': '2023-02-17T09:00:00+00:00', // Kiválasztott időpont
'location': 'Intézmény neve'
}]
}
});
6. Sikeres időpontfoglalás
Esemény akkor fut le, amikor a felhasználó véglegesíti az időpontját és az sikeres foglalásként rögzítésre kerül.
Küldött adatok:
currency: HUF
value: Végösszeg adótartalommal (double)
tax: Adótartalom vagy 0.00 (double)
transaction_id: Tranzakció ID
coupon: Kuponkód vagy üres string
affiliation: Aktuális érték
items: A foglalt tétel részletei (lásd lent)
Példa:
dataLayer.push({'event': 'cleanup', 'ecommerce': null});
dataLayer.push({
'event': 'purchase',
'ecommerce': {
'currency': 'HUF',
'value': '43900.00', // Végösszeg adótartalommal, double
'tax': 0.00, // Adótartalom vagy 0.00, double
'transaction_id': '375a111f-4bab-4ec1-b7f6-f77bf84bdb0b', // Tranzakció ID
'coupon': '', // Kuponkód vagy üres string
'affiliation': '', // A jelenlegi érték
'items': [{
'item_name': 'A vizsgálat neve',
'item_id': '43622',
'item_category': 'Gyermek bőrgyógyászat',
'item_category2': 'Kapilláris mikroszkópia, bőrgyógyászati alapvizsgálattal együtt',
'price': '43900.00',
'custom_price': false,
'doctor_id': '168159',
'item_variant': '2023-02-17T09:00:00+00:00',
'location': 'Intézmény neve'
}]
}
});
7. Időpont lemondása
Esemény akkor fut le, amikor a felhasználó online mondja le az időpontját.
Küldött adatok:
transaction_id: A lemondott foglalás tranzakció azonosítója
Példa:
dataLayer.push({'event': 'cleanup', 'ecommerce': null});
dataLayer.push({
'event': 'refund',
'ecommerce': {
'transaction_id': '375a111f-4bab-4ec1-b7f6-f77bf84bdb0b'
}
});
8. Időpont módosítása
Időpont módosításakor a szükséges lépések:
Küldjön egy `refund` eseményt az eredeti foglalás `transaction_id` értékével.
Küldjön egy új `purchase` eseményt ugyanazzal a `transaction_id`-val, de a módosított `item_variant` paraméterrel.
A fenti `refund` és `purchase` eseményminták használhatók, az `item_variant` értékét az új időpontra cserélve.
Tippek
Minden esemény előtt használja a tisztító hívást: `{'event': 'cleanup', 'ecommerce': null}` a korábbi `ecommerce` objektum törléséhez.
Egyedi áras vizsgálat esetén ne küldje a `price` mezőt, és állítsa a `custom_price` értékét `true`-ra.
Az azonosítók (`item_id`, `doctor_id`, `transaction_id`) string típusúak.
Az `item_variant` az időpont ISO formátumú dátum-idő értéke.
Összegzés
A rendszer az online időpontfoglalási folyamat lépéseihez GA4 kompatibilis DataLayer eseményeket küld, egységes adatstruktúrával. A példák és mezőleírások alapján a GTM-ben és GA4-ben könnyen konfigurálhatók a megfelelő tagek és eseménymérések. Minden esemény előtt a `cleanup` hívás gondoskodik a korábbi `ecommerce` adatok törléséről.
