Zum Hauptinhalt springen
Rabattcodes Übersicht Umschlag
Rabattcodes ermöglichen zielgerichtete Werbeaktionen und Anreize. Erstellen Sie prozentuale Rabatte, legen Sie Limits und Abläufe fest, beschränken Sie auf Produkte und wenden Sie sie nahtlos beim Checkout an.

Checkout Sessions

Wenden Sie während des gehosteten Checkouts mit discount_codes einen oder mehrere gestapelte Codes an und nutzen Sie die UI-Steuerungen.

Validate Discount

Prüfen Sie, ob ein Rabatt über seine ID gültig ist.

Get Discount by Code

Suchen und validieren Sie einen Rabatt über seinen Code-Namen (z. B. „SAVE20“).

Create Discount (API)

Erstellen Sie programmatisch neue Rabattcodes.

List & Update Discounts

Durchsuchen und verwalten Sie bestehende Rabatte; aktualisieren oder löschen Sie diese bei Bedarf.

Plan Change Discounts

Wenden Sie Rabattcodes beim Upgraden oder Downgraden von Abonnementplänen an.

Was sind Rabattcodes?

Rabattcodes sind Promotionstoken, die die Bestellsumme an der Kasse reduzieren. Sie eignen sich ideal für:
  • Saisonale Kampagnen: Black Friday, Produkteinführungen oder Jubiläen
  • Akquisitionsangebote: Anreize für Ersterwerb oder Empfehlungsbelohnungen
  • Bindung: Rückgewinnungs- oder Treuebelohnungen für bestehende Kunden
  • B2B-Deals: Vereinbarte oder ausgehandelte Preise über private Codes

Hauptvorteile

  • Flexible Rabatte: Prozentuale Rabatte
  • Kombinierbare Codes: Wenden Sie bis zu 20 Codes pro Checkout, Zahlung oder Abonnement an — kombinieren Sie Kampagnen (z. B. WELCOME10 + BLACKFRIDAY20), ohne individuelle Codes zu erstellen
  • Gezielte Kontrolle: Beschränkung nach Produkt- und Abonnementzyklen
  • Kampagnenverwaltung: Ablaufdaten und Nutzungsbeschränkungen
  • Nahtloser Checkout: UI-Feld und API-Unterstützung über Checkout-Sitzungen

Rabattcodes erstellen

Erstellen Sie Rabattcodes in Ihrem Dodo Payments-Dashboard und wenden Sie diese im gehosteten Checkout oder über API an.

Dashboard-Einrichtung

  • Rabattname (erforderlich): Interner und Dashboard-Anzeigename
  • Code (erforderlich): Die Zeichenfolge, die Kunden beim Checkout eingeben
  • Typ & Betrag (erforderlich): Geben Sie einen Prozentwert ein (derzeit werden nur prozentuale Rabatte unterstützt) oder generieren Sie einen zufälligen Code mit der bereitgestellten Schaltfläche
  • Ablaufdatum (optional): Datum, nach dem der Code ungültig wird
  • Nutzungslimit (optional): Maximale Gesamteinlösungen über alle Kunden hinweg
  • Produkteinschränkung (optional): Anwendbarkeit auf ausgewählte Produkte beschränken
  • Abonnementzykluslimit (optional): Anzahl der Abrechnungszyklen, auf die der Rabatt angewendet wird
  • Metadaten (optional): Fügen Sie benutzerdefinierte Schlüssel-Wert-Paare für internes Tracking oder Integrationen hinzu
Verwenden Sie Zykluslimits für Einführungspreise bei Abonnements (z. B. “50% Rabatt für 3 Monate”).

Checkout-Erlebnis

  1. Käufer geben den Code im Checkout-Feld ein.
  2. Berechtigte Rabatte werden angewendet und die Summen sofort aktualisiert.
In Checkout-Sitzungen übergeben Sie discount_codes (ein Array), um einen oder mehrere Codes vorab anzuwenden, und setzen Sie feature_flags.allow_discount_code, um das Eingabefeld anzuzeigen. Codes werden in der Reihenfolge des Arrays angewendet, maximal 20.

Stapeln von Rabattcodes

Checkout-Sitzungen, Zahlungen und Abonnements akzeptieren bis zu 20 gestapelte Codes über das Array discount_codes (maximal 20 Einträge). Codes werden in der Reihenfolge des Arrays angewendet, sodass der erste berechtigte Code zuerst den Basispreis reduziert, der nächste Code dann den bereits ermäßigten Preis reduziert usw. Der vollständige Satz der angewendeten Rabatte wird in der Antwort unter discount_ids (bei Zahlungen/Abonnements) und discounts (detailliertere Informationen pro Rabatt, einschließlich Position und verbleibender Abonnementzyklen) zurückgegeben.
const session = await client.checkoutSessions.create({
  product_cart: [{ product_id: 'prod_abc', quantity: 1 }],
  discount_codes: ['WELCOME10', 'BLACKFRIDAY20'], // applied in this order
  customer: { email: 'user@example.com' },
  return_url: 'https://yoursite.com/return'
});
Das einzelne Feld discount_code ist veraltet, wird aber weiterhin vollständig unterstützt, um die Rückwärtskompatibilität zu gewährleisten — bestehende Integrationen funktionieren ohne Änderungen weiterhin. Es kann nicht mit discount_codes in derselben Anfrage kombiniert werden. Wir empfehlen, bei Gelegenheit zu discount_codes (der Array-Form) zu migrieren, selbst für einzelne Codes, um vom Stapeln und der reicheren Antwortstruktur zu profitieren.

