# SetupIntents, PaymentMethods und BankAccounts verwenden Richten Sie Geldbewegungen mit Treasury für Plattformen ein. > #### Kompatibilität mit der Accounts v2 API > > Die Accounts v2 API unterstützt keine Treasury-Workflows. Wenn Sie Konten mit Accounts v2 erstellt haben, können Sie Accounts v1 verwenden, um die Funktionen `treasury` and `card_issuing` zu verwalten. Weitere Informationen finden Sie unter [Accounts als Kundinnen und Kunden verwenden](https://docs.stripe.com/accounts-v2/use-accounts-as-customers.md). Sie können [PaymentMethod](https://docs.stripe.com/payments/payment-methods.md#payment-method-object)-Objekte verwenden, um Kontozugangsdaten für ein US-Bankkonto für die zukünftige Verwendung zu speichern. Nachdem Sie die `PaymentMethod` erstellt haben, können Sie dasselbe Objekt wiederholt verwenden, um Gelder sowohl auf ein Finanzkonto einzuzahlen als auch von diesem auszuzahlen. Je nach Anwendungsszenario können Sie die `PaymentMethod` entweder an ein [Customer](https://docs.stripe.com/api/customers.md)-Objekt oder das Stripe-Konto anhängen. - Hängen Sie eine `PaymentMethod` an ein `Customer`-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. > Das `Customer`-Objekt definiert eine Dritteinheit, die den/die Inhaber/in eines externen Bankkontos darstellt. Wenn Sie zuvor Zahlungsdaten von Kundinnen/Kunden mit Stripe unter Verwendung des [BankAccounts](https://docs.stripe.com/ach-deprecated.md)-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 die Banken, die ACH-Geldbewegungen empfangen, Stripe, dass sich Kontoinformationen (wie Kontonummer oder Routingnummer) geändert haben. Wenn wir eine Benachrichtigung für ein Konto erhalten, das mit einem `PaymentMethod`- oder `BankAccount`-Objekt verbunden ist, aktualisieren wir das Objekt automatisch. Weitere Informationen finden Sie unter [Umgang mit ACH-NOC und SEC](https://docs.stripe.com/treasury/connect/moving-money/noc-sec-handling.md). ## Einen SetupIntent zum Speichern von us_bank_account-Daten erstellen Mit [SetupIntents](https://docs.stripe.com/payments/setup-intents.md) können Sie Zahlungsmethoden zur Verwendung mit den Endpoints für Geldübertragungen der Stripe API einrichten. 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 Geldtransfers in beide Richtungen 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](https://docs.stripe.com/payments/ach-direct-debit/set-up-payment.md). Beim Einrichten von Zahlungsmethoden für die Verwaltung von Finanzkontogeldern mit `SetupIntents` sind die folgenden Felder am relevantesten: - [flow_directions](https://docs.stripe.com/api/setup_intents/create.md#create_setup_intent-flow_directions): Dieses Array definiert die Richtung der Geldübertragungen für eine Zahlungsmethode. Die möglichen Werte sind `inbound` und `outbound`. Sie geben an, ob die Zahlungsmethode Gelder auf das Finanzkonto bei Stripe überträgt oder von diesem versendet oder beides. Sie können auch eine bestehende Zahlungsmethode für die Nutzung in beide Richtungen einrichten. - [attach_to_self](https://docs.stripe.com/api/setup_intents/create.md#create_setup_intent-attach_to_self): Eine boolesche Kennzeichnung, die angibt, ob Sie diese Zahlungsmethode mit dem entsprechenden `Account`-Objekt verknüpfen möchten. Um eine mit einem Konto verknüpfte Zahlungsmethode zur Verwaltung der Geldübertragungen dieses Kontos wie eingehende und ausgehende Transfers zu erstellen, setzen Sie diesen Wert auf `true`. - [customer](https://docs.stripe.com/api/setup_intents/create.md#create_setup_intent-confirm): ID des `Customer`-Objekts, mit dem die Zahlungsmethode bei erfolgreicher Einrichtung verknüpft wird. Mit `Customer` verknüpfte Zahlungsmethoden können für ausgehende Zahlungen und andere Geldsendungen an Dritte und Kundinnen/Kunden verwendet werden. Auch für eingehende Zahlungen sind sie in Verbindung mit `PaymentIntents` in Stripe Payments geeignet. Beachten Sie dabei, dass das Attribut `attach_to_self` bei der Einrichtung kundenspezifischer Zahlungsmethoden auf „false“ gesetzt oder freigelassen werden muss. ### Berechtigungen Für Zahlungsmethoden mit ‘inbound‘-Ablauf (wie `InboundTransfers`) benötigen Sie die [Zustimmung der Kontoinhaber/innen](https://docs.stripe.com/payments/setup-intents.md#mandates). 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 verbundenen Konten ein. Als Mindestanforderung müssen Sie sicherstellen, dass Ihre Geschäftsbedingungen Folgendes abdecken: - Die Zustimmung des verbundenen Kontos 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 ausgehende Überweisungen oder Zahlungen ist hingegen 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. ```curl curl https://api.stripe.com/v1/setup_intents \ -u "<>:" \ -H "Stripe-Account: {{CONNECTEDACCOUNT_ID}}" \ -d "payment_method={{PAYMENTMETHOD_ID}}" ``` Bei Erfolg gibt die Antwort das neu erstellte `SetupIntent`-Objekt zurück. #### JSON (mit Kommentar) ```json { // ID of the Customer to attach the resulting PaymentMethod to "customer": "{{CUSTOMER_ID}}", "attach_to_self": false, // Configure what direction of funds flows this PaymentMethod will support. "flow_directions": ["inbound", "outbound"], // US Bank Account credentials "payment_method_types": ["us_bank_account"], "payment_method_data": { "type": "us_bank_account", "us_bank_account": { "routing_number": "12341234", "account_number": "0123456789", "account_holder_type": "individual" | "company" }, "billing_details": { // `name` must be specified for `us_bank_account` type "name": "Jenny Rosen", "phone": null | "{{String}}", "email": null | "{{String}}", "address": null | { "line1": null | "{{String}}", "line2": null | "{{String}}", "city": null | "{{String}}", "state": null | "{{String}}", "postal_code": null | "{{String}}", "country": null | "{{String}}" } } }, // For `inbound` flows, we need to verify the bank account "payment_method_options": { "us_bank_account": { "verification_method": "microdeposits" } }, // For `inbound` flows with us_bank_account, we need mandate information "mandate_data": { "customer_acceptance": { "type": "online", "online": { "ip_address": "123.123.123.123", "user_agent": "curl/1.2.3" } } }, "confirm": true } ``` 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 der `SetupIntent` sendet Stripe eine E-Mail-Bestätigung des Mandats und der erfassten Bankkontodaten an Ihr verbundenes Konto. Die Standard-E-Mail-Adresse verweist auf Stripe Payments. Wenn Sie also Stripe Treasury for platforms ohne Stripe Payments verwenden, sollten Sie Stripe-E-Mails deaktivieren und stattdessen [benutzerdefinierte Nachrichten](https://docs.stripe.com/payments/ach-direct-debit.md#mandate-and-microdeposit-emails) senden.