Eine Banküberweisung annehmen
Verwenden Sie die Payment Intents API, um Zahlungen per Banküberweisung anzunehmen.
Wenn Sie zum ersten Mal eine Zahlung per Banküberweisung von einem Kunden/einer Kundin annehmen, generiert Stripe ein virtuelles Bankkonto für diesen Kunden/diese Kundin, das Sie dann direkt mit ihm/ihr teilen können. Alle zukünftigen Zahlungen per Banküberweisung von diesem Kunden/dieser Kundin werden an dieses Bankkonto gesendet. In einigen Ländern stellt Ihnen Stripe auch eine eindeutige Überweisungsreferenznummer zur Verfügung, die Ihre Kund/innen bei jeder Überweisung angeben sollten, um den Abgleich der Überweisung mit ausstehenden Zahlungen zu erleichtern. Beachten Sie, dass in einigen Ländern die Anzahl virtueller Bankkontonummern, die Sie kostenlos erstellen können, begrenzt ist.
Eine Übersicht über die üblichen Schritte bei der Annahme einer Zahlung per Banküberweisung finden Sie im folgenden Sequenzdiagramm:
Umgang mit Unter- und Überzahlungen
Bei Zahlungen per Banküberweisung ist es möglich, dass Sie mehr oder weniger als den erwarteten Zahlungsbetrag erhalten. Wird zu wenig überwiesen, übernimmt Stripe zum Teil die Finanzierung eines offenen Payment Intent. Rechnungen werden jedoch nicht teilfinanziert und bleiben offen, bis die eingehenden Gelder den vollständigen Rechnungsbetrag decken.
Wenn der Kunde/die Kundin mehr als den erwarteten Betrag sendet, versucht Stripe, die eingehenden Gelder mit einer offenen Zahlung abzugleichen und den verbleibenden überschüssigen Betrag im Barguthaben des Kunden/der Kundin zu halten. Weitere Einzelheiten zu unserem Umgang mit dem Abgleich finden Sie im entsprechenden Abschnitt unserer Dokumentation.
Umgang mit mehreren offenen Zahlungen oder Rechnungen
Möglicherweise haben Sie mehrere offene Zahlungen oder Rechnungen, die per Banküberweisung bezahlt werden können. Als Standardeinstellung versucht Stripe, die Banküberweisung automatisch abzugleichen. Dazu verwenden wir Informationen wie den Referenzcode der Überweisung oder den überwiesenen Betrag.
Sie können den automatischen Abgleich deaktivieren und Zahlungen und Rechnungen selbst manuell abgleichen. Sie können das automatische Abgleichsverhalten pro Kunde/Kundin außer Kraft setzen, indem Sie den Abgleichsmodus auf manuell festlegen.
Stripe einrichtenServerseitig
Zunächst benötigen Sie ein Stripe-Konto. Registrieren Sie sich jetzt.
Nutzen Sie unsere offiziellen Bibliotheken für den Zugriff auf die Stripe-API über Ihre Anwendung:
Kund/innen erstellen oder abrufenServerseitig
Sie müssen ein Kundenobjekt zuordnen, um jede Banküberweisungszahlung abzugleichen. Wenn Sie bereits über ein Kundenobjekt verfügen, können Sie diesen Schritt überspringen. Erstellen Sie andernfalls ein neues Kundenobjekt.
PaymentIntent erstellen und bestätigenServerseitig
Ein PaymentIntent ist ein Objekt, das Ihre Absicht zur Einziehung einer Kundenzahlung darstellt und den Zahlungsvorgang in jeder Phase verfolgt. Erstellen und bestätigen Sie einen PaymentIntent auf dem Server und geben Sie den Betrag und die Währung an, die Sie einziehen möchten. Außerdem müssen Sie den Kundenparameter der PaymentIntent-Erstellungsanfrage ausfüllen. Banküberweisungen sind bei PaymentIntents ohne eine Kundin/einen Kunden nicht verfügbar.
Kund/innen anweisen, eine Banküberweisung durchzuführenClientseitig
Wenn der Kundensaldo nicht ausreicht, um den angeforderten Betrag abzudecken, zeigt die PaymentIntent den Status requires_
an. Die Antwort enthält das Feld next_
mit dem type
-Wert display_
. Der Hash next_
enthält Informationen, die Sie Ihren Kund/innen anzeigen sollten, damit sie die Überweisung durchführen können.
Notiz
Im Live-Modus stellt Stripe jedem Kunden/jeder Kundin einen eindeutigen Satz von Banküberweisungsdaten zur Verfügung. Im Gegensatz dazu bietet Stripe allen Kundinnen und Kunden im Test.Modus ungültige Banküberweisungsdaten an. Anders als beim Live-Modus sind diese ungültigen Details möglicherweise nicht immer eindeutig.
Erfolgreiche PaymentIntent bestätigen
Die PaymentIntent verbleibt im Status requires_
, bis Gelder auf dem Bankkonto eingehen. Wenn die Gelder bereit sind, wird der PaymentIntent-Status von requires_
auf succeeded
aktualisiert.
Ihr Webhook-Endpoint muss so eingerichtet werden, dass er das Ereignis payment_
empfängt.
Sie können einen Webhook über das Dashboard hinzufügen.
Alternativ können Sie die Webhook Endpoints API verwenden, um das Ereignis payment_intent.partially_funded zu empfangen.
Stripe sendet die folgenden Ereignisse während des Zahlungsablaufs, wenn wir den PaymentIntent aktualisieren.
Ereignis | Beschreibung | Nächste Schritte |
---|---|---|
payment_ | Wird bei der Bestätigung gesendet, wenn das Guthaben des/der Kund/in für den Abgleich der PaymentIntent nicht ausreicht. Die PaymentIntent wechselt zu requires_ . | Weisen Sie Ihre Kund/innen an, eine Banküberweisung mit dem amount_ zu senden. |
payment_ | Der/die Kund/in hat eine Banküberweisung getätigt, die auf die PaymentIntent angewendet wurde. Dies reichte aber nicht aus, um die Zahlung abzuschließen. Das kann passieren, da der/die Kund/in zu wenig überwiesen hat (aufgrund einer irrtümlichen Unterzahlung oder wegen von der Bank erhobenen Gebühren) oder weil ein verbliebener Restsaldo dieses/dieser Kund/in auf diese PaymentIntent angewendet wurde. PaymentIntents, die teilweise finanziert sind, werden erst in Ihrem Kontostand angezeigt, wenn die Zahlung abgeschlossen ist. | Weisen Sie eine weitere Kundenüberweisung mit dem neuen amount_ an, um die Zahlung abzuschließen. Wenn Sie die Zahlung mit den teilweise zugewiesenen Mitteln abschließen möchten, können Sie den amount aktualisieren und den PaymentIntent erneut bestätigen bestätigen. |
payment_ | Die Zahlung des/der Kund/in war erfolgreich. | Wickeln Sie die Bestellung des/der Kund/in ab. |
Vorsicht
Wenn Sie den Betrag eines teilweise finanzierten PaymentIntent ändern, werden die Gelder dem Kundenguthaben wieder gutgeschrieben. Wenn andere PaymentIntents offen sind, finanziert Stripe diese automatisch. Wenn der Kunde/die Kundin für den manuellen Abgleich konfiguriert ist, müssen Sie die Gelder erneut zuweisen.
Wir empfehlen die Verwendung von Webhooks, um die erfolgreiche Abbuchung zu bestätigen und die Kundinnen/Kunden zu informieren, dass die Zahlung abgeschlossen ist.
Beispielcode
Ausstehende Zahlungen im Dashboard anzeigen
Sie können alle ausstehenden PaymentIntents für Banküberweisungen im Dashboard anzeigen, indem Sie den Filter Auf Finanzierung warten auf den Status anwenden.
Integration testen
Sie können Ihre Integration testen, indem Sie eine eingehende Überweisung über das Dashboard oder eine HTTP-Anfrage simulieren.
Mit dem Dashboard
Um eine Überweisung über das Dashboard zu simulieren, navigieren Sie zur Kundenseite im Dashboard. Klicken Sie unter Zahlungsmethoden auf Hinzufügen und wählen Sie Barguthaben aufladen (nur im Testmodus).
Mit der Stripe-API
Sie können einen API-Aufruf durchführen, um eine Banküberweisung zu simulieren.
Umgang mit vorübergehenden Verfügbarkeitsproblemen
Die folgenden Fehlercodes weisen auf vorübergehende Probleme mit der Verfügbarkeit der Zahlungsmethode hin:
Code | Beschreibung | Handling |
---|---|---|
payment_ | Für diese Zahlungsmethode, die strengeren Grenzwerten als den API-weiten Ratenbegrenzungen unterliegt, wurden in kurzer Zeit zu viele Anfragen gestellt. | Diese Fehler können bei mehreren API-Anforderungen weiterhin auftreten, wenn viele Ihrer Kund/innen versuchen, dieselbe Zahlungsmethode zu verwenden (z. B. während eines laufenden Verkaufs auf Ihrer Website). Bitten Sie in diesem Fall Ihre Kund/innen, eine andere Zahlungsmethode auszuwählen. |
Vorsicht
Wenn Sie allgemein oder aufgrund eines bevorstehenden Ereignisses starke Nutzung erwarten, kontaktieren Sie uns, sobald Sie davon erfahren.