Schnellstart
Richten Sie Ihr Affiliate-Programm in unter 30 Minuten ein. Diese Anleitung führt Sie durch das Hinzufügen des Selgeo-Tracking-Snippets zu Ihrer Website, die Verbindung mit Stripe und die Überprüfung Ihrer ersten Testkonvertierung.
API-Version: v1
Voraussetzungen
- Ein Selgeo-Händlerkonto
- Zugang zum HTML Ihrer Website (oder zu einem Tag-Manager)
- Ein mit Selgeo verbundenes Stripe-Konto (für Stripe-basiertes Konversions-Tracking)
Schritt 1: API-Schlüssel abrufen
Melden Sie sich im Selgeo-Händler-Dashboard an und navigieren Sie zu Einstellungen > API-Schlüssel. Sie sehen zwei Schlüsselpaare:
| Schlüsseltyp | Format | Zweck |
|---|---|---|
| Öffentlicher Schlüssel (Test) | pk_test_* | JS-Snippet auf Ihrer Website (Testmodus) |
| Öffentlicher Schlüssel (Live) | pk_live_* | JS-Snippet auf Ihrer Website (Live-Modus) |
| Geheimer Schlüssel (Test) | sk_test_* | Server-seitige API-Aufrufe (Testmodus) |
| Geheimer Schlüssel (Live) | sk_live_* | Server-seitige API-Aufrufe (Live-Modus) |
Öffentliche Schlüssel (pk_*) können sicher in Frontend-Code eingebettet werden. Sie können nur Klicks registrieren.
Geheime Schlüssel (sk_*) dürfen niemals dem Browser ausgesetzt werden. Verwenden Sie sie nur auf Ihrem Server.
Verwenden Sie pk_test_* und sk_test_* während der Integration. Der Testmodus verfolgt alles auf dieselbe Weise, erstellt jedoch keine echten Provisionen. Wechseln Sie zu Live-Schlüsseln, wenn Sie bereit sind, live zu gehen.
Schritt 2: Tracking-Snippet hinzufügen
Fügen Sie das folgende <script>-Tag zu jeder Seite Ihrer Website hinzu, kurz vor dem schließenden </body>-Tag:
<script
async
src="https://cdn.selgeo.com/v1/selgeo.js"
data-merchant="pk_test_YOUR_KEY"
></script>
Ersetzen Sie pk_test_YOUR_KEY durch Ihren tatsächlichen öffentlichen Schlüssel aus Schritt 1.
Für Ihr Framework siehe die spezielle Anleitung
Das obige <script>-Tag funktioniert auf jeder HTML-Seite. Wenn Sie auf einem modernen Frontend-Stack entwickeln, finden Sie die entsprechende Integration in einer der folgenden Anleitungen:
- HTML / einfaches Script — statische Seiten, Tag-Manager, eigene servergerenderte Seiten.
- Next.js —
next/scriptfür App Router und Pages Router. - React (Vite) — Platzierung in
index.html, mituseEffect-Fallback. - WordPress — Site Editor,
footer.phpoder ein Header-Footer-Plugin.
Was das Snippet tut:
- Wenn ein Besucher über einen Partner-Empfehlungslink ankommt (z. B.
https://ihre-website.com/?ref=abc123), registriert das Snippet den Klick bei Selgeo und speichert eineclick_idimsessionStoragedes Browsers. - Wenn Sie Stripe Payment Links verwenden, hängt das Snippet die
click_idautomatisch alsclient_reference_idan diese Links an – kein Backend-Aufwand erforderlich. - Das Snippet ist cookiefrei. Es verwendet nur
sessionStorage, das gelöscht wird, wenn der Browser-Tab geschlossen wird. Kein Cookie-Einwilligungsbanner erforderlich.
Schritt 3: Installation überprüfen
- Erstellen Sie einen Tracking-Link im Selgeo-Dashboard unter Programme > Tracking-Links.
- Öffnen Sie einen neuen Browser-Tab und besuchen Sie Ihre Website über den Tracking-Link, z. B.:
https://ihre-website.com/?ref=IHR_TRACKING_REF
- Öffnen Sie die Developer Tools Ihres Browsers (F12) und prüfen Sie den Konsole-Tab. Wenn Sie
data-debugzu Ihrem Script-Tag hinzugefügt haben, sehen Sie Log-Meldungen vom Snippet:[selgeo] ref detected IHR_TRACKING_REF[selgeo] click_id stored xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx - Um den Debug-Modus vorübergehend zu aktivieren, fügen Sie das Attribut
data-debughinzu:<scriptasyncsrc="https://cdn.selgeo.com/v1/selgeo.js"data-merchant="pk_test_YOUR_KEY"data-debug></script> - Überprüfen Sie, ob die
click_idgespeichert ist, indem Sie dies in der Browser-Konsole ausführen:Dies sollte einen UUID-String zurückgeben. Wenn es__selgeo.getClickId()nullzurückgibt, hat das Snippet keinen?ref=-Parameter in der URL erkannt. - Prüfen Sie das Selgeo-Dashboard – der Klick sollte innerhalb weniger Sekunden unter Analytics erscheinen.
Das data-debug-Attribut ist nur für die Entwicklung. Entfernen Sie es in der Produktion, um die Browser-Konsole sauber zu halten.
Schritt 4: Konversionen über Stripe verfolgen
Selgeo unterstützt drei Stripe-Integrationspfade. Wählen Sie den, der zu Ihrem Setup passt:
Option A: Stripe Payment Links (kein Backend-Aufwand)
Wenn Sie Stripe Payment Links (buy.stripe.com-URLs) verwenden, erledigt das Snippet alles automatisch.
Funktionsweise: Das Snippet erkennt alle <a>-Tags, die auf https://buy.stripe.com/... zeigen, und hängt ?client_reference_id=CLICK_ID an. Wenn der Kunde die Zahlung abschließt, enthält Stripe die client_reference_id in der Webhook-Payload, und Selgeo ordnet sie dem Partner zu, der den Klick empfohlen hat.
Kein Backend-Code erforderlich. Stellen Sie nur sicher, dass das Snippet auf der Seite geladen ist, auf der der Payment Link erscheint.
<!-- Ihr bestehender Payment Link – das Snippet schreibt ihn automatisch um -->
<a href="https://buy.stripe.com/test_abc123">Jetzt abonnieren</a>
Nach dem Ausführen des Snippets wird der Link zu:
https://buy.stripe.com/test_abc123?client_reference_id=CLICK_ID
Eine detaillierte Anleitung finden Sie im Stripe Payment Links-Leitfaden.
Option B: Stripe Checkout (eine Zeile Frontend-Code)
Wenn Sie Stripe Checkout Sessions auf Ihrem Server erstellen, müssen Sie die click_id vom Browser an Ihr Backend übergeben.
Frontend – Lesen Sie die Klick-ID aus dem Snippet:
const clickId = __selgeo.getClickId();
// Senden Sie sie an Ihr Backend, wenn der Benutzer den Checkout initiiert
fetch('/api/create-checkout', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
priceId: 'price_xxx',
clickId: clickId, // kann null sein, wenn keine Empfehlung
}),
});
Backend – Übergeben Sie sie als client_reference_id beim Erstellen der Checkout Session:
- JavaScript
- Python
- PHP
const stripe = require('stripe')('sk_test_YOUR_STRIPE_KEY');
app.post('/api/create-checkout', async (req, res) => {
const session = await stripe.checkout.sessions.create({
mode: 'subscription',
line_items: [{ price: req.body.priceId, quantity: 1 }],
success_url: 'https://ihre-website.com/success',
cancel_url: 'https://ihre-website.com/cancel',
client_reference_id: req.body.clickId || undefined,
});
res.json({ url: session.url });
});
import stripe
stripe.api_key = "sk_test_YOUR_STRIPE_KEY"
@app.route("/api/create-checkout", methods=["POST"])
def create_checkout():
data = request.get_json()
session = stripe.checkout.Session.create(
mode="subscription",
line_items=[{"price": data["priceId"], "quantity": 1}],
success_url="https://ihre-website.com/success",
cancel_url="https://ihre-website.com/cancel",
client_reference_id=data.get("clickId"),
)
return jsonify({"url": session.url})
$stripe = new \Stripe\StripeClient('sk_test_YOUR_STRIPE_KEY');
$data = json_decode(file_get_contents('php://input'), true);
$session = $stripe->checkout->sessions->create([
'mode' => 'subscription',
'line_items' => [['price' => $data['priceId'], 'quantity' => 1]],
'success_url' => 'https://ihre-website.com/success',
'cancel_url' => 'https://ihre-website.com/cancel',
'client_reference_id' => $data['clickId'] ?? null,
]);
echo json_encode(['url' => $session->url]);
Selgeo liest client_reference_id automatisch aus dem Stripe-Webhook. Die vollständige Anleitung finden Sie im Stripe Checkout-Leitfaden.
Option C: Nicht-Stripe-Konversionen (Conversion API)
Für Konversionen, die nicht über Stripe laufen (Formularanmeldungen, kostenlose Testversionen, benutzerdefinierte Ereignisse), verwenden Sie die Conversion API, um diese von Ihrem Server zu melden:
curl -X POST https://api.selgeo.com/api/v1/conversions \
-H "Authorization: Bearer sk_test_YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{
"click_id": "CLICK_ID_VOM_FRONTEND",
"external_transaction_id": "signup_12345",
"event_type": "signup",
"amount_cents": 0
}'
Schritt 5: Eine Konversion von Anfang bis Ende testen
Durchlaufen Sie den vollständigen Zyklus im Testmodus, um zu bestätigen, dass alles funktioniert:
- Erstellen Sie ein Testprogramm im Selgeo-Dashboard mit mindestens einem Partner und einem Tracking-Link.
- Klicken Sie auf den Tracking-Link in einem neuen Browser-Tab. Dadurch wird ein Klick registriert und eine
click_idgespeichert. - Schließen Sie einen Kauf ab mit einer der obigen Methoden:
- Payment Links: Klicken Sie auf einen Stripe Payment Link auf Ihrer Website. Verwenden Sie die Stripe-Testkarte
4242 4242 4242 4242. - Checkout: Starten Sie Ihren Checkout-Flow. Die
click_idwird alsclient_reference_idübergeben. - Conversion API: Senden Sie eine
POST /api/v1/conversions-Anfrage von Ihrem Server mit derclick_id.
- Payment Links: Klicken Sie auf einen Stripe Payment Link auf Ihrer Website. Verwenden Sie die Stripe-Testkarte
- Prüfen Sie das Dashboard: Navigieren Sie zu Analytics im Selgeo-Dashboard. Sie sollten sehen:
- Den unter dem Partner registrierten Klick
- Die dem Partner zugeordnete Konversion
- Eine berechnete Provision (wenn Provisionsregeln konfiguriert sind)
Verwenden Sie Stripes Testkartennummern, um Zahlungen ohne echte Abbuchungen zu simulieren. Die gebräuchlichste ist 4242 4242 4242 4242 mit einem beliebigen zukünftigen Ablaufdatum und beliebigem CVC.
Nächste Schritte
- Snippet-Setup – Erweiterte Snippet-Konfiguration (SPAs, Debug-Modus, benutzerdefinierte API-URL)
- Stripe Metadata –
click_idüber Checkout Session Metadata übergeben (Alternative zuclient_reference_id) - Conversion API – Vollständige API-Referenz für Nicht-Stripe-Konversionen
- Testmodus – Detaillierter Leitfaden zum Testen Ihrer Integration
- Go-Live-Checkliste – Schritte zum Wechsel vom Test- in den Live-Modus