Complete a Financial Connections Session with at least 'payment_method' in the permissions array to obtain a linked financial_connections.account ID
Create a PaymentMethod of type 'us_bank_account' server-side, passing us_bank_account.financial_connections_account as the Financial Connections account ID
Attach the PaymentMethod to a Stripe Customer via POST /v1/payment_methods/:id/attach with customer ID
Create a PaymentIntent with payment_method_types=['us_bank_account'], the PaymentMethod ID, and mandate_data.customer_acceptance to satisfy ACH authorization requirements
Confirm the PaymentIntent; because verification was completed via Financial Connections, microdeposit verification is not required
Store the PaymentMethod ID for future off-session reuse
Known gotchas
The Financial Connections account must have status 'active' and the session must have included 'payment_method' permission; using an account from a session without that permission returns an error
Even with instant verification via Financial Connections, you must still display mandate language to the customer before confirming the PaymentIntent; Stripe does not display it on your behalf in the direct API flow
PaymentMethods created from Financial Connections accounts are reusable for future payments only after being saved to a Customer object
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp