Transaktionen zurückerstatten
Stripe Terminal-Zahlungen stornieren oder rückerstatten
Stripe Terminal unterstützt sowohl die automatische als auch die manuelle Erfassung.
Wenn das SDK einen bestätigten PaymentIntent an Ihre App zurückgibt, ist die Zahlung autorisiert, aber nicht erfasst. Sie können Zahlungen, die autorisiert und noch nicht erfasst wurden, stornieren. Wenn der PaymentIntent bereits erfasst wurde, müssen Sie die durch den PaymentIntent erstellte zugrundeliegende Zahlung mit der Refunds API oder über das Dashboard zurückerstatten.
Nach einem Tag mit Aktivitäten in Ihrem Backend empfehlen wir, Zahlungen abzugleichen, um unbeabsichtigte Autorisierungen und nicht eingezogene Gelder zu verhindern.
Verfügbarkeit
Zahlungen stornieren ist für Visa, Mastercard, American Express, Discover und girocard verfügbar. Bei Einzelnachrichten-Zahlungsmethoden wie Interac und eftpos werden PaymentIntents automatisch erfasst. Anstelle der Stornierung der PaymentIntents sollte Ihre Anwendung die Möglichkeit bieten, am Ende des Bezahlvorgangs eine Erstattung zu veranlassen.
Online-Rückerstattungen sind für alle Kartennetzwerke außer Interac verfügbar.
Persönliche Rückerstattungen sind nur auf Interac verfügbar.
Zahlungen stornieren ClientseitigServerseitig
Sie können eine card_
-PaymentIntent jederzeit stornieren, bevor sie erfasst wurde. Durch Stornieren einer PaymentIntent werden alle nicht erfassten Gelder freigegeben, und eine stornierte PaymentIntent kann nicht mehr zur Durchführung von Zahlungen verwendet werden.
Verwenden Sie dies, wenn Ihre Kundin/Ihr Kunde beispielsweise nach der Verarbeitung der Zahlung beschließt, eine andere Zahlungsmethode zu verwenden oder bar bezahlen möchte. Auf der Nutzeroberfläche Ihrer Anwendung sollten Sie Nutzerinnen und Nutzern die Möglichkeit geben, die Zahlung nach dem Bestätigen zu stornieren, bevor die Zahlung abgeschlossen und Ihr Backend benachrichtigt wird. Anschließend wird die Zahlung erfasst.
Clientseitig
Stornieren Sie einen PaymentIntent
auf Ihrem Client mit dem iOS SDK, Android SDK oder React Native SDK:
Notiz
Die clientseitige Stornierung des PaymentIntent
ist mit dem iOS SDK, Android SDK und React Native SDK möglich. Wenn Sie die servergestützte Integration verwenden, stornieren Sie den PaymentIntent
serverseitig.
Serverseitig
Für das JavaScript SDK und die serverseitige Integration müssen Sie den PaymentIntent
auf Ihrem Server stornieren. Bei den anderen SDKs können Sie den PaymentIntent
auf Ihrem Server stornieren, wenn die zum Starten einer Zahlung erforderlichen Informationen in Ihrer App nicht ohne Weiteres verfügbar sind.
Rückerstattungen durchführen Server-side
Wenn Sie eine PaymentIntent verwenden, um eine Zahlung von einer Kundin/einem Kunden einzuziehen, erstellt Stripe im Hintergrund eine Abbuchung. Um die Zahlung der Kundin/des Kunden zu erstatten, nachdem die PaymentIntent erfolgreich war, erstellen Sie eine Rückerstattung, indem Sie die PaymentIntent-ID oder die Zahlungs-ID übergeben. Sie können auch optional nur einen Teil der Zahlung rückerstatten, indem Sie einen Betrag angeben.
Sie können Rückerstattungen mit der API oder über das Dashboard durchführen. Für Interac-Transaktionen in Kanada unterstützen das BBPOS WisePOS E-Lesegerät und der Stripe Reader S700 stattdessen persönliche Rückerstattungen.
Bei Online-Rückerstattungen muss der/die Karteninhaber/in seine/ihre Karte am Point of Sale nicht erneut vorlegen. Das folgende Beispiel zeigt, wie eine vollständige Rückerstattung durch Übergabe der PaymentIntent-ID erstellt wird.
Um einen Teil einer PaymentIntent zu erstatten, geben Sie einen amount
-Parameter als Ganzzahl in Cent (oder in der kleinsten Währungseinheit der Abbuchungswährung) an: