Übersicht
Das Dodo Payments Checkout SDK bietet eine nahtlose Möglichkeit, unser Zahlungs-Overlay in Ihre Webanwendung zu integrieren. Es wurde mit TypeScript und modernen Webstandards entwickelt und bietet eine robuste Lösung für die Zahlungsabwicklung mit Echtzeit-Ereignisverarbeitung und anpassbaren Themen.
Demo
Interaktive Demo
Sehen Sie den Overlay-Checkout in Aktion mit unserer Live-Demo.
Schnellstart
Starten Sie mit dem Dodo Payments Checkout SDK in nur wenigen Codezeilen:Schritt-für-Schritt-Integrationsanleitung
1
SDK installieren
Installieren Sie das Dodo Payments Checkout SDK mit Ihrem bevorzugten Paketmanager:
2
SDK initialisieren
Initialisieren Sie das SDK in Ihrer Anwendung, typischerweise in Ihrer Hauptkomponente oder dem Einstiegspunkt der App:
3
Erstellen Sie eine Checkout-Button-Komponente
Erstellen Sie eine Komponente, die das Checkout-Overlay öffnet:
4
Fügen Sie den Checkout zu Ihrer Seite hinzu
Verwenden Sie die Checkout-Button-Komponente in Ihrer Anwendung:
5
Erfolgs- und Fehlerseiten behandeln
Erstellen Sie Seiten, um Checkout-Weiterleitungen zu behandeln:
6
Testen Sie Ihre Integration
- Starten Sie Ihren Entwicklungsserver:
- Testen Sie den Checkout-Fluss:
- Klicken Sie auf die Checkout-Schaltfläche
- Überprüfen Sie, ob das Overlay erscheint
- Testen Sie den Zahlungsfluss mit Testanmeldeinformationen
- Bestätigen Sie, dass die Weiterleitungen korrekt funktionieren
Sie sollten Checkout-Ereignisse in der Konsole Ihres Browsers protokolliert sehen.
7
Live gehen
Wenn Sie bereit für die Produktion sind:
- Ändern Sie den Modus auf
'live':
- Aktualisieren Sie Ihre Checkout-URLs, um Live-Checkout-Sitzungen von Ihrem Backend zu verwenden
- Testen Sie den gesamten Fluss in der Produktion
- Überwachen Sie Ereignisse und Fehler
API-Referenz
Konfiguration
Initialisierungsoptionen
| Option | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
mode | "test" | "live" | Ja | Umgebungsmodus: 'test' für die Entwicklung, 'live' für die Produktion |
displayType | "overlay" | "inline" | Nein | Anzeigetyp: 'overlay' für modale Kasse (Standard), 'inline' für eingebettete Kasse |
onEvent | function | Ja | Callback-Funktion zur Verarbeitung von Kassenereignissen |
Checkout-Optionen
| Option | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
checkoutUrl | string | Ja | URL der Checkout-Sitzung von der API zur Erstellung von Checkout-Sitzungen |
options.showTimer | boolean | Nein | Zeigen oder verbergen Sie den Checkout-Timer. Standardmäßig auf true. Wenn deaktiviert, erhalten Sie das checkout.link_expired Ereignis, wenn die Sitzung abläuft. |
options.showSecurityBadge | boolean | Nein | Zeigen oder verbergen Sie das Sicherheitsabzeichen. Standardmäßig auf true. |
options.manualRedirect | boolean | Nein | Wenn aktiviert, wird die Kasse nach Abschluss nicht automatisch umgeleitet. Stattdessen erhalten Sie checkout.status und checkout.redirect_requested Ereignisse, um die Umleitung selbst zu steuern. |
Methoden
Checkout öffnen
Öffnet das Checkout-Overlay mit der angegebenen Checkout-Sitzungs-URL.manualRedirect verwenden, verarbeiten Sie den Abschluss der Kasse in Ihrem onEvent Callback:
Kasse schließen
Schließt das Kassenoverlay programmgesteuert.Status überprüfen
Gibt an, ob das Kassenoverlay derzeit geöffnet ist.Ereignisse
Das SDK bietet Echtzeitevents, auf die Sie über denonEvent Callback hören können:
Daten zum Kassenstatus-Ereignis
WennmanualRedirect aktiviert ist, erhalten Sie das checkout.status Ereignis mit den folgenden Daten:
Daten zum angeforderten Kassenumleitungsereignis
WennmanualRedirect aktiviert ist, erhalten Sie das checkout.redirect_requested Ereignis mit den folgenden Daten:
| Ereignistyp | Beschreibung |
|---|---|
checkout.opened | Kassenoverlay wurde geöffnet |
checkout.payment_page_opened | Zahlungsseite wurde angezeigt |
checkout.customer_details_submitted | Kunden- und Rechnungsdetails wurden übermittelt |
checkout.closed | Kassenoverlay wurde geschlossen |
checkout.redirect | Kasse wird eine Umleitung durchführen |
checkout.error | Ein Fehler ist während der Kasse aufgetreten |
checkout.link_expired | Wird ausgelöst, wenn die Kassen-Sitzung abläuft. Nur erhalten, wenn showTimer auf false gesetzt ist. |
checkout.status | Wird ausgelöst, wenn manualRedirect aktiviert ist. Enthält den Kassenstatus (succeeded, failed oder processing). |
checkout.redirect_requested | Wird ausgelöst, wenn manualRedirect aktiviert ist. Enthält die URL, zu der der Kunde umgeleitet werden soll. |
Implementierungsoptionen
Installation über Paketmanager
Installieren Sie über npm, yarn oder pnpm, wie im Schritt-für-Schritt-Integrationsleitfaden gezeigt.CDN-Implementierung
Für eine schnelle Integration ohne Build-Schritt können Sie unser CDN verwenden:TypeScript-Unterstützung
Das SDK ist in TypeScript geschrieben und enthält umfassende Typdefinitionen. Alle öffentlichen APIs sind vollständig typisiert, um die Entwicklererfahrung und IntelliSense-Unterstützung zu verbessern.Fehlerbehandlung
Das SDK bietet detaillierte Fehlermeldungen über das Ereignissystem. Implementieren Sie immer eine ordnungsgemäße Fehlerbehandlung in IhremonEvent Callback:
Best Practices
- Einmal initialisieren: Initialisieren Sie das SDK einmal, wenn Ihre Anwendung geladen wird, nicht bei jedem Kassenversuch.
- Fehlerbehandlung: Implementieren Sie immer eine ordnungsgemäße Fehlerbehandlung in Ihrem Ereignis-Callback.
- Testmodus: Verwenden Sie den
testModus während der Entwicklung und wechseln Sie erst in denliveModus, wenn Sie bereit für die Produktion sind. - Ereignisbehandlung: Behandeln Sie alle relevanten Ereignisse für eine vollständige Benutzererfahrung.
- Gültige URLs: Verwenden Sie immer gültige Checkout-URLs von der API zur Erstellung von Checkout-Sitzungen.
- TypeScript: Verwenden Sie TypeScript für bessere Typensicherheit und Entwicklererfahrung.
- Ladezustände: Zeigen Sie Ladezustände an, während die Kasse geöffnet wird, um die Benutzererfahrung zu verbessern.
- Manuelle Umleitungen: Verwenden Sie
manualRedirect, wenn Sie eine benutzerdefinierte Kontrolle über die Navigation nach der Kasse benötigen. - Timer-Management: Deaktivieren Sie den Timer (
showTimer: false), wenn Sie die Sitzungsablauf manuell verwalten möchten.
Fehlersuche
Kasse öffnet sich nicht
Kasse öffnet sich nicht
Mögliche Ursachen:
- SDK nicht initialisiert, bevor
open()aufgerufen wird. - Ungültige Checkout-URL.
- JavaScript-Fehler in der Konsole.
- Netzwerkverbindungsprobleme.
- Überprüfen Sie, ob die SDK-Initialisierung vor dem Öffnen der Kasse erfolgt.
- Überprüfen Sie auf Konsolenfehler.
- Stellen Sie sicher, dass die Checkout-URL gültig und von der API zur Erstellung von Checkout-Sitzungen stammt.
- Überprüfen Sie die Netzwerkverbindung.
Ereignisse werden nicht ausgelöst
Ereignisse werden nicht ausgelöst
Mögliche Ursachen:
- Ereignishandler nicht richtig eingerichtet.
- JavaScript-Fehler verhindern die Ereignisweiterleitung.
- SDK nicht korrekt initialisiert.
- Bestätigen Sie, dass der Ereignishandler in
Initialize()richtig konfiguriert ist. - Überprüfen Sie die Browserkonsole auf JavaScript-Fehler.
- Stellen Sie sicher, dass die SDK-Initialisierung erfolgreich abgeschlossen wurde.
- Testen Sie zunächst mit einem einfachen Ereignishandler.
Styling-Probleme
Styling-Probleme
Mögliche Ursachen:
- CSS-Konflikte mit Ihren Anwendungsstilen.
- Theme-Einstellungen wurden nicht korrekt angewendet.
- Probleme mit dem responsiven Design.
- Überprüfen Sie auf CSS-Konflikte in den DevTools des Browsers.
- Stellen Sie sicher, dass die Theme-Einstellungen korrekt sind.
- Testen Sie auf verschiedenen Bildschirmgrößen.
- Stellen Sie sicher, dass es keine z-index-Konflikte mit dem Overlay gibt.
Apple Pay aktivieren
Apple Pay ermöglicht es Kunden, Zahlungen schnell und sicher mit ihren gespeicherten Zahlungsmethoden abzuschließen. Wenn aktiviert, können Kunden das Apple Pay-Modul direkt aus dem Kassenoverlay auf unterstützten Geräten starten.Apple Pay wird auf iOS 17+, iPadOS 17+ und Safari 17+ auf macOS unterstützt.
1
Laden Sie die Apple Pay-Domain-Zuordnungsdatei herunter und laden Sie sie hoch
Laden Sie die Apple Pay-Domain-Zuordnungsdatei herunter.Laden Sie die Datei auf Ihren Webserver unter
/.well-known/apple-developer-merchantid-domain-association hoch. Wenn Ihre Website beispielsweise example.com ist, stellen Sie die Datei unter https://example.com/well-known/apple-developer-merchantid-domain-association zur Verfügung.2
Fordern Sie die Aktivierung von Apple Pay an
E-Mail [email protected] mit den folgenden Informationen:
- Ihre Produktionsdomain-URL (z. B.
https://example.com) - Anfrage zur Aktivierung von Apple Pay für Ihre Domain
Sie erhalten innerhalb von 1-2 Werktagen eine Bestätigung, sobald Apple Pay für Ihre Domain aktiviert wurde.
3
Überprüfen Sie die Verfügbarkeit von Apple Pay
Nach Erhalt der Bestätigung testen Sie Apple Pay in Ihrer Kasse:
- Öffnen Sie Ihre Kasse auf einem unterstützten Gerät (iOS 17+, iPadOS 17+ oder Safari 17+ auf macOS)
- Überprüfen Sie, ob die Apple Pay-Schaltfläche als Zahlungsoption angezeigt wird
- Testen Sie den vollständigen Zahlungsablauf
Browserunterstützung
Das Dodo Payments Checkout SDK unterstützt die folgenden Browser:- Chrome (neueste Version)
- Firefox (neueste Version)
- Safari (neueste Version)
- Edge (neueste Version)
- IE11+
Overlay vs Inline Checkout
Wählen Sie den richtigen Kassetyp für Ihren Anwendungsfall:| Funktion | Overlay-Checkout | Inline-Checkout |
|---|---|---|
| Integrationsgrad | Modal über der Seite | Vollständig in die Seite eingebettet |
| Layoutkontrolle | Eingeschränkt | Volle Kontrolle |
| Branding | Getrennt von der Seite | Nahtlos |
| Implementierungsaufwand | Niedriger | Höher |
| Am besten geeignet für | Schnelle Integration, bestehende Seiten | Benutzerdefinierte Checkout-Seiten, hochkonvertierende Abläufe |
Verwandte Ressourcen
Inline Checkout
Betten Sie die Kasse direkt in Ihre Seite ein, um vollständig integrierte Erlebnisse zu schaffen.
Checkout Sessions API
Erstellen Sie Checkout-Sitzungen, um Ihre Checkout-Erlebnisse zu unterstützen.
Webhooks
Verarbeiten Sie Zahlungsereignisse serverseitig mit Webhooks.
Integrationsleitfaden
Vollständiger Leitfaden zur Integration von Dodo Payments.