Rekomi Docs
Für Entwickler
Developers

Checkout-Tracking ohne Code und ohne Stripe

Installiere das Rekomi-Tracking-Skript für die Klick-Attribution auf einer No-Code-Plattform und erfasse Conversions über einen nativen Zahlungsanbieter, die S2S-API oder Gutscheincodes.

Conversions werden nicht mehr im Browser ausgelöst

Das Auslösen von Conversions im Browser wurde entfernt, weil reines Browser-Tracking von Conversions unzuverlässig war. window.Rekomi.convert() gibt es weiterhin, es erfasst aber nur Leads (kostenlose Anmeldungen), nie Verkäufe. Erfasse Verkäufe stattdessen über einen nativen Zahlungsanbieter, die S2S-API oder Gutscheincodes. Zur JavaScript-API window.Rekomi (Empfehlung, Affiliate und Kampagne beim Laden der Seite lesen und convert() für die Lead-Erfassung) siehe Tracking-Skript und Referenz zu window.Rekomi.

Das ist der Weg für No-Code-Plattformen, deren Checkout kein nativ angebundener Zahlungsanbieter ist. Er besteht aus zwei Teilen:

  • Klicks: Füge das Tracking-Skript in den <head> deiner Website ein. Es speichert den Affiliate-Parameter (?via=, ?ref=, …) im localStorage auf deiner Domain (dazu ein Cookie auf dem Tracking-Host, das nur mit einer eigenen Tracking-Domain First-Party ist) und registriert window.Rekomi.
  • Conversions: Erfasse den Verkauf über einen nativen Zahlungsanbieter (automatisch), die S2S-API oder Gutscheincodes. Einen Conversion-Aufruf im Browser gibt es nicht.

Klick-Tracking mit dem Skript gibt es in jedem Plan; Conversions über die S2S-API zu erfassen setzt Starter oder höher voraus (14-tägige Testphasen werden akzeptiert).

Funktioniert mit diesen Plattformen

Für diese Plattformen gibt es Schritt-für-Schritt-Installationsanleitungen in der Einrichtungs-Checkliste, und sie sind vorab mit diesem Rezept aus zwei Snippets geprüft:

WordPress-Logo

WordPress

Das Rekomi-Plugin installiert es für dich; WPCode bleibt als Weg ohne Plugin dokumentiert.

Shopify-Logo

Shopify

Die native Rekomi-App, live im Shopify App Store, erfasst Klicks und Conversions direkt, ohne Umweg über ein Relay.

Webflow-Logo

Webflow

Site settings > Custom code > Head code für das Klick-Skript; Conversions per S2S erfassen.

Framer-Logo

Framer

Site settings > General > Custom Code > Start of <head> tag (Show Advanced).

Squarespace-Logo

Squarespace

Settings > Advanced > Code Injection > Header (ab dem Business-Plan).

Wix-Logo

Wix

Installiere die Rekomi-App aus dem Wix App Market, dann läuft das Tracking automatisch; das manuelle Einfügen per Custom Code bleibt nur für separat verbundene Zahlungsanbieter.

BigCommerce-Logo

BigCommerce

Installiere die Rekomi-App aus dem BigCommerce App Marketplace, dann läuft das Tracking automatisch; nur ältere Blueprint-Themes brauchen das manuelle Einfügen in den Head.

Bubble-Logo

Bubble

Settings > SEO/metatags > Script/meta tags in Header.

Carrd-Logo

Carrd

Embed-Element mit Location: Head (Pro Lite+) oder websiteweiter Head-Slot (Pro Plus).

Memberstack-Logo

Memberstack

Gehört in den Head der Host-Plattform (Webflow oder eigenes HTML), nicht in Memberstack selbst.

Outseta-Logo

Outseta

Wie bei Memberstack. Auf der Host-Website neben dem Embed-Code von Outseta installieren.

Teachable-Logo

Teachable

Site > Code Snippets > Global Head Snippets (ab dem Builder-Plan).

Podia-Logo

Podia

Site Settings > Analytics > Custom code > Website tracking code (wird im Footer eingefügt).

Thinkific-Logo

Thinkific

Settings > Site & app settings > Code & analytics > Site Footer Code.

Ghost-Logo

Ghost

Settings > Code injection > Site Header. Ghost Pro und selbst gehostet.

beehiiv-Logo

beehiiv

