SetupIntents, PaymentMethods und BankAccounts verwenden
Sie können PaymentMethod
-Objekte verwenden, um Kontozugangsdaten für ein Bankkonto in den USA für die zukünftige Verwendung zu speichern. Nachdem Sie PaymentMethod
erstellt haben, können Sie dasselbe Objekt wiederholt verwenden, um Gelder sowohl auf ein Finanzkonto als auch von diesem zu bewegen. Je nach Anwendungsszenario können Sie PaymentMethod
entweder an ein Customer
-Objekt oder das Stripe-Konto anhängen.
- Hängen Sie eine
PaymentMethod
an einCustomer
-Objekt an, wenn Sie die Zahlungsmethode für eine ausgehende Zahlung an eine Drittpartei verwenden möchten. - Hängen Sie
PaymentMethod
an ein verbundenes Konto oder Plattformkonto an, wenn Sie beabsichtigen, die Zahlungsmethode für einen eingehenden oder ausgehenden Transfer unter Beteiligung eines externen Kontos zu verwenden, das zu demselben Unternehmen wie das Stripe-Konto gehört.
Notiz
Das Customer
-Objekt definiert eine Dritteinheit, die den/die Inhaber/in eines externen Bankkontos darstellt.
Wenn Sie zuvor Zahlungsdaten von Kund/innen mit Stripe unter Verwendung des BankAccounts-Objekts erfasst haben, können Sie in diesen Anfragen BankAccount
durch PaymentMethod
ersetzen. Für InboundTransfers
muss der status
-Wert von BankAccount
in diesem Fall verified
sein. Wir empfehlen, wenn möglich PaymentMethods
zu verwenden, um den vollen Funktionsumfang zu erhalten.
In einigen Fällen benachrichtigen Banken auf der Empfängerseite von ACH-Geldbewegungen Stripe über eine Änderung an Kontoinformationen (wie Kontonummer oder Bankleitzahl). Wenn wir eine solche Benachrichtigung für ein Konto erhalten, das mit einem PaymentMethod
- oder BankAccount
-Objekt verknüpft ist, aktualisieren wir das Objekt automatisch. Weitere Informationen finden Sie im Leitfaden ACH-Benachrichtigung über Änderungen.
Einen SetupIntent zur Speicherung von us_bank_account
-Daten erstellen
SetupIntents
ermöglichen es Ihnen, eine Zahlungsmethode zur Verwendung mit den Geldbewegungs-Endpoints der Stripe API einzurichten. Verwenden Sie SetupIntents
, um Kunden- oder Kontoanmeldedaten als Zahlungsmethode zu speichern und optimieren Sie diese für die Objekte, die Sie damit verwenden möchten. Wenn Sie beispielsweise ein US-Bankkonto einrichten, ist es erforderlich, das Bankkonto zu verifizieren, wenn Sie dieses externe Konto mit einem eingehenden Transfer belasten möchten. Stripe aktualisiert im Laufe des Vorgangs das Objekt SetupIntent
.
Das folgende Beispiel zeigt die Verwendung eines SetupIntent
mit einem Bankkonto, das bidirektionale Geldtransfers zulässt. Umfassende Informationen zur Einrichtung einer Zahlungsmethode für die Erstellung von Zahlungen und die Bankkontoverifizierung finden Sie im Leitfaden Details für zukünftige Zahlungen per ACH-Lastschrift speichern guide. Beim Einrichten von Zahlungsmethoden für die Verwaltung von Finanzkontogeldern mit SetupIntents
sind die folgenden Felder am relevantesten:
flow_directions
: Dieses Array definiert die Richtung der Geldflüsse für eine Zahlungsmethode mit möglichen Werten fürinbound
undoutbound
. Sie geben an, ob die Zahlungsmethode Gelder auf das und/oder aus dem Finanzkonto bei Stripe bewegen kann oder sowohl als auch. Auch eine bestehende Zahlungsmethode können Sie für die Nutzung in beide Richtungen einrichten.attach_to_self
: eine Boolesche Kennzeichnung. Sie gibt an, ob Sie diese Zahlungsmethode mit dem entsprechendenAccount
-Objekt verknüpfen möchten. Um eine kontoverknüpfte Zahlungsmethode zur Verwaltung der Geldbewegungen dieses Kontos wie eingehende und ausgehende Transfers zu erstellen, setzen Sie diesen Wert auftrue
.customer
: ID desCustomer
-Objekts, mit dem die Zahlungsmethode bei erfolgreicher Einrichtung verknüpft wird. MitCustomer
verknüpfte Zahlungsmethoden können für ausgehende Kundenzahlungen und andere Geldsendungen an Dritte und Kund/innen verwendet werden. Auch für eingehende Zahlungen sind sie in Verbindung mitPaymentIntents
in Stripe Payments geeignet. Beachten Sie dabei, dassattach_to_self
bei der Einrichtung kundenspezifischer Zahlungsmethoden auffalse
gesetzt oder freigelassen wird.
Berechtigungen
Für Zahlungsmethoden mit ‘inbound‘-Ablauf (wie InboundTransfers
) benötigen Sie eine Nutzerzustimmung. Wenn Sie die Vereinbarung (Mandate
-Objekt) im Voraus erstellen und mit der Zahlungsmethode verknüpfen, können Sie diese später belasten.
Binden Sie Geschäftsbedingungen in Ihre Website oder App ein, aus denen hervorgeht, wie Sie Abbuchungen von externen Konten vornehmen möchten und holen Sie die Zustimmung Ihrer Nutzer/innen ein. Als Mindestanforderung müssen Sie sicherstellen, dass Ihre Geschäftsbedingungen Folgendes abdecken:
- Die nutzerseitige Zustimmung zur Einleitung einer oder mehrerer Abbuchungen
- Der voraussichtliche Abbuchungstakt (einmalig oder wiederkehrend)
- So wird der Abbuchungsbetrag bestimmt
Für die Belastung externer US-Bankkonten mit eingehenden Transfers ist ein Mandat erforderlich. Für Überweisungen per Ausgangstransfer oder ausgehenden Zahlungen ist dagegen kein Mandat vorgeschrieben.
SetupIntent erstellen
Um ein SetupIntent
zu erstellen, müssen Sie entweder eine bestehende Zahlungsmethode mit dem Parameter payment_method
verwenden oder neue Zugangsdaten mittels des Inline-Parameters payment_method_data
angeben.
Verwenden Sie POST /v1/setup_intents
, um ein SetupIntent
zu erstellen.
Bei Erfolg gibt die Antwort das neu erstellte SetupIntent
-Objekt zurück.
Der SetupIntent
hat einen der folgenden Status:
STATUS | BESCHREIBUNG | NÄCHSTE SCHRITTE |
---|---|---|
succeeded | Das Bankkonto wurde sofort verifiziert oder eine Verifizierung war nicht notwendig. | Keine Aktion erforderlich. |
requires_action | Weitere Schritte erforderlich, um die Bankkontoverifizierung abzuschließen. | next_action für weitere Schritte zur Einrichtung. |
Nach erfolgreicher Bestätigung des SetupIntent
sendet Stripe per E-Mail eine Bestätigung des Mandats und der erfassten Bankkontodaten an Ihre Nutzer/innen. Die Standard-E-Mail verweist auf Stripe Payments. Wenn Sie also Stripe Treasury ohne Stripe Payments verwenden, sollten Sie die Stripe-E-Mails deaktivieren und stattdessen nutzerdefinierte Nachrichten senden.