Weiter zum Inhalt
Konto erstellen
oder
anmelden
Das Logo der Stripe-Dokumentation
/
KI fragen
Konto erstellen
Anmelden
Jetzt starten
Zahlungen
Umsatz
Plattformen und Marktplätze
Geldmanagement
Entwicklerressourcen
Übersicht
Informationen zu Stripe Payments
Aktualisieren Sie Ihre Integration
Zahlungsanalysefunktionen
Online-Zahlungen
ÜbersichtIhren Use case findenZahlungen verwalten
Payment Links verwenden
Bezahlseite erstellen
Erweiterte Integration erstellen
In-App-Integration erstellen
Zahlungsmethoden
Zahlungsmethoden hinzufügen
    Übersicht
    Optionen für die Integration von Zahlungsmethoden
    Standardzahlungsmethoden im Dashboard verwalten
    Arten von Zahlungsmethoden
    Karten
    Mit Stripe-Guthaben bezahlen
    Krypto
    Lastschriften
    Bank Redirect
    Banküberweisungen
      Zahlung annehmen
      Kundensaldo
      Rückerstattungen
    Überweisungen (Sources)
    Jetzt kaufen, später bezahlen
    Zahlungen in Echtzeit
    Gutscheine
    Geldbörsen
    Lokale Zahlungsmethoden nach Land aktivieren
    Nutzerdefinierte Zahlungsmethoden
Zahlungsmethoden verwalten
Schnellerer Bezahlvorgang mit Link
Zahlungsschnittstellen
Payment Links
Checkout
Web Elements
In-App-Elements
Zahlungsszenarien
Umgang mit mehreren Währungen
Nutzerdefinierte Zahlungsabläufe
Flexibles Acquiring
Orchestrierung
Präsenzzahlungen
Terminal
Mehr als Zahlungen
Unternehmensgründung
Krypto
Financial Connections
Climate
StartseiteZahlungenAdd payment methodsBank transfers

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.

Wenn ein/e Kund/in zu wenig bezahlt:

Wenn ein/e Kund/in zu viel bezahlt:

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 einrichten
Serverseitig

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:

Command Line
Ruby
# Available as a gem sudo gem install stripe
Gemfile
Ruby
# If you use bundler, you can add this line to your Gemfile gem 'stripe'

Kund/innen erstellen oder abrufen
Serverseitig

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.

Command Line
cURL
curl -X POST https://api.stripe.com/v1/customers \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"

PaymentIntent erstellen und bestätigen
Serverseitig

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.

Bevor Sie einen Payment Intent erstellen, müssen Sie unbedingt zuvor im Dashboard in den Einstellungen für Zahlungsmethoden die Option Banküberweisung aktivieren.

Notiz

Mit dynamischen Zahlungsmethoden übernimmt Stripe die Rückgabe geeigneter Zahlungsmethoden basierend auf Faktoren wie Betrag, Währung und Zahlungsablauf der Transaktion.

Command Line
cURL
curl https://api.stripe.com/v1/payment_intents \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d amount=1099 \ -d customer=
{{CUSTOMER_ID}}
\ -d currency=usd \ -d "automatic_payment_methods[enabled]"=true \ --data-urlencode return_url="https://example.com/return_url" \ -d "payment_method_data[type]"=customer_balance \ -d confirm=true

In der neuesten Version der API ist die Angabe des Parameters automatic_payment_methods optional, da Stripe seine Funktionalität standardmäßig aktiviert.

Wenn der Kunde/die Kundin bereits über ein Guthaben verfügt, das den Zahlungsbetrag abdeckt, wird der PaymentIntent sofort mit dem Status succeeded erfolgreich ausgeführt. Kundinnen/Kunden können ein Guthaben ansammeln, wenn sie versehentlich zu viel bezahlen. Dies kommt bei Banküberweisungen häufig vor. Sie müssen Kundensalden innerhalb eines bestimmten Zeitraums basierend auf Ihrem Standort abgleichen.

Kund/innen anweisen, eine Banküberweisung durchzuführen
Clientseitig

Wenn der Kundensaldo nicht ausreicht, um den angeforderten Betrag zu decken, zeigt der PaymentIntent den Status requires_action an. Die Antwort enthält das Feld next_action mit dem Wert display_bank_transfer_instructions als type. Der Hash next_action[display_bank_transfer_instructions] enthält Informationen, die Sie Ihren Kundinnen/Kunden anzeigen sollten, damit sie die Überweisung durchführen können. Um die Abwicklung von Geldern zu gewährleisten, weisen Sie Ihre Kundinnen/Kunden an, genau die angegebenen Details zu verwenden, insbesondere den Kontonamen und gegebenenfalls die Kontonummer.

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 in Testumgebungen ungültige Banküberweisungsdaten an. Anders als beim Live-Modus sind diese ungültigen Details möglicherweise nicht immer eindeutig.

FeldBeschreibung
typeDer Typ der zu verwendenden Banküberweisung. In den USA muss der Typ us_bank_transfer sein.
referenceEin einmaliger Referenzcode zur Identifizierung der Banküberweisung. Weisen Sie Ihre Kund/innen an, diesen Code in das Referenzfeld ihrer Banküberweisung aufzunehmen.
amount_remainingDer verbleibende Betrag, der überwiesen werden muss, um die Zahlung abzuschließen. Weisen Sie Ihre Kundinnen und Kunden an, diesen Betrag zu überweisen. Dieser kann vom PaymentIntent-Betrag abweichen, wenn bereits im Kundenguthaben vorhandene Gelder auf den PaymentIntent angewendet wurden oder von Kundenseite zu wenig bezahlt wurde.
currencyDie Währung für den verbleibenden Betrag.
financial_addressesDie Liste der Finanzadressen für US-Bankkonten. Zu den Typen zählen aba und swift. Details finden Sie nachfolgend.
hosted_instructions_urlEin Link zu einer gehosteten Seite, die Ihre Kund/innen durch den Transfer leitet.

aba hash

Beispiel für einen aba-Hash:

{ "aba": { "account_number": "111222333444", "bank_name": "Wells Fargo Bank, NA", "routing_number": "444555666" }, "supported_networks": [ "ach", "domestic_wire_us" ], "type": "aba" }
FeldWerteBeschreibung
typeabaDer Typ der Finanzadresse.
supported_networks
  • ach
  • domestic_wire_us
Die Liste der Netzwerke, die von dieser Adresse unterstützt werden.
aba.account_number111222333444Die Kontonummer.
aba.routing_number444555666Die Routingnummer.
aba.bank_nameWells Fargo Bank, NADer Name der Bank.

swift-Hash

Beispiel für einen swift-Hash:

{ "swift": { "account_number": "111222333444", "bank_name": "Wells Fargo Bank, NA", "swift_code": "AAAA-BB-CC-123" }, "supported_networks": [ "swift" ], "type": "swift" }
FeldWerteBeschreibung
typeswiftDer Typ der Finanzadresse.
supported_networks
  • swift
Die Liste der Netzwerke, die von dieser Adresse unterstützt werden.
swift.account_number111222333444Die SWIFT-Kontonummer.
swift.swift_codeAAAA-BB-CC-123Der SWIFT-Code.
swift.bank_nameWells Fargo Bank, NADer Name der Bank.

Dauer der Abwicklung

Nachdem Sie Ihre Kundinnen und Kunden angewiesen haben, mit den von Ihnen bereitgestellten Informationen eine Überweisung zu veranlassen, kann es bis zu 5 Tage dauern, bis die Überweisung abgeschlossen ist. Wie lange die Abwicklung dauert, hängt von dem Banksystem ab, über die die Überweisung bei Stripe eingegangen ist:

  • ACH-Überweisungen treffen innerhalb von 1–3 Werktagen ein.
  • Inlandsüberweisungen (Fedwire) gehen am selben Tag ein (abhängig davon, ob die Überweisung vor der Annahmeschlusszeit der Bank erfolgt ist).
  • Internationale Banküberweisungen (SWIFT) treffen innerhalb 1–5 Werktagen ein.

Erfolgreiche PaymentIntent bestätigen

Die PaymentIntent verbleibt im Status requires_action, bis Gelder auf dem Bankkonto eingehen. Wenn die Gelder bereit sind, wird der PaymentIntent-Status von requires_action auf succeeded aktualisiert.

Ihr Webhook-Endpoint muss so eingerichtet werden, dass er das Ereignis payment_intent.partially_funded 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.

EreignisBeschreibungNächste Schritte
payment_intent.requires_actionWird bei der Bestätigung gesendet, wenn das Kundenguthaben für den Abgleich der PaymentIntent nicht ausreicht. Die PaymentIntent wechselt zu requires_action.Weisen Sie Ihre Kund/innen an, eine Banküberweisung mit dem amount_remaining zu senden.
payment_intent.partially_fundedEine Kundenüberweisung wurde auf die PaymentIntent angewendet. Dies reichte aber nicht aus, um die Zahlung abzuschließen. Das kann passieren, wenn (aufgrund einer irrtümlichen Unterzahlung oder wegen von der Bank erhobenen Gebühren) zu wenig überwiesen wurde oder weil ein verbliebener Kundensaldo auf diese PaymentIntent angewendet wurde. PaymentIntents, die teilweise finanziert sind, werden erst in Ihrem Konto angezeigt, wenn die Zahlung abgeschlossen ist.Weisen Sie eine weitere Kundenüberweisung mit dem neuen amount_remaining 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_intent.succeededDie Kundenzahlung 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

Ruby
require 'json' # Using Sinatra post '/webhook' do payload = request.body.read event = nil begin event = Stripe::Event.construct_from( JSON.parse(payload, symbolize_names: true)

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 in einer Sandbox zu simulieren, navigieren Sie zur Seite des Kunden/der Kundin im Dashboard. Klicken Sie unter Zahlungsmethoden auf Hinzufügen und wählen Sie Gelder aus dem Barguthaben (Nur im Test-Modus) aus.

Mit der Stripe-API

Sie können einen API-Aufruf durchführen, um eine Banküberweisung zu simulieren.

Command Line
cURL
curl https://api.stripe.com/v1/test_helpers/customers/ic_xxxxxxxxx/fund_cash_balance \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d amount=1000 \ -d currency=usd \ -d reference=REF-4242

Umgang mit vorübergehenden Verfügbarkeitsproblemen

Die folgenden Fehlercodes weisen auf vorübergehende Probleme mit der Verfügbarkeit der Zahlungsmethode hin:

CodeBeschreibungHandling
payment_method_rate_limit_exceededFü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.

OptionalZahlungsmethoden von Ihren Kund/innen erfassen

OptionalZahlungsanweisungen per E-Mail senden

War diese Seite hilfreich?
JaNein
Benötigen Sie Hilfe? Kontaktieren Sie den Kundensupport.
Nehmen Sie an unserem Programm für frühzeitigen Zugriff teil.
Schauen Sie sich unser Änderungsprotokoll an.
Fragen? Sales-Team kontaktieren.
LLM? Lesen Sie llms.txt.
Unterstützt von Markdoc