So funktionieren PaymentIntents
Erfahren Sie, wie PaymentIntents innerhalb des Zahlungsablaufs funktionieren.
Die Verwaltung von Zahlungen, die asynchrone Prozesse umfassen, kann kompliziert sein. Beispielsweise kann ein/e Nutzer/in aufgefordert werden, eine Zahlung mit 3D Secure zu bestätigen. Asynchrone Zahlungsabläufe sind schwer zu verwalten, da sie von Kundeninteraktionen abhängen, die außerhalb Ihrer Anwendung stattfinden. PaymentIntents und SetupIntents vereinfachen die Verwaltung, indem sie den Status des Ablaufs in einer Zustandsmaschine verfolgen.
Wenn der PaymentIntent erstellt wird, hat er den Status requires_
1, bis eine Zahlungsmethode angehängt wird.
Wir empfehlen, PaymentIntent zu erstellen, sobald Sie wissen, wie viel Sie berechnen möchten, sodass Stripe alle versuchten Zahlungen protokollieren kann.
Nachdem ein/e Kund/in die Zahlungsinformationen angegeben hat, kann der PaymentIntent bestätigt werden.
In den meisten Integrationen wird dieser Status übersprungen, weil die Informationen zur Zahlungsmethode genau dann übermittelt werden, wenn die Zahlung bestätigt wird.
Wenn für die Zahlung zusätzliche Aktionen erforderlich sind, z. B. die Authentifizierung mit 3D Secure, hat der PaymentIntent den Status requires_
1.
Nachdem die erforderlichen Aktionen verarbeitet wurden, wechselt der PaymentIntent-Wert zu processing
für asynchrone Zahlungsmethoden zum Beispiel Lastschriften. Die Bearbeitung dieser Arten von Zahlungsmethoden kann einige Tage in Anspruch nehmen. Andere Zahlungsmethoden, wie zum Beispiel Karten, werden schneller verarbeitet und gehen nicht in den Status processing
über.
Wenn Sie Gelder separat autorisieren und erfassen, kann Ihr PaymentIntent stattdessen auch zu requires_
wechseln. In diesem Fall wird er beim Versuch, die Gelder zu erfassen, zu processing
verschoben.
Eine PaymentIntent mit erfolgreichem Status bedeutet, dass der von ihm gesteuerte Zahlungsablauf abgeschlossen ist.
Die Gelder sind jetzt in Ihrem Konto und Sie können die Bestellung zuversichtlich ausführen. Wenn Sie eine Rückerstattung an den Kunden/die Kundin ausstellen müssen, können Sie Refunds API verwenden.
Wenn der Zahlungsversuch fehlschlägt (zum Beispiel aufgrund einer Ablehnung), kehrt der Status des PaymentIntent zu requires_
zurück, sodass die Zahlung erneut versucht werden kann.
Sie können einen PaymentIntent jederzeit stornieren, bevor er sich im Status processing
2 oder succeeded
befindet. Wenn Sie ihn stornieren, wird der PaymentIntent für zukünftige Zahlungsversuche ungültig und kann nicht rückgängig gemacht werden. Wenn Gelder zurückgehalten wurden, werden diese durch die Stornierung freigegeben.
PaymentIntents können auch automatisch in den Status canceled
übergehen, wenn sie zu oft bestätigt wurden.
1 Versionen der API vor dem 11.02.2019 zeigen requires_
anstelle von requires_
und requires_
anstelle von requires_
an.
2 Sie können einen PaymentIntent im Status processing
stornieren, wenn die zugehörige Zahlungsmethode „US-Bankkonto“ ist. Die Stornierung kann jedoch aufgrund eines begrenzten und variierenden Zeitfensters fehlschlagen.