Dokumentation · Installation & Referenz

Conversion Tracking für ChatGPT Ads

Conversion Tracking für ChatGPT Ads meldet Käufe und Warenkorbaktionen aus JTL-Shop 5 an OpenAI — über das Measurement Pixel im Browser und die Conversions API vom Server, nur mit Einwilligung. Zum Durchsuchen: Strg + F.

Hinweis: Das Plugin liefert die technische Umsetzung. Einwilligungstexte, Datenschutzerklärung und der Vertrag mit OpenAI liegen in der Verantwortung des Shopbetreibers. Das Plugin steht in keiner Verbindung zu OpenAI.

Voraussetzungen

JTL-Shop 5.6.0 bis 5.8.0 (im Einsatz auf 5.7), Template NOVA, PHP ab 8.1 mit den Erweiterungen sodium, curl, mbstring und openssl. Der JTL-Aufgabenplaner muss aktiv sein; PHP-FPM wird empfohlen, damit Ereignisse direkt nach der Seitenauslieferung gesendet werden. Dazu brauchen Sie ein Konto im OpenAI Ads Manager mit einem Pixel (Datenquelle) und einem Conversions-API-Schlüssel desselben Werbekontos.

Installation

Aus dem JTL Extension Store

Nach dem Kauf erscheint die Erweiterung im Backend Ihres Shops unter Plugin-Verwaltung → Meine Käufe. Domain anbinden, installieren, aktivieren. Die Lizenz verwaltet der Shop; ein separater Lizenzschlüssel ist nicht erforderlich.

Manuell (Direktlizenz)

Das ZIP über den Download-Link aus Ihrer Lizenz-E-Mail laden, in der Plugin-Verwaltung → Upload hochladen, installieren und aktivieren. Den Lizenzschlüssel (beginnt mit ctg) tragen Sie im Plugin-Reiter Lizenz ein. Die kostenlose 14-Tage-Testlizenz bestellen Sie im Shop.

Erste Schritte

Fünf Schritte von der Installation bis zur ersten gezählten Bestellung. Ab Werk sendet das Plugin nur im Testmodus.

  1. Pixel eintragen

    Reiter Pixel → Pixel hinzufügen: Bezeichnung und Pixel-ID aus dem Ads Manager (Tools → Conversions → Datenquelle).

  2. Conversions-API-Schlüssel speichern und testen

    Beim Pixel den Schlüssel speichern — die Anleitung erscheint über das Info-Symbol bei „kein Schlüssel“: im Ads Manager Tools → Conversions → Conversion keys → neuen Schlüssel anlegen, sofort kopieren. Nicht mit dem Ads-Manager-API-Schlüssel verwechseln. Danach Testsendung: OpenAI prüft Schlüssel und Pixel-ID, speichert aber nichts.

  3. Produktionsdomain eintragen

    Oben im Reiter Pixel unter Conversions API die Domain des Live-Shops eintragen. Nur dort wird später live gesendet.

  4. Einwilligung festlegen

    JTL-Consent-Manager (Eintrag „ChatGPT Ads Conversion-Messung“) oder eigene CMP mit window.ctGptAds.grant() / .deny(); vor dem Laden des Skripts window.ctGptAdsQueue = ['grant']. Die Datenschutzerklärung ergänzen — Mustertexte liegen im Plugin-Verzeichnis.

  5. Live schalten und kontrollieren

    Auf der Produktionsdomain Live-Betrieb einschalten. Im Ads Manager unter Tools → Conversions → Ereignisstream erscheinen Browser-Ereignisse als pixel_sdk, Server-Ereignisse als server_to_server.

shop-backend · Pixel
Reiter Pixel mit Statusbanner „Conversions API: LIVE“, eingetragenem Pixel und hinterlegtem Schlüssel

Was gesendet wird

Ohne Einwilligung wird nichts geladen, gespeichert oder gesendet. Browser- und Server-Anteil eines Ereignisses tragen dieselbe ID; OpenAI führt sie zusammen.