Die beehiiv-Verbindung schreibt Verkäufe anhand des Anmeldedatensatzes von beehiiv gut; der Tag im Google Tag Manager ist optional, für die Klickstatistik.

Logo von Kit (ConvertKit)

Kit (ConvertKit)

Die Kit-Verbindung schreibt Verkäufe, auch aus Kit Commerce, anhand des Anmeldedatensatzes von Kit gut; das Skript pro Landingpage ist optional, für die Klickstatistik.

Lemon-Squeezy-Logo

Lemon Squeezy

Native Integration: Füge einen API-Schlüssel ein, und Rekomi legt den Webhook an, Conversions werden also automatisch erfasst (das Head-Skript hier erfasst weiterhin die Klicks).

Vanilla-JavaScript-Logo

Vanilla / eigenes HTML

Einfaches HTML und ein Script-Tag in deinem gemeinsamen Header-Partial.

Next.js-Logo

Next.js

App Router oder Pages Router über next/script. Der SPA-Haken gilt (siehe unten).

React-Logo

React (Vite, CRA)

Head-Skript in index.html für Klicks; Conversions aus deinem Backend per S2S auslösen.

Vue-Logo

Vue (Vite)

Head-Skript in index.html. Für Nuxt 3 stattdessen useHead in app.vue nutzen.

Deine Plattform ist nicht dabei? Das Skript funktioniert auf jeder Website, auf der du ein HTML-<script>-Tag in den Head einfügen kannst. Entfernt dein Host <script> (manche Newsletter-Plattformen tun das), nutze den S2S-Endpunkt und löse Conversions serverseitig aus deinem Fulfillment-Webhook aus. Läuft deine Website auf MailerLite, Ontraport oder GoHighLevel, verbinde sie stattdessen unter Integrationen: Die Verbindung schreibt Verkäufe anhand des plattformeigenen Anmeldedatensatzes gut (MailerLite, Ontraport, GoHighLevel).

So werden Conversions erfasst

Das Skript auf dieser Seite erfasst Klicks. Die passende Conversion erfasst du über den Weg, der zu deinem Stack passt:

WegAm besten fürErstattungen
Nativer Zahlungsanbieter (automatisch)Checkouts mit Stripe, Paddle, Braintree, Shopify, Wix, BigCommerce, Lemon Squeezy, Chargebee, Polar, Recurly, Gumroad, Creem, Dodo Payments oder MollieAutomatisch bei Erstattung oder Streitfall
S2S-API (Referenz)Überall, wo du einen Server betreiben oder einen Fulfillment-Webhook auslösen kannstPOST /api/tracking/refund
Gutscheincodes (Anleitung)Gib jedem Affiliate einen eigenen Rabattcode; auf deiner Website ist nichts weiter nötigAutomatisch, wenn die Bestellung erstattet wird
Abfrage bei der Plattform (Anleitung)Websites auf beehiiv, Kit, MailerLite, Ontraport oder GoHighLevel: Die CRM-Verbindung liest das Tag, das die Plattform bei der Anmeldung am Käufer gespeichert hat, kein Skript nötigAutomatisch, wo der Zahlungsanbieter oder die Plattform die Erstattung meldet; bei Kit Commerce und Bestellformularen in GoHighLevel musst du die Conversion von Hand für ungültig erklären

Einen Conversion-Aufruf im Browser gibt es nicht. Kann deine Plattform keinen Server-Code ausführen und keinen Webhook auslösen, ist die Attribution über Gutscheincodes meist der einfachste Weg, es sei denn, deine Website läuft auf einer der fünf Plattformen aus der letzten Zeile, wo die Verbindung die Arbeit erledigt.

Kostenlose Anmeldungen tracken (Leads)

Einen Verkauf zu erfassen und einen Lead zu erfassen sind zwei getrennte Dinge. Bei Stripe, Paddle, Chargebee, Recurly und Creem werden Leads automatisch erfasst, ohne Code. Für Anmeldungen zu Freemium- oder kostenlosen Plänen (es entsteht kein Abrechnungsobjekt) und die übrigen Zahlungsanbieter (Braintree, Shopify, Wix, BigCommerce, Lemon Squeezy, Polar, Gumroad, Dodo Payments, Mollie) erfasst du die Anmeldung mit Rekomi.convert({ email }), und zwar mit derselben E-Mail-Adresse, mit der der Kunde später bezahlt. So wird ein späteres Upgrade dem Lead zugeordnet und gutgeschrieben, auch wenn das Klick-Cookie weg ist. Übergib bei Mollie diese E-Mail-Adresse außerdem als billingAddress.email an der Zahlung: Im gehosteten Checkout von Mollie läuft kein Skript, der Verkauf wird also über den Webhook gutgeschrieben, und die E-Mail-Adresse verbindet ihn mit dem Lead. Siehe Leads und Anmeldungen tracken.

