Zum Hauptinhalt springen

Checkout Function

Integrieren Sie den Dodo Payments Checkout mit einem sitzungsbasierten Ablauf.

Customer Portal

Ermöglichen Sie Kunden, Abonnements und Details zu verwalten.

Webhooks

Empfangen und verarbeiten Sie Dodo Payments-Webhooks.

Installation

1

Install the package

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

Add Component to Convex Config

Fügen Sie die Dodo Payments-Komponente zu Ihrer Convex-Konfiguration hinzu:
Nachdem Sie convex.config.ts bearbeitet haben, führen Sie npx convex dev einmal aus, um die erforderlichen Typen zu generieren.
3

Set up environment variables

Richten Sie Umgebungsvariablen in Ihrem Convex-Dashboard ein (EinstellungenUmgebungsvariablen). Sie erreichen das Dashboard, indem Sie Folgendes ausführen:
Fügen Sie die folgenden Umgebungsvariablen hinzu:
  • DODO_PAYMENTS_API_KEY - Ihr Dodo Payments-API-Schlüssel
  • DODO_PAYMENTS_ENVIRONMENT - auf test_mode oder live_mode setzen
  • DODO_PAYMENTS_WEBHOOK_SECRET - Ihr Webhook-Geheimnis (erforderlich für die Webhook-Verarbeitung)
Verwenden Sie immer Convex-Umgebungsvariablen für sensible Informationen. Speichern Sie Geheimnisse niemals in der Versionsverwaltung.

Beispiele zur Komponenteneinrichtung

1

Create Internal Query

Erstellen Sie zunächst eine interne Abfrage, um Kunden aus Ihrer Datenbank abzurufen. Diese wird in den Zahlungsfunktionen verwendet, um Kunden zu identifizieren.
Bevor Sie diese Abfrage verwenden, stellen Sie sicher, dass Sie das entsprechende Schema in Ihrer convex/schema.ts-Datei definieren oder die Abfrage an Ihr bestehendes Schema anpassen.
2

Configure DodoPayments Component

Verwenden Sie diese Funktion, um den Dodo Payments Checkout in Ihre Convex-App zu integrieren. Sie nutzt einen sitzungsbasierten Checkout mit voller Funktionsunterstützung.

Checkout-Funktion

Die Dodo Payments Convex-Komponente verwendet einen sitzungsbasierten Checkout und bietet ein sicheres, anpassbares Checkout-Erlebnis mit vorkonfigurierten Produktkörben und Kundendaten. Dies ist der empfohlene Ansatz für alle Zahlungsabläufe.

Verwendung

Siehe Checkout-Sitzungen für weitere Details und eine vollständige Liste der unterstützten Felder.

Antwortformat

Die Checkout-Funktion gibt eine JSON-Antwort mit der Checkout-URL zurück:

Kundenportal-Funktion

Die Kundenportal-Funktion ermöglicht es Ihnen, das Dodo Payments-Kundenportal nahtlos in Ihre Convex-Anwendung zu integrieren.

Verwendung

Parameter

send_email
boolean
Wenn auf true gesetzt, wird eine E-Mail mit dem Portal-Link an den Kunden gesendet.
Der Kunde wird automatisch über die identify-Funktion identifiziert, die in Ihrer DodoPayments-Konfiguration eingerichtet ist. Diese Funktion sollte die dodoCustomerId des Kunden zurückgeben.

Webhook-Handler

  • Methode: Nur POST-Anfragen werden unterstützt. Andere Methoden geben 405 zurück.
  • Signaturverifizierung: Überprüft die Webhook-Signatur mit DODO_PAYMENTS_WEBHOOK_SECRET. Gibt 401 zurück, wenn die Überprüfung fehlschlägt.
  • Payload-Validierung: Mit Zod validiert. Gibt 400 für ungültige Payloads zurück.
  • Fehlerbehandlung:
    • 401: Ungültige Signatur
    • 400: Ungültige Payload
    • 500: Interner Fehler während der Überprüfung
  • Ereignisweiterleitung: Ruft den entsprechenden Ereignishandler basierend auf dem Payload-Typ auf.

Unterstützte Webhook-Event-Handler

Frontend-Verwendung

Verwenden Sie die Checkout-Funktion in Ihren React-Komponenten mit Convex-Hooks.

Eingabeaufforderung für LLM

Zuletzt geändert am 4. Mai 2026