API-Verwaltung

Erstellen Sie Rabattcodes programmatisch mit Typ und Betrag.

API Reference

Besuchen Sie die Erstellen-Rabatt-API.
Listen Sie alle Rabatte auf oder holen Sie Details für die Verwaltung und Prüfung ab.

API Reference

Durchsuchen Sie die Listen- und Abruf-APIs.
Suchen Sie einen Rabatt mithilfe seines lesbaren Codes (z. B. “SAVE20”) anstelle der internen ID.

API Reference

Abrufen des Rabatts nach Code-Name.
Ändern Sie die Rabattkonfiguration wie Betrag, Ablauf oder Einschränkungen.

API Reference

Erfahren Sie, wie Sie Rabattdetails aktualisieren.
Überprüfen, ob ein Rabatt gültig und anwendbar ist, bevor er angewendet wird.

API Reference

Gültigkeitsprüfung der Rabattnutzung.
Deaktivieren oder entfernen Sie Rabatte, die nicht mehr benötigt werden.

API Reference

Löschen eines Rabatts.

Häufige Anwendungsfälle

  • Einführungsangebote: Zeitlich begrenzte Einführungsaktionen für neue Produkte
  • Mengen- oder B2B: Vertraglich vereinbarte Rabatte für ausgewählte Produktsätze
  • Kundenbindungsmaßnahmen: Rückgewinnungscodes in Kündigungsverhinderungs-Workflows
  • Saisonale Kampagnen: Feiertags- oder ereignisbasierte Aktionen

Integrationsbeispiele

Erstellen eines Rabatts mit Metadaten

Fügen Sie benutzerdefinierte Schlüssel-Wert-Paare für die interne Verfolgung hinzu.
const discount = await client.discounts.create({
  type: 'percentage',
  amount: 1500, // 15%
  code: 'SUMMER2025',
  metadata: {
    campaign: 'summer_promo',
    source: 'email_blast'
  }
});
Verwenden Sie Metadaten, um Rabatte nach Kampagne, Quelle oder interner Referenz-ID zu kennzeichnen, damit Sie die Nutzung ausgleichen und den ROI später messen können.

Anwenden von Rabatten in Checkout-Sitzungen

Wenden Sie einen oder mehrere gestapelte Rabatte vorab an und zeigen Sie die Code-Eingabe-UI an.
const session = await client.checkoutSessions.create({
  product_cart: [
    { product_id: 'prod_abc', quantity: 1 }
  ],
  discount_codes: ['BLACKFRIDAY2024', 'NEWUSER5'], // stacked in array order
  customer: { email: 'user@example.com', name: 'Jane Doe' },
  return_url: 'https://yoursite.com/return'
});

Rabatte während Planänderungen anwenden

Bieten Sie Aktionspreise an, wenn Kunden ihr Abonnement upgraden oder downgraden.
await client.subscriptions.changePlan('sub_123', {
  product_id: 'prod_pro',
  quantity: 1,
  proration_billing_mode: 'prorated_immediately',
  discount_codes: ['UPGRADE20']
});
discount_codes WertVerhalten bei Planänderung
undefined / null (nicht bereitgestellt)Bestehende Rabatte mit preserve_on_plan_change=true werden beibehalten, wenn sie für das neue Produkt anwendbar sind.
[] (leeres Array)Alle bestehenden Rabatte werden aus dem Abonnement entfernt.
['CODE_A', 'CODE_B', ...]Ersetzt alle bestehenden Rabatte durch diesen gestapelten Satz, in Array-Reihenfolge angewendet.
Lesen Sie alle angewendeten Rabatte aus dem neuen discounts Array in der Abonnementantwort. Jedes Element umfasst discount_id, position, cycles_remaining (für Abonnements) und den Originalcode.

Eingabe von Rabatten ohne Voranwendung aktivieren

Lassen Sie Kunden während des Checkouts einen Code eingeben, ohne einen im Voraus zu übergeben.
const session = await client.checkoutSessions.create({
  product_cart: [
    { product_id: 'prod_abc', quantity: 1 }
  ],
  feature_flags: {
    allow_discount_code: true
  },
  return_url: 'https://yoursite.com/return'
});

Beste Vorgehensweisen

  • Klar benennen: Verwenden Sie erkennbare Codes, die den Kampagnennamen entsprechen
  • Zeitlich befristen: Fügen Sie Ablaufdaten hinzu, um Dringlichkeit zu erzeugen und Missbrauch zu verhindern
  • Klug eingrenzen: Begrenzen Sie auf bestimmte Produkte, um Margenausfälle zu vermeiden
  • Frühzeitig validieren: Überprüfen Sie die Codeanwendbarkeit vor Bestätigung des Checkouts
  • Auswirkungen überwachen: Verfolgen Sie Nutzung und Konvertierung nach Kampagne
Rabattcodes sind leistungsstarke Hebel für Akquise und Bindung. Beginnen Sie mit einfachen, gut benannten Angeboten, validieren Sie gründlich und iterieren Sie basierend auf der Leistung.
Last modified on June 9, 2026