Skip to main content

Checkout Handler

Integrieren Sie den Checkout von Dodo Payments in Ihren Bun-Server.

Customer Portal

Ermöglichen Sie Kunden, Abonnements und persönliche Daten zu verwalten.

Webhooks

Empfangen und verarbeiten Sie Webhook-Ereignisse von Dodo Payments.

Installation

1

Install the package

Führen Sie den folgenden Befehl im Stammverzeichnis Ihres Projekts aus:
2

Set up environment variables

Erstellen Sie eine .env-Datei im Stammverzeichnis Ihres Projekts:
Committen Sie Ihre .env-Datei oder Geheimnisse niemals in die Versionsverwaltung.

Beispiele für Route-Handler

Alle Beispiele setzen voraus, dass Sie den nativen Server von Bun mit Bun.serve() verwenden.
Verwenden Sie diesen Handler, um den Checkout von Dodo Payments in Ihren Bun-Server zu integrieren. Unterstützt statische (GET), dynamische (POST) und sitzungsbasierte (POST) Zahlungsabläufe.

Checkout-Route-Handler

Dodo Payments unterstützt drei Arten von Zahlungsabläufen zur Integration von Zahlungen in Ihre Website. Dieser Adapter unterstützt alle Arten von Zahlungsabläufen.
  • Statische Payment Links: Sofort teilbare URLs für die schnelle Zahlungserfassung ohne Code.
  • Dynamische Payment Links: Generieren Sie programmgesteuert Payment Links mit benutzerdefinierten Details über die API oder SDKs.
  • Checkout Sessions: Erstellen Sie sichere, anpassbare Checkout-Erlebnisse mit vorkonfigurierten Produktwarenkörben und Kundendaten.

Unterstützte Query-Parameter

string
erforderlich
Produktidentifikator (z. B. ?productId=pdt_xxx).
integer
Anzahl des Produkts.
string
Vollständiger Name des Kunden.
string
Vorname des Kunden.
string
Nachname des Kunden.
string
E-Mail-Adresse des Kunden.
string
Land des Kunden.
string
Adresszeile des Kunden.
string
Ort des Kunden.
string
Bundesland/Provinz des Kunden.
string
Postleitzahl des Kunden.
boolean
Feld für den vollständigen Namen deaktivieren.
boolean
Feld für den Vornamen deaktivieren.
boolean
Feld für den Nachnamen deaktivieren.
boolean
E-Mail-Feld deaktivieren.
boolean
Länderfeld deaktivieren.
boolean
Adresszeilenfeld deaktivieren.
boolean
Ortsfeld deaktivieren.
boolean
Bundeslandfeld deaktivieren.
boolean
Postleitzahlenfeld deaktivieren.
string
Zahlungswährung angeben (z. B. USD).
boolean
Währungsauswahl anzeigen.
boolean
Legt den berechneten Betrag in Haupteinheiten der Währung fest (z. B. 12.5 für 12,50 $). Nur für Pay What You Want-Produkte und wird ignoriert, wenn der Betrag unter dem Mindestpreis des Produkts liegt.
boolean
Rabattfelder anzeigen.
string
Jeder Query-Parameter, der mit metadata_ beginnt, wird als Metadaten übergeben.
Wenn productId fehlt, gibt der Handler eine 400-Antwort zurück. Ungültige Query-Parameter führen ebenfalls zu einer 400-Antwort.

Antwortformat

Der statische Checkout gibt eine JSON-Antwort mit der Checkout-URL zurück:

Antwortformat

Der dynamische Checkout gibt eine JSON-Antwort mit der Checkout-URL zurück:
Checkout Sessions bieten ein sichereres, gehostetes Checkout-Erlebnis, das den vollständigen Zahlungsablauf sowohl für einmalige Käufe als auch für Abonnements abwickelt und dabei umfassende Anpassungsmöglichkeiten bietet.Weitere Informationen und eine vollständige Liste der unterstützten Felder finden Sie im Checkout Sessions Integration Guide.

Antwortformat

Checkout Sessions geben eine JSON-Antwort mit der Checkout-URL zurück:

Customer Portal-Route-Handler

Der Customer Portal-Route-Handler ermöglicht die nahtlose Integration des Customer Portals von Dodo Payments in Ihre Bun-Serveranwendung.

Query-Parameter

string
erforderlich
Die Kunden-ID für die Portalsitzung (z. B. ?customer_id=cus_123).
boolean
Bei Einstellung auf true wird dem Kunden eine E-Mail mit dem Portal-Link gesendet.
Gibt 400 zurück, wenn customer_id fehlt.

Webhook-Route-Handler

  • Methode: Nur POST-Anfragen werden unterstützt. Andere Methoden geben 405 zurück.
  • Signaturüberprüfung: Überprüft die Webhook-Signatur mithilfe von webhookKey. Gibt 401 zurück, wenn die Überprüfung fehlschlägt.
  • Payload-Validierung: Wird mit Zod validiert. Gibt 400 für ungültige Payloads zurück.
  • Fehlerbehandlung:
    • 401: Ungültige Signatur
    • 400: Ungültige Payload
    • 500: Interner Fehler bei der Überprüfung
  • Ereignis-Routing: Ruft den entsprechenden Event-Handler basierend auf dem Payload-Typ auf.

Unterstützte Webhook-Ereignishandler


Prompt für LLM

Zuletzt geändert am 6. August 2026