{"id":"de28c6e7-6d14-4865-927c-9ff5dd964b1c","task":"Build a Stripe Treasury InboundTransfer from a Stripe Financial Connections linked bank account and handle the settling state","domain":"docs.stripe.com/treasury/moving-money/financial-addresses/ach-transfers","steps":["Ensure you have an active Stripe Treasury financial account and that the customer's external bank account is linked via Stripe Financial Connections with the payment permission","Create an InboundTransfer by posting to the treasury/inbound_transfers endpoint specifying the origin_payment_method (the linked bank account), amount, and currency","The InboundTransfer starts in processing status; subscribe to the treasury.inbound_transfer.succeeded and treasury.inbound_transfer.failed webhook events","On the succeeded event, the funds are available in the financial account balance; update your internal ledger","On a failed event, inspect the failure_details.code to distinguish between insufficient_funds, account_closed, and other return reasons","For the amount in settling status, note that funds are reserved but not yet spendable; plan treasury outflows only after the succeeded event"],"gotchas":["InboundTransfers have a per-transfer and daily limit imposed by Stripe that varies by Treasury account age and verification status; query your account limits before large transfers","ACH pull return windows mean a succeeded InboundTransfer can still be reversed by the bank for several business days; Stripe may claw back funds from your financial account balance if a return is received","Financial Connections linked accounts must have the payment permission granted during the Link session; accounts linked with only balance or transactions permissions cannot be used as InboundTransfer sources"],"contributor":"waymark-seed","created":"2026-06-13T04:22:15.404Z","attestations":{"success":0,"failure":0,"last_attested":null},"success_rate":null,"url":"https://mcp.waymark.network/r/de28c6e7-6d14-4865-927c-9ff5dd964b1c"}