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 die Integration von Dodo Payments mit weniger als 10 Codezeilen. Sie übernehmen automatisch Authentifizierung, Anfrageanalyse und Antwortformatierung.

Verfügbare Framework-Adapter

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

Kernfunktionen

Alle Framework-Adapter bieten diese integrierten Funktionen:
FeatureDescription
Checkout HandlerUnterstützung für statische, dynamische und sitzungsbasierte Checkout-Flows
Customer PortalVorgefertigter Handler für Abonnement- und Abrechnungsverwaltung
Webhook HandlerSichere Signaturprüfung mit typisierten Ereignishandlern
Environment ConfigEinfache Einrichtung über Umgebungsvariablen
Type SafetyVollständige TypeScript-Unterstützung mit typisierten Payloads

Schnellstart

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

Install the Adaptor

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

Configure Environment Variables

Fügen Sie Ihre Dodo Payments-Zugangsdaten 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"
Committen Sie niemals Ihre .env-Datei oder Geheimnisse in die Versionskontrolle.
3

Create Route Handlers

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 nun bereit, Zahlungen zu verarbeiten! Besuchen Sie die einzelnen Adapterseiten für detaillierte Anleitungen und alle verfügbaren Optionen.

Checkout-Flussarten

Alle Adapter unterstützen drei Checkout-Flussarten:
Verwenden Sie statischen Checkout für einfache, teilbare Zahlungslinks. Übergeben Sie die Produkt-ID als Abfrageparameter:
/api/checkout?productId=pdt_xxx&quantity=1
Unterstützt optionales Vorausfüllen des Kunden und Anpassungen über Abfrageparameter.
Verwenden Sie dynamischen Checkout, um Zahlungen programmatisch mit individuellen Details zu erstellen:
{
  "product_id": "pdt_xxx",
  "customer": {
    "email": "customer@example.com",
    "name": "John Doe"
  },
  "quantity": 1
}
Unterstützt Einmalzahlungen und Abonnements.
Verwenden Sie Checkout-Sessions für die flexibelste Checkout-Erfahrung mit Warenkorb-Unterstützung:
{
  "product_cart": [
    { "product_id": "pdt_xxx", "quantity": 1 },
    { "product_id": "pdt_yyy", "quantity": 2 }
  ],
  "customer": {
    "email": "customer@example.com"
  }
}
Erfahren Sie mehr im Checkout Sessions Guide.

Webhook-Ereignisverarbeitung

Alle Adapter bieten typgesicherte Webhook-Verarbeitung mit granularer Ereignis-Callback-Steuerung:
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-Schemata. Ungültige Anfragen werden mit entsprechenden Fehlercodes abgelehnt.

Die richtige Adapterwahl

FrameworkBest ForRuntime
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
AstroContent-Sites mit ServerendpunktenNode.js, Edge
SvelteKitFull-Stack-Svelte-AnwendungenNode.js
RemixFull-Stack-React mit verschachtelter Routing-LogikNode.js
TanStack StartTypensicheres Full-Stack-ReactNode.js
Better AuthApps, die bereits Better Auth verwendenVerschiedene
ConvexApps, die Convex für das Backend nutzenConvex Runtime
BunNative Bun-ServeranwendungenBun

Hilfe erhalten

Benötigen Sie Hilfe mit Framework-Adaptern?