Tracking Möglichkeiten
Für das Tracking nach Buchungsabschluss bzw. nach dem Versenden der Anfrage gibt folgende Möglichkeiten.
Homepagebuchung (IBE) & Anfragemanager
Möglichkeit - Weiterleitung auf eigene "Danke" Seite
Grundsätzlich ist es möglich in den Online Modulen nach dem Buchungsvorgang auf eine eigene Danke-Seite weiterzuleiten. Auf dieser eigenen "Danke-Seite" könnte der Tracking-Code vom Webdesigner selbst eingebunden werden.
Bei der Einbindung sollte somit folgender Code berücksichtigt werden:
- data-redirect-url=“gewünschte Danke-Seite“
- data-redirect=“true“
D.h. das Code-Snippet könnte wie folgt aussehen:
Homepagebuchung (IBE)
Möglichkeit - Client-Side Tracking API
Eine weitere Möglichkeit des Trackings, wäre die Client-Side Tracking API. Diese ermöglicht es dem Webdesigner auf bestimmte Ereignisse der Casablanca IBE zu reagieren.
Folgende Events werden durch die API ausgelöst:
Event | Beschreibung |
---|---|
initComplete | IBE wurde vollständig geladen. |
searchOffers | Es wird nach Angeboten gesucht. |
searchCriteriaChanged | Der Gast hat seine Angaben geändert - eine neue Suche wird initiiert. |
offerSelected | Der Gast wählt eines der Angebote aus. |
viewOverview | Der Gast hat alle angefragten Zimmer ausgewählt und es wird ihm eine Übersicht dargestellt. |
book | Der Gast hat die Buchung abgeschlossen |
Hier ein HTML-Code mit eingebundener Tracking API (siehe Code ab "START TRACKING API").
<!DOCTYPE html>
<html lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8" />
<title>Tracking</title>
<script
src="https://code.jquery.com/jquery-2.2.4.min.js"
integrity="sha256-BbhdlvQf/xTY9gja0Dq3HiwQF8LaCRTXxZKRutelT44="
crossorigin="anonymous"
></script>
<script
src="https://frontend.casablanca.at/Scripts/headjs/head.js?Customer=AT_XXXXX_XXX"
data-headjs-load="https://frontend.casablanca.at/widgets/main.js?Customer=AT_XXXXX_XXX"
></script>
</head>
<body>
<br />
<br />
<div class="casa-container">
<div class="casa-row">
<div class="casa-col-md-12">
<div
class="casa-wdg"
data-casa-widget-type="IBE"
data-customer="AT_XXXXX_XXX"
data-company="COMP1"
data-language="de"
>
<div style="min-height:50px;text-align:center;">
<img
src="https://frontend.casablanca.at/Content/loader.svg"
alt="loading..."
style="margin:auto;"
width="40"
height="40"
/>
<noscript
>Your browser doesn't support JavaScript or it has been
disabled. To use the enquiry form, please make sure that
javascript is enabled.</noscript
>
</div>
</div>
</div>
</div>
</div>
<!-- START TRACKING API -->
<script type="text/javascript">
$(document).ready(function () {
var Casablanca = window.Casablanca || {};
Casablanca.callbacks = Casablanca.callbacks || {};
Casablanca.callbacks.IBE = Casablanca.callbacks.IBE || {};
Casablanca.callbacks.IBE.initComplete = function (data) {
// initalization complete
console.log({ event: "initComplete", data: data });
};
Casablanca.callbacks.IBE.searchOffers = function (data) {
// ibe searches for new offers completed
console.log({ event: "searchOffers", data: data });
};
Casablanca.callbacks.IBE.searchCriteriaChanged = function (data) {
// search criteria has changed, new search will be executed
console.log({ event: "searchCriteriaChanged", data: data });
};
Casablanca.callbacks.IBE.offerSelected = function (data) {
// guest has selected an offer
console.log({ event: "offerSelected", data: data });
};
Casablanca.callbacks.IBE.viewOverview = function (data) {
// guest selected all requested offers, load booking overview
console.log({ event: "viewOverview", data: data });
};
Casablanca.callbacks.IBE.book = function (data) {
// guest has booked the offer
console.log({ event: "book", data: data });
};
});
</script>
<!-- END TRACKING API -->
</body>
</html>
Rückgabewerte des jeweiligen "data" Elements (Beispiel)
Casablanca.callbacks.IBE.initComplete
Initialisieren der IBE mit den hinterlegten Standard-Suchkriterien:
{
"event": "initComplete",
"data": {
"languageCode": "de",
"arrival": "2021-07-30T00:00:00.000Z",
"departure": "2021-08-05T22:00:00.000Z",
"duration": 7,
"adults": 2,
"children": 0
}
}
Casablanca.callbacks.IBE.searchCriteriaChanged
Suche der Angebote wird geändert auf folgende Kriterien:
- zwei Zimmer
- Zimmer für 2 Erwachsene und 2 Kinder (4 & 12 Jahre alt)
- Zimmer für 1 Erwachsenen
{
"event": "searchCriteriaChanged",
"data": {
"searchDetails": {
"languageCode": "de",
"arrival": "2021-07-30T00:00:00.000Z",
"departure": "2021-08-05T22:00:00.000Z",
"rooms": [
{
"Index": 1,
"Adults": 2,
"Children": 2,
"ChildrenAges": [
4,
12
]
},
{
"Index": 2,
"Adults": 1,
"Children": 0,
"ChildrenAges": []
}
]
}
}
}
Casablanca.callbacks.IBE.searchOffers
Ergebnis der gesuchten Kriterien:
{
"event": "searchOffers",
"data": {
"searchDetails": {
"languageCode": "de",
"arrival": "2021-07-30T00:00:00.000Z",
"departure": "2021-08-05T22:00:00.000Z",
"rooms": [
{
"Index": 1,
"Adults": 2,
"Children": 2,
"ChildrenAges": [
4,
12
]
},
{
"Index": 2,
"Adults": 1,
"Children": 0,
"ChildrenAges": []
}
]
}
}
}
Casablanca.callbacks.IBE.offerSelected
Pro ausgewähltem Zimmer wird ein offerSelected-Event ausgelöst:
- Zimmer wird ein Vierbettzimmer (VBZ) ausgewählt
- Zimmer wird ein Einzelzimmer (EZ) ausgewählt
{
"event": "offerSelected",
"data": {
"selection": {
"languageCode": "de",
"arrival": "2021-07-30T00:00:00.000Z",
"departure": "2021-08-05T22:00:00.000Z",
"rooms": {
"Index": 1,
"Adults": 2,
"Children": 2,
"ChildrenAges": [
4,
12
],
"ChildrenCalculated": 2,
"Occupancy": 4
},
"roomCode": "VBZ",
"rateCode": "PMS_QCHC623G",
"isPackage": false
}
}
}
{
"event": "offerSelected",
"data": {
"selection": {
"languageCode": "de",
"arrival": "2021-07-30T00:00:00.000Z",
"departure": "2021-08-05T22:00:00.000Z",
"rooms": {
"Index": 2,
"Adults": 1,
"Children": 0,
"ChildrenAges": [],
"ChildrenCalculated": 0,
"Occupancy": 1
},
"roomCode": "EZ",
"rateCode": "PMS_QCHC623G",
"isPackage": false
}
}
}
Casablanca.callbacks.IBE.viewOverview
Gast geht mit "Fortfahren" Button weiter zur finalen Buchungsübersicht:
{
"event": "viewOverview",
"data": {
"bookingOverview": {
"languageCode": "de",
"arrival": "2021-07-29T22:00:00.000Z",
"departure": "2021-08-05T22:00:00.000Z",
"reference": "cbm2126508044",
"selectedRooms": [
{
"roomCode": "VBZ",
"rateCode": "PMS_QCHC623G",
"adults": 2,
"children": [
{
"age": 4,
"amount": 1
},
{
"age": 12,
"amount": 1
}
],
"roomTotal": 1881.2
},
{
"roomCode": "EZ",
"rateCode": "PMS_QCHC623G",
"adults": 1,
"children": [],
"roomTotal": 574.6
}
],
"total": 2455.8
}
}
}
Casablanca.callbacks.IBE.book
Gast schließt die Buchung mit "Jetzt kostenpflichtig für xx,xx € buchen" ab:
- im Beispiel hat der Gast noch zusätzlich die Reiseversicherung mitgebucht ("insuranceBooked": true)
{
"event": "book",
"data": {
"bookingOverview": {
"languageCode": "de",
"arrival": "2021-07-29T22:00:00.000Z",
"departure": "2021-08-05T22:00:00.000Z",
"reference": "cbm2126508044",
"selectedRooms": [
{
"roomCode": "VBZ",
"rateCode": "PMS_QCHC623G",
"adults": 2,
"children": [
{
"age": 4,
"amount": 1
},
{
"age": 12,
"amount": 1
}
],
"roomTotal": 1881.2
},
{
"roomCode": "EZ",
"rateCode": "PMS_QCHC623G",
"adults": 1,
"children": [],
"roomTotal": 574.6
}
],
"total": 2580.8,
"insuranceBooked": true,
"insurancePremium": 125
}
}
}
Über die detaillierte Einbindung von Google-Analytics e-Commerce können wir leider keinen Support geben.
Newsletter
Verlinkungen auf Newsletter-Vorlagen sollten hierbei mit Google Kapagnen Tracking URL´s versehen werden.
Hier zum Google Artikel -> https://support.google.com/analytics/answer/1033863?hl=de#zippy=%2Cthemen-in-diesem-artikel
Details zum Newsletter werden in Casablanca bereits protokolliert und können in den Casablanca OnlineSystems eingesehen werden.
Beispiel:
Tags
Tracking
Google Analytics
IBE
Anfragemanager
Newsletter