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:Beispiele für Route-Handler
Alle Beispiele setzen voraus, dass Sie den nativen Server von Bun mit
Bun.serve() verwenden.- Checkout Handler
- Customer Portal Handler
- Webhook Handler
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.
Static Checkout (GET)
Static Checkout (GET)
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.Antwortformat
Der statische Checkout gibt eine JSON-Antwort mit der Checkout-URL zurück:Dynamic Checkout (POST)
Dynamic Checkout (POST)
- Übergeben Sie die Parameter als JSON-Body in einer POST-Anfrage.
- Unterstützt sowohl einmalige als auch wiederkehrende Zahlungen.
- Eine vollständige Liste der unterstützten Felder im POST-Body finden Sie unter:
Antwortformat
Der dynamische Checkout gibt eine JSON-Antwort mit der Checkout-URL zurück:Checkout Sessions (POST)
Checkout Sessions (POST)
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.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.