Ereignisse mit Weg und Inhalt
EreignisWegInhalt
page_viewedBrowserSeitenaufruf
contents_viewedBrowserArtikelseite: Artikel, Nettopreis
checkout_startedBrowsereinmal je Checkout
items_addedBrowser und Servertatsächlich hinzugefügte Menge (Warenkorb vorher/nachher), genau ein Ereignis je Aktion
registration_completednur BrowserKontoeröffnung; kein Datensatz, kein Server-Versand
order_creatednur ServerBestellung bei verbindlicher Aufgabe

Server-Ereignisse enthalten zusätzlich die Anzeigenklick-Kennung (oppref), die Browser-Referenz (obref) und — jeweils im Reiter Datenschutz abschaltbar — IP-Adresse und Browserkennung sowie bei Bestellungen gehashte Kontaktdaten aus der Rechnungsadresse (E-Mail, Telefon, Name, installationsbezogene Kundenkennung als SHA-256; Ort, PLZ, Land).

Bestellwert: netto ohne Versand, Kupons anteilig abgezogen, in der kleinsten Währungseinheit, bei Bestellabschluss festgehalten. Konfiguratoren zählen inklusive Komponenten. Bestellungen nur aus Geschenkgutscheinen sind keine Conversion. Bestellungen mit einem auf Artikel beschränkten Kupon und gleichzeitigem Wertausschluss werden nicht gemeldet, weil der Wert dann nicht sicher bestimmbar ist.

Regeln (Reiter Events-Werte)

Optional — ohne Regeln wird jede Bestellung vollständig gemeldet. Die Regeln gelten einheitlich für Bestellungen, Warenkorbaktionen und Artikelaufrufe; Komponenten von Konfiguratoren werden wie eigene Artikel geprüft. Die Wertvorschau zeigt für die letzten zehn Bestellungen den gemeldeten Wert und den Versandstand je Pixel.

Regeln und ihre Wirkung
RegelWirkung
Bestellung nicht meldenEnthält die Bestellung bzw. Aktion einen solchen Artikel, entsteht kein Ereignis.
Nicht als Umsatz zählenArtikel und Wert entfallen; bleibt kein Wert, wird amount: 0 gemeldet.
Produktname und -nummer nicht übertragenDer Artikel entfällt aus den Artikeldaten, sein Wert bleibt.
Gutschein-ArtikelDer Verkauf zählt nicht als Umsatz — sonst doppelt bei Einlösung.
shop-backend · Events-Werte
Reiter Events-Werte mit drei optionalen Fragen und der Wertvorschau

Testmodus, Live und Staging

Testmodus (Voreinstellung): Ereignisse gehen mit validate_only an OpenAI — geprüft, nicht gezählt; im Ereignisstream erscheinen sie nicht. Live nur mit eingetragener Produktionsdomain und nur, wenn der Shop genau unter ihr läuft; einschalten lässt sich Live nur dort. Port und Unterverzeichnis gehören zur Domain: shop.de:8443 oder shop.de/staging sind nicht shop.de.

Versand und Fehlerbehandlung

Gesendet wird direkt nach der Seitenauslieferung (PHP-FPM), stündlich über den Aufgabenplaner und auf Knopfdruck („Warteschlange jetzt abarbeiten“). Vor jedem Aufruf werden Freigabe, Einwilligung und Pixel frisch geprüft. Wird ein Schlüssel abgelehnt, pausieren die betroffenen Ereignisse bis zu einem neuen Schlüssel oder einer erfolgreichen Testsendung; Netzwerk- und Serverfehler werden bis zu acht Mal wiederholt, unter Beachtung der Wartezeitvorgaben von OpenAI. Ereignisse älter als sieben Tage verfallen. Die Warteschlange unterscheidet: wartet, validiert (Testmodus), übermittelt, verworfen, lokal bzw. von OpenAI abgelehnt, fehlgeschlagen.

shop-backend · Warteschlange
Warteschlange mit den einzelnen Zuständen und der Schaltfläche zum Abarbeiten