Erkannte Attributionsparameter

Rekomi liest jeden dieser 21 branchenüblichen Attributionsparameter in der Query direkt aus. Du musst nichts einrichten; welche Konvention deine bisherige Affiliate-Plattform auch genutzt hat, sie funktioniert sofort weiter:

?via= (Rewardful, Affonso, PromoteKit, Reditus, Dub Partners), ?ref= (Tapfiliate, AffiliateWP, Goaffpro, Friendbuy), ?fpr= (FirstPromoter), ?aff= (Affiliately, Tolt, Partnero), ?afmc= (LeadDyno), ?rfsn= (Refersion), ?sca_ref= (UpPromote), ?bg_ref= (BixGrow), ?a_aid= (Post Affiliate Pro), ?atp= und ?affonso= (Affonso), ?awc= (Awin), ?sscid= (ShareASale), ?cjevent= (CJ Affiliate), ?irclickid= (Impact), ?partner_key= (PartnerStack), ?affid= (Voluum / generisches CPA), ?affiliate_id= (Friendbuy, alternativ), ?affcode= (Cellxpert / generisch), ?idev= (iDevAffiliate), ?mbsy= (Talkable).

Du ziehst von einer Plattform um, die nicht in der Liste steht? Füge im Dashboard unter Einstellungen > Link-Tags einen eigenen Parameter hinzu. Bis zu 10 eigene Einträge, jeder [a-z0-9_-]{2,32}. Eigene Parameter haben in der Auflösungsreihenfolge Vorrang vor den Standards. Die vollständige Übersicht steht im Leitfaden zum Umzug.

Das Skript installieren (<head>)

Füge dies auf jeder Seite deiner Website ein. Das Skript registriert window.Rekomi, speichert den Attributionsparameter aus der URL im localStorage auf deiner Domain (dazu ein Cookie auf dem Tracking-Host, First-Party nur mit eigener Tracking-Domain) und sendet den Klick per POST an Rekomi.

<script async
  src="https://api.rekomi.com/api/v1/r/loader.js"
  data-program-id="{your_program_id}"
  data-rkmi-email-capture="auto"></script>

Rekomi erfasst eine E-Mail-Adresse, die ein vermittelter Besucher auf den Seiten mit dem Tag in ein beliebiges E-Mail- oder Textfeld eintippt (Anmeldung, Login, Checkout und andere Formulare), damit der Verkauf auch dann gutgeschrieben werden kann, wenn der Checkout keine Empfehlung mitgibt. Ohne Empfehlung wird nichts erfasst. Entferne das Attribut data-rkmi-email-capture, um das abzuschalten; ausdrückliche Rekomi.convert()-Aufrufe funktionieren weiter.

Hast du unter Einstellungen > Link-Tags eigene Parameter eingerichtet, bekommt dein Installations-Snippet zusätzlich ein Attribut data-rkmi-params="...", das das Dashboard automatisch erzeugt. Kopiere das genaue Snippet unter Dashboard > Einstellungen > Tracking > Website-Snippet (mit deiner echten data-program-id, dem Attribut für die E-Mail-Erfassung und allen eigenen Parametern schon ausgefüllt), statt den Platzhalter oben von Hand zu bearbeiten. Hast du eine verifizierte eigene Domain, lädt das kopierte Snippet von deiner eigenen Subdomain statt von api.rekomi.com.

Das Objekt window.Rekomi

Das Skript registriert window.Rekomi und stellt beim Laden der Seite den Empfehlungs-Slug sowie den Namen von Affiliate und Kampagne bereit, sodass du clientseitig festhalten kannst, wer eine Anmeldung vermittelt hat. Die vollständige API (referral, affiliate, campaign, ready(), getReferral(), clearReferral()) findest du unter Tracking-Skript und Referenz zu window.Rekomi.

Sub-IDs

