So richten Sie Bezahlstation-Analytics in GTM ein

So funktioniert's

Diese Anleitung behandelt die grundlegende Integration von Web-Analytics-Systemen von Drittanbietern in den Zahlungsfluss der Xsolla-Bezahlstation und erklärt, wie man wertvolle Daten von Ereignissen und Parametern gewinnt.

Note
Beachten Sie, dass verschiedene externe Faktoren (Scriptblocker, Verbindungsabbrüche, Abbrüche von seitens des Benutzers oder Sitzungsende) die Genauigkeit von Webanalysen beeinträchtigen.

Für wen ist es

Partner, die die Bezahlstation integriert haben.

Wie komme ich dazu

Um Web-Analytics-Systeme zu integrieren, nehmen Sie folgende GTM-Einstellungen vor:

  1. Hinzufügen eines Scripts zum benutzerdefinierten HTML-Tag.
  2. Variablen festlegen.
  3. Trigger hinzufügen.
  4. Tags hinzufügen.

Script zum benutzerdefinierten HTML-Tag hinzufügen

Erstellen Sie ein benutzerdefiniertes HTML-Tag, kopieren Sie den folgenden Code und fügen Sie ihn ein:

Copy
Full screen
Small screen
<script>
window.onmessage = function payStationStatus(event) {
  if (event.origin === "https://secure.xsolla.com") {
    try {
      var data = JSON.parse(event.data).data;           

      if (data.action === 'change-status') {
          dataLayer.push({'event': 'status', 'changeStatus': true, 'status': data.value})
      }

      if (data.action === 'choose-method' && data.value) {
        dataLayer.push({'event': 'choosePaymentMethod', 'choosePaymentMethod': true, 'paymentMethod': data.value})       
      }

      if (data.action === 'click-btn-pay') {
          dataLayer.push({'event': 'clickPayButton', 'clickPayButton': true})
      }

      if (data.action === 'close-widget') {       
          dataLayer.push({'event': 'closeWidget', 'closeWidget': true})
      }

      if (data.action === 'create-invoice') {
          dataLayer.push({
    'event': 'invoiceCreated',
            'invoiceCreated': true,
            'action': data.action,
    'coupon_code': data.coupon_code,
    'date': data.date,
    'milliseconds': data.milliseconds,
    'payment_country': data.payment_country,
    'purchase_currency': data.purchase_currency,
    'purchase_description': data.purchase_description,
    'purchase_external_id': data.purchase_external_id,
    'purchase_invoice_id': data.purchase_invoice_id,
    'purchase_sku': data.purchase_sku,
    'purchase_digital_content_sku': data.purchase_digital_content_sku,
    'purchase_sum': data.purchase_sum,
    'purchase_type': data.purchase_type,
    'session_id': data.session_id,
    'state': data.state,
    'timezone': data.timezone,
    'user_country': data.user_country,
    'user_id': data.user_id,
    'value': data.value,
    'virtual_currency_amount': data.virtual_currency_amount
          });
      }

      if (data.state) {
          dataLayer.push({'event': 'changeState', 'changeState': true, 'state': data.state});
      }
    } catch (e) {
      return;
    }
  }
};
</script>

Das Skript sollte beim Öffnen des Zahlungsportals ausgelöst werden.

Variablen festlegen

Es gibt zwei Datenschichtvariablen, die definiert werden müssen, einschließlich:

  • Ereignisse — Zur Erstellung von Triggern und zum Erhalt vordefinierter Werte
  • Parameter — Zur Übermittlung von Informationen an ein Analytics-System und zur Ausgabe beliebige Werte

So fügen Sie eine Variable hinzu:

Ereignisse

BezeichnungBeschreibung
statusZahlungsstatus im System, der nur aktualisiert werden kann, wenn das Zahlungsportal geöffnet ist. Das bedeutet, solange ein Benutzer ein Browserfenster geöffnet hat, kann ein Ereignis, basierend auf einer Statusänderung, festgelegt werden. Verfügbare Status: created, processing, done, cancel, xsollaRefund, held, error.
choosePaymentMethodEin Benutzer hat ein Zahlungsverfahren gewählt. Verfügbarer Status: true.
clickPayButtonEin Benutzer hat auf den Bestätigungsknopf geklickt, nachdem er die Zahlungsdaten übermittelt hat. Verfügbarer Status: true.
changeStateVerfolgen Sie den Schritt eines Benutzers im Zahlungsfluss. Die vollständige Liste finden Sie hier. Verfügbare Status: list – Seite mit der Liste der Zahlungsverfahren, payment – Seite mit der Zahlungsübermittlung, status - Seite mit dem Zahlungsstatus.

Schlüsselparameter

BezeichnungBeschreibung
payment_instance_nameName des Zahlungsverfahrens.
actionEreignisname.
dateDatum und Uhrzeit im GMT-Format.
purchase_currencyKaufwährung.
purchase_invoice_idRechnungsnummer im Xsolla-System.
purchase_skuSKU des erworbenen Gegenstands.
purchase_digital_content_skuSKU des erworbenen Spielschlüsselpakets.
purchase_sumNominaler Kaufbetrag.
user_idBenutzer-ID (v1).
virtual_currency_amountBetrag in virtueller Währung.

Eine vollständige Liste der Parameter finden Sie hier.

Trigger hinzufügen

Um einen Trigger hinzuzufügen, benötigen Sie eine oder oder mehrere Datenschichtvariablen, die unter "Ereignisse" aufgelistet sind.

BEISPIEL: Informationen sollen an Facebook gesendet werden, nachdem der Benutzer die Zahlungsstatusseite besucht hat.

Tags hinzufügen

Dieser Schritt hängt vom verwendeten Web-Analytics-System ab. Als Beispiel betrachten wir Google Analytics.

BEISPIEL: Ein Benutzer ruft die Statusseite auf. Diese Ereignisinformation sollen, genauso wie der Zahlungsbetrag und die Währung, an Google Analytics übermittelt werden (Die Währung ist eine benutzerdefinierte Metrik in Google Analytics).

Note
Für Kaufereignisse empfehlen wir dringend die Zahlungsbestätigung des Benutzers — clickPayButton — da für jedes weitere Ereignis der Benutzer das Browserfenster geöffnet lassen muss. Nicht immer führt die Transaktionsbestätigung zu einer postMessage-Initiierung, bevor der Benutzer die Registerkarte schließt.
War dieser Artikel hilfreich?
Vielen Dank!
Gibt es etwas, das wir verbessern können? Nachricht
Das tut uns leid
Bitte erläutern Sie, weshalb dieser Artikel nicht hilfreich ist. Nachricht
Vielen Dank für Ihr Feedback!
Wir werden Ihr Feedback aufgreifen und dazu nutzen, Ihr Erlebnis verbessern.