Zum Hauptinhalt springen
Dodo Payments bietet offizielle Framework-Adapter, die die Zahlungsintegration vereinfachen. Jeder Adapter ist so konzipiert, dass er nahtlos mit den Konventionen Ihres Frameworks funktioniert und Checkout, Kundenportal und Webhook-Verarbeitung sofort bereitstellt.
Framework-Adapter ermöglichen es Ihnen, Dodo Payments in weniger als 10 Zeilen Code zu integrieren. Sie übernehmen automatisch die Authentifizierung, die Anforderungsanalyse und die Antwortformatierung.

Verfügbare Framework-Adapter

Wählen Sie den Adapter, der zu Ihrem Framework passt:

Kernfunktionen

Alle Framework-Adapter bieten diese integrierten Funktionen:
FunktionBeschreibung
Checkout-HandlerUnterstützung für statische, dynamische und sitzungsbasierte Checkout-Flows
KundenportalVorgefertigter Handler für Abonnement- und Rechnungsmanagement
Webhook-HandlerSichere Signaturverifizierung mit typisierten Ereignis-Handlern
UmgebungsconfigEinfache Einrichtung über Umgebungsvariablen
TypensicherheitVollständige TypeScript-Unterstützung mit typisierten Payloads

Schnellstart

Beginnen Sie mit jedem Framework-Adapter in drei Schritten:
1

Adapter installieren

Verwenden Sie Ihren Paketmanager, um den frameworkspezifischen Adapter zu installieren:
npm install @dodopayments/nextjs
2

Umgebungsvariablen konfigurieren

Fügen Sie Ihre Dodo Payments-Anmeldeinformationen zu Ihrer Umgebung hinzu:
DODO_PAYMENTS_API_KEY=your-api-key
DODO_PAYMENTS_WEBHOOK_KEY=your-webhook-secret
DODO_PAYMENTS_RETURN_URL=https://yourdomain.com/checkout/success
DODO_PAYMENTS_ENVIRONMENT="test_mode" # or "live_mode"
Kommen Sie niemals Ihre .env Datei oder Geheimnisse in die Versionskontrolle ein.
3

Routen-Handler erstellen

Richten Sie Ihre Checkout-, Kundenportal- und Webhook-Routen ein:
// app/checkout/route.ts
import { Checkout } from "@dodopayments/nextjs";

export const GET = Checkout({
  bearerToken: process.env.DODO_PAYMENTS_API_KEY,
  returnUrl: process.env.DODO_PAYMENTS_RETURN_URL,
  environment: process.env.DODO_PAYMENTS_ENVIRONMENT,
});
Sie sind jetzt bereit, Zahlungen zu verarbeiten! Besuchen Sie die einzelnen Adapterseiten für detaillierte Anleitungen und alle verfügbaren Optionen.

Checkout-Flow-Typen

Alle Adapter unterstützen drei Checkout-Flow-Typen:
Verwenden Sie den statischen Checkout für einfache, teilbare Zahlungslinks. Übergeben Sie die Produkt-ID als Abfrageparameter:
/api/checkout?productId=pdt_xxx&quantity=1
Unterstützt optionale Kundenvorbefüllung und Anpassung über Abfrageparameter.
Verwenden Sie den dynamischen Checkout, um Zahlungen programmgesteuert mit benutzerdefinierten Details zu erstellen:
{
  "product_id": "pdt_xxx",
  "customer": {
    "email": "customer@example.com",
    "name": "John Doe"
  },
  "quantity": 1
}
Unterstützt sowohl einmalige Zahlungen als auch Abonnements.
Verwenden Sie Checkout-Sitzungen für das flexibelste Checkout-Erlebnis mit Warenkorbsupport:
{
  "product_cart": [
    { "product_id": "pdt_xxx", "quantity": 1 },
    { "product_id": "pdt_yyy", "quantity": 2 }
  ],
  "customer": {
    "email": "customer@example.com"
  }
}
Erfahren Sie mehr im Leitfaden zu Checkout-Sitzungen.

Webhook-Ereignisverarbeitung

Alle Adapter bieten typensichere Webhook-Verarbeitung mit granularen Ereignis-Callbacks:
Webhooks({
  webhookKey: process.env.DODO_PAYMENTS_WEBHOOK_KEY,
  onPayload: async (payload) => {
    // Handle any webhook event
  },
  onPaymentSucceeded: async (payload) => {
    // Handle successful payments
  },
  onSubscriptionActive: async (payload) => {
    // Handle new subscriptions
  },
  // ... 20+ event types supported
});
Alle Webhook-Handler verifizieren automatisch Signaturen und validieren Payloads mithilfe von Zod-Schemas. Ungültige Anfragen werden mit entsprechenden Fehlercodes abgelehnt.

Den richtigen Adapter wählen

FrameworkAm besten geeignet fürLaufzeit
Next.jsFull-Stack-React-Apps mit App RouterNode.js, Edge
NuxtFull-Stack-Vue.js-AnwendungenNode.js
ExpressREST-APIs und traditionelle Node.js-AppsNode.js
FastifyHochleistungs-APIsNode.js
HonoEdge-Bereitstellungen, Cloudflare WorkersEdge, Node.js
AstroInhaltsseiten mit Server-EndpunktenNode.js, Edge
SvelteKitFull-Stack-Svelte-AnwendungenNode.js
RemixFull-Stack-React mit geschachtelter RoutenführungNode.js
TanStack StartTypensicheres Full-Stack-ReactNode.js
Better AuthApps, die bereits Better Auth verwendenVerschiedene
ConvexApps, die Convex für das Backend verwendenConvex Runtime

Hilfe erhalten

Benötigen Sie Unterstützung bei Framework-Adaptern?