Affiliates können einen Link pro Kanal markieren, ?via=alex&sub=yt, statt für jeden Kanal einen eigenen Link zu erstellen. Das Skript liest sub (auch subid und sub_id), wann immer es einen Attributionsparameter liest, sendet das Tag mit dem Klick und legt es neben dem Slug im localStorage ab (rkmi[:programId]:sub, gleiche Laufzeit), zusammen mit der Klick-ID (rkmi[:programId]:cid). window.Rekomi.subId und window.Rekomi.clickId stellen sie bereit, convert() sendet das Tag mit dem Lead, und der Klick-Endpunkt setzt ein Cookie _rkmisub neben _rkmi (First-Party auf einer eigenen Tracking-Domain). Ein neuer vermittelter Besuch ohne Tag löscht das gespeicherte.

Ein Verkauf trägt das Tag, wenn Rekomi ihn eindeutig dem Besuch zuordnen kann: über die Klick-ID (Shopify, Wix, BigCommerce, WordPress, der gehostete Checkout-Weg), einen Lead, der mit dem Tag erfasst wurde, einen früheren markierten Kauf des Kunden (Verlängerungen und Folgebestellungen) oder einen Wert rekomi_sub, der neben rekomi_ref am Checkout gesetzt ist (Stripe-Metadaten, Custom Data bei Paddle und Lemon Squeezy, meta_data oder ein eigenes Feld cf_rekomi_sub bei Chargebee, Metadaten bei Polar, Creem, Dodo Payments und Mollie, ein eigenes Feld bei Braintree, url_params bei Gumroad). Setzt dein Code rekomi_ref aus dem Cookie oder aus window.Rekomi.referral, setze rekomi_sub genauso aus _rkmisub oder window.Rekomi.subId. Rekomi rät nie ein Tag aus dem letzten Klick auf den Link, ein Verkauf ohne eindeutige Quelle zeigt also kein Tag. Das Tag wird auf Kleinbuchstaben, Ziffern, Punkte, Bindestriche und Unterstriche normalisiert, höchstens 64 Zeichen.

Typische Stolperfallen

Browser, die Cookies blockieren (Safari ITP, Brave Shields): Der wichtigste Speicherort des Skripts für die Attribution ist der localStorage auf deiner Domain. Die Attribution funktioniert also auch dann, wenn das Cookie des Tracking-Hosts abgelehnt wird (für localStorage gelten eigene Blockierregeln). Eine eigene Domain macht das Cookie zu einem First-Party-Cookie und holt die meisten Klicks zurück, die sonst blockiert würden.

Single-Page-Apps: window.Rekomi wird beim ersten Laden einmal gesetzt und bleibt über clientseitige Routenwechsel hinweg erhalten. Liest du den Empfehlungskontext in einer Komponente, die erst nach einem Routenwechsel gemountet wird, nutze einen ready()-Callback; siehe den Hinweis zu SPAs.

Die Installation prüfen

Nachdem du das Skript eingefügt hast:

  1. Öffne in Rekomi Dashboard > Einstellungen > Tracking > Website-Snippet.
  2. Gib unter Meine Installation überprüfen die Seite ein, auf der du das Snippet installiert hast, und klicke auf Meine Installation überprüfen. Rekomi durchsucht das ausgelieferte HTML nach dem Loader und meldet alle erfassten Klicks.
  3. Um den ganzen Ablauf zu testen (Klick → Conversion → Provision), öffne einen echten Empfehlungslink eines deiner Affiliates und nutze dann Test-Conversion senden im Tab Performance der Kampagne (oder den Testmodus deines Zahlungsanbieters).

Ein Aufruf einer URL mit ?via=test erfasst nichts, solange test kein echter Affiliate-Slug ist; ein Slug, der sich nicht auflösen lässt, liefert 404 und schreibt keinen Klick. Wird ein echter Testklick nicht erfasst, lade die Seite hart neu (Hosts cachen HTML) und teste erneut in einem Inkognito-Fenster (Werbeblocker filtern Tracker).

Noch genauer: eigene Domain

Das Standard-Snippet lädt von api.rekomi.com, und darauf können Content-Blocker anspringen. Jede Marke kann in jedem Plan den Host des Skripts auf eine Domain umstellen, die sie selbst kontrolliert (z. B. affiliates.brand.com), über eine eigene Domain. Das Skript lädt dann First-Party und umgeht so allgemeine Blockerregeln und die Drittanbieter-Grenzen von Safari ITP. Dieselbe Domain liefert auch deine Anmeldeseiten für Affiliates aus, ein Host deckt also Tracking und Portal ab. Realistischer Zugewinn: +3 bis 5 Prozentpunkte mehr erfasste Conversions.