Die solute-Click-ID muss bei einer Conversion an unseren Tracking-Server gesendet werden. Um diesen Vorgang zu vereinfachen, bieten wir zwei Javascript-Snippets an, die das Senden der solute-Click-ID erledigen – das Javascript muss dafür sowohl auf der Angebotsseite | Einstiegsseite als auch auf der Bestellbestätigungsseite integriert werden.
Das Landingpage Javascript wird auf den Angebotsseiten eingefügt. Es prüft, ob in den Parametern der Einstiegsseiten-URL ein Parameter "soluteclid" enthalten ist. Ist das der Fall, wird die aufgerufene Einstiegsseiten-URL im LocalStorage des Browsers gespeichert. Außerdem wird die Einstiegsseiten-URL an solute gesendet.
<script> (function soluteLandingTracking(){ if (location.href.indexOf("soluteclid") < 0) return; localStorage.setItem("soluteclid", (new Date()).getTime()+" "+location.href); var url = "https://cmodul.solutenetwork.com/landing"; url += "?url=" + encodeURIComponent(location.href); var req = new XMLHttpRequest(); req.open("GET", url); req.send(); })(); </script>
Das Conversionpage Javascript wird auf der Bestellbestätigungsseite eingefügt - also der Seite die angezeigt wird, nachdem ein Kauf erfolgt ist.
Einer Conversion sollte immer ein monetärer (Netto-)Wert zugewiesen werden (Warenkorbhöhe ohne MwSt und ohne Versandkosten), sowie eine eindeutige ID zum Bestellprozess ((Order-ID), damit Du eine Referenz zu Deinen eigenen Verkaufsdatensätzen hast. Wir empfehlen einen Hash der Bestellnummer. Ein optionaler anteiliger Faktor kann auch angegeben werden. Durch den (Attributions-) Faktor, kannst Du den Anteil der solute am Kauf angeben. Möchtest Du den Faktor nicht nutzen, dann übermittele einfach den Wert 1 als Faktor. Achte auf den Einsatz einer Trackingweiche! Eine Trackingweiche gewährleistet die korrekte Zuordnung von Verkäufen und Umsätzen innerhalb der Customer Journey. Die Trackingweiche verwaltet Code-Snippets von verschiedenen Anbietern und steuert diese nach vom Shop definierten Regeln aus.
<script> soluteConversionTracking({ VALUE: "123.98", ORDER_ID: "abc-987", FACTOR: "1", }); function soluteConversionTracking(data) { var ttl = 1000*60*60*24*30; var a = localStorage.getItem("soluteclid"); if (!a) return; var b = a.split(" ", 2); if (parseInt(b[0])+ttl > (new Date()).getTime()) { var url = "https://cmodul.solutenetwork.com/conversion"; url += "?val=" + encodeURIComponent(data.VALUE); url += "&oid=" + encodeURIComponent(data.ORDER_ID); url += "&factor=" + encodeURIComponent(data.FACTOR); url += "&url=" + encodeURIComponent(b[1]); var req = new XMLHttpRequest(); req.open("GET", url); req.send(); } else { localStorage.removeItem("soluteclid"); } } </script>
Wichtig: Sobald Du das Tracking integriert hast, gib uns bitte kurz Bescheid an config@solute.de, damit wir die Prüfung und Aktivierung vornehmen können – andernfalls wird das Tracking nicht funktionieren.
Du kannst entweder die GTM-Vorlage unter Tag Manager Template Gallery oder die folgende Anleitung nutzen.
Achtung: Ohne das Landingpage Tracking funktioniert das Conversion Tracking nicht.
1. Unter "Tags > Neu" ein neues Tag erstellen.
2."Unbenanntes Tag" in "Solute Landingpage" abändern, bei Tag-Konfiguration "Benutzerdefinertes HTML" auswählen und diesen Code-Schnipsel reinkopieren:
<script> (function soluteLandingTracking(){ if (location.href.indexOf("soluteclid") < 0) return; localStorage.setItem("soluteclid", (new Date()).getTime()+" "+location.href); var url = "https://cmodul.solutenetwork.com/landing"; url += "?url=" + encodeURIComponent(location.href); var req = new XMLHttpRequest(); req.open("GET", url); req.send(); })(); </script>
1. Unter "Tags > Neu" ein neues Tag erstellen.
2. "Unbenanntes Tag" in "Solute Conversion" abändern, bei Tag-Konfiguration "Benutzerdefinertes HTML" auswählen und diesen Code-Schnipsel reinkopieren:
<script> soluteConversionTracking({ VALUE: "{{DLV_NettoSumme}}", ORDER_ID: "{{DLV_Bestellnummer}}", FACTOR: "1", }); function soluteConversionTracking(data) { var ttl = 1000*60*60*24*30; var a = localStorage.getItem("soluteclid"); if (!a) return; var b = a.split(" ", 2); if (parseInt(b[0])+ttl > (new Date()).getTime()) { var url = "https://cmodul.solutenetwork.com/conversion"; url += "?val=" + encodeURIComponent(data.VALUE); url += "&oid=" + window.btoa(encodeURIComponent(data.ORDER_ID)); url += "&factor=" + encodeURIComponent(data.FACTOR); url += "&url=" + encodeURIComponent(b[1]); var req = new XMLHttpRequest(); req.open("GET", url); req.send(); } else { localStorage.removeItem("soluteclid"); } } </script>
Damit der Code funktionert, müssen die beiden Variablen "DLV_NettoSumme" und "DLV_Bestellnummer" im Google Tag Manager vorhanden sein. Eventuell sind diese anders bezeichnet, in diesem Fall müssen lediglich die korrekten Variablennamen anstatt "DLV_NettoSumme" und "DLV_Bestellnummer" eingefügt werden. Falls nicht müssen diese erst unter "Variablen > Neu" angelegt werden. Falls diese Information im DataLayer vorhanden ist, kann diese Variable als "Datenschichvariable" und als Name der entsprechende Name (z.B.: "ecommerce.purchase.actionField.id" oder "ecommerce.purchase.actionField.value", abhängig vom Shopsystem bzw. der Integration des GTM). Ist diese Information nicht im DataLayer, kann man diese meistens als JavaScript-Variable auslesen.
3. Bei Trigger den entsprechenden Trigger für die Bestellbestätigungsseite auswählen. Abhängig vom Shopsystem kann die Information im DataLayer vorhanden sein oder man kann es anhand der URL festmachen.
Wichtig: Sobald Du das Tracking integriert hast, gib uns bitte kurz Bescheid an config@solute.de, damit wir die Prüfung und Aktivierung vornehmen können – andernfalls wird das Tracking nicht funktionieren.
Alternativ können Landing- und Conversion-Aufrufe auch direkt über einen HTTP GET-Request übermittelt werden. Zum Beispiel aus dem Backend der Shop-Software heraus. Dabei muss nur die URL der Einstiegsseite (mit Parameter "soluteclid") übergeben werden.
Um den Aufruf der Einstiegsseite (Landingpage) zu tracken, wird die URL der Einstiegsseite als Parameter übergeben.
URL: https://cmodul.solutenetwork.com/landing Request: GET Parameter: - url: Die URL der Einstiegsseite. Response: 204 No Content
GET https://cmodul.solutenetwork.com/landing?url=ESCAPED_URL
Um den Aufruf der Bestellbestätigungsseite zu tracken, wird die gleiche URL der Einstiegsseite erneut als Parameter übergeben. Zusätzlich werden der Gesamtwert des Warenkorbs sowie die Order-ID (z.B. Hash der Bestellnummer) übergeben.
URL: https://cmodul.solutenetwork.com/conversion Request: GET Parameter: - url: Die URL der Einstiegsseite. - val: Der Gesamtwarenkorbswert (Netto-Betrag ohne Versandkosten). - oid: Eine eindeutige ID zum Bestellprozess (z.B. Hash der Bestellnummer). - factor: Optional. Anteil der solute am Kauf. Response: 204 No Content
GET https://cmodul.solutenetwork.com/conversion?url=ESCAPED_URL&val=ESCAPED_VALUE&oid=ESCAPED_ORDER_ID
Wichtig: Sobald Du das Tracking integriert hast, gib uns bitte kurz Bescheid an config@solute.de, damit wir die Prüfung und Aktivierung vornehmen können – andernfalls wird das Tracking nicht funktionieren.