Betrieb

  • Stopp-Schalter (Reiter Übersicht): hält Pixel, Ereignisse und Versand sofort an, ohne das Plugin zu deaktivieren; Widerrufe werden weiter verarbeitet.
  • Doppelte Einbindung: Ist das OpenAI-Pixel zusätzlich im Template, in einem anderen Plugin oder im Google Tag Manager eingebunden, misst das Plugin im Browser nicht doppelt und meldet den Befund.
  • Alarme (Glockensymbol und Übersicht): abgelehnter Schlüssel, nicht übermittelte Ereignisse, stockender Versand, Live ohne Produktionsdomain, doppelte Einbindung und weitere.
  • Automatic Advanced Matching steuern Sie im Ads Manager, nicht im Shop.

Datenschutz und Fristen

Personenbezogene Werte liegen verschlüsselt im Shop. Speicherfristen: Anzeigenklick-Daten 7 Tage; Checkout-Zuordnung ohne Bestellung 24 Stunden; festgehaltene Bestelldaten 6 Tage; Nutzerdaten in der Warteschlange bis zum Versand, höchstens 7 Tage; Einwilligungskontexte, Zuordnungen zu Bestellungen und Ereignisdaten 30 Tage; Protokoll 30 Tage (nur Metadaten). Cookies und Einträge im lokalen Speicher sind im Reiter Datenschutz aufgeführt; Mustertexte für die Datenschutzerklärung liegen im Plugin-Verzeichnis (DATENSCHUTZ-MUSTERTEXT.md).

shop-backend · Datenschutz
Reiter Datenschutz mit abschaltbaren Datenkategorien und Speicherfristen

Testphase und Lizenzierung

Kostenlose Testlizenz (0 €, keine Zahlungsdaten): 14 Tage voller Funktionsumfang, eine je Shop-Domain. Ohne gültige Lizenz pausiert das Tracking; Einstellungen und Pixel bleiben erhalten. Eine Lizenz je Produktionsdomain, Test- und Staging-Domains frei. Kauflizenzen laufen dauerhaft; nach Ablauf des Lizenzzeitraums endet ausschließlich der Bezug neuer Updates. Preise auf der Preisseite.

Update, Deaktivierung, Deinstallation

Update: Einstellungen, Pixel und Lizenz bleiben erhalten. Deaktivierung: löscht Warteschlange, Checkout-Zuordnungen, Ereignisse und Einwilligungskontexte; Einstellungen, Pixel, Lizenz und Protokoll bleiben. Deinstallation mit Datenlöschung: entfernt alle Plugin-Tabellen und die eigene Schlüsseldatei. Die Schlüsseldatei data/keys.php gehört zusammen mit der Datenbank in jede Sicherung.

Problemlösung

„Versand stockt“

Meist läuft der JTL-Aufgabenplaner nicht. Unter Einstellungen → Aufgabenplaner prüfen oder im Reiter Pixel „Warteschlange jetzt abarbeiten“ nutzen.

Keine Ereignisse im Ereignisstream

Im Testmodus erscheinen Server-Ereignisse dort grundsätzlich nicht. Prüfen Sie, ob Live eingeschaltet ist, ob die Produktionsdomain exakt zur Shop-Domain passt und ob eine Einwilligung vorliegt.

Schlüssel abgelehnt

Pixel-ID und Schlüssel müssen zum selben Werbekonto gehören. Neuen Schlüssel unter Conversion keys anlegen, speichern und Testsendung ausführen — pausierte Ereignisse laufen danach automatisch weiter.

Änderungen (Auszug)

1.0.0Erste Version: Pixel und Conversions API, Bestellwert netto ohne Versand, Einwilligung, Testmodus und Staging-Sperre, Regeln, Warteschlange, Alarme und Stopp-Schalter.

War diese Seite hilfreich? Feedback per E-Mail senden — wir lesen jede Rückmeldung.

Jetzt Conversions messen

Kostenlose Testlizenz bestellen und in fünf Schritten einrichten.