Public preview
Connected account financial accounts Public preview
Request money_manager capabilities and collect onboarding requirements for your connected accounts.
To use Treasury for platforms, you must have a Stripe Connect integration where your platform account provides Stripe functionality to its connected accounts. Each connected account exists as an Account object in the Accounts v2 API and its access to Stripe functionality is defined by its configuration capabilities, such as merchant, customer, recipient, or money_manager.
- The merchant configuration allows the connected account to accept payments from its own customers.
- The customer configuration allows the connected account to pay your platform or one of your merchant-configured connected accounts.
- The recipient configuration allows the connected account to receive payouts from you or one of your merchant-configured connected accounts.
- The money_manager configuration allows the connected account to use financial accounts to manage their Stripe balance.
- The card _ creator configuration allows the connected account to create and issue cards to users.
As the platform, you can provision any combination of configuration capabilities to your connected accounts. Different capabilities have different onboarding requirements. Whether you create or update connected accounts to request the capabilities needed for Treasury for platforms, you must collect required information from the connected account before they can use the corresponding functionality.
To enable Treasury for platforms for an existing v1 Account, you can specify the v1 Account ID in a v2 endpoint.
Eligibility
When you request capabilities associated with the money_manager configuration for a connected account, Stripe reviews the account’s provided URL or product description to make sure it complies with our requirements and those of our partners.
Some existing connected accounts might produce an inconclusive review because of insufficient information. For example, connected accounts with multiple owners with ownership stake exceeding 25% might have to provide additional information about each owner.
To reduce the chance of inconclusive reviews, make sure that your connected account onboarding process collects valid URLs and comprehensive product descriptions.
Connected accounts must meet the following requirements to be supported for Treasury for platforms:
- The connected account must be based in a supported region.
- The account must provide either a valid, publicly accessible URL or a product description of at least 10 characters (we recommend more than 30 characters to minimize review delays).
- The account representative must be based in the same country as the account.
Create a new connected account
Begin in a sandbox with access to Treasury for platforms and create a v2 connected account that you use to request capabilities to:
- Create financial accounts that can hold funds ( money _ manager configuration)
- Create a financial address to fund the financial account ( money _ manager configuration)
- Receive funds transfers (v1 transfers) from platform accounts ( recipient configuration)
- Process card payments ( merchant configuration)
To enable Treasury for platforms for a v1 Account, you can specify a v1 Account in a v2 endpoint.
The account must not use a Stripe-hosted dashboard and you must be responsible for requirements collection.
Command Line
cURL
The response includes the connected account ID.
{
"id": "acct_123",
"object": "v2.core.account",
"applied_configurations": [
"merchant",
"money_manager"
],
"configuration": {
"customer": null,
"merchant": null,
"recipient": null,
"money_manager": {
"capabilities": {
"received_credits": {
"bank_accounts": {
"requested": true,
"status": "restricted",
"status_details": [
{
"code": "requirements_past_due",
"resolution": "provide_info"
}
]
}
},
Update a connected account to request a new capability
If you already have an eligible connected account, you can request to add money_manager capabilities:
Command Line
cURL
How capabilities work
To activate a capability, you must first request it by setting its requested property to true. This triggers collection of the capability’s requirements, which is handled by your platform. Requirements can involve identity and compliance documentation, and risk data. When Stripe verifies that a capability’s requirements are fulfilled, it becomes active.
Available capabilities
| Capability | Description | Configuration |
|---|---|---|
card_payments | Allows the merchant to accept card payments. | merchant |
received_credits.bank_accounts | Allows you to create a Financial Address for financial accounts to receive inbound credits. | money_manager |
business_storage.inbound.{currency} / business_storage.outbound.{currency} | List of the currencies which can be held in the financial accounts of the connected account. You must request both inbound and outbound for each currency. | money_manager |
outbound_payments.bank_accounts | Send funds from a financial account to a bank account owned by a different entity. | money_manager |
outbound_payments.financial_accounts | Send funds from a financial account to a financial account owned by a different entity. | money_manager |
outbound_transfers.bank_accounts | Transfer funds from a financial account to a bank account owned by the same entity. | money_manager |
outbound_transfers.financial_accounts | Transfer funds from a financial account to another financial account owned by the same entity. | money_manager |
inbound_transfers.bank_accounts | Pull funds into a financial account from an external bank account owned by the same entity. | money_manager |
received_debits.bank_accounts | Allow a financial account to be debited from an external bank account. | money_manager |
stripe_balance | Allows a recipient to manage their Stripe balance. | recipient |
stripe_transfers | Allows a recipient to receive transfers into their Stripe balance. | recipient |
commercial | Allows creation of issuing cards for commercial purchases. | card_creator |
consumer | Allows creation of issuing cards for consumer purchases. | card_creator |
Requirements
Requested capabilities sometimes trigger additional onboarding requirements beyond those needed for accepting payments as a merchant or receiving payouts as a recipient. Each requirement imposed on a connected account includes the following information:
- The type of information needed to fulfill the requirement.
- Why Stripe needs the information.
- Whether the requirement is overdue (the deadline can be a date or some other type of threshold, such as a certain volume of payments).
- Consequences that Stripe imposes (such as suspending certain functionality or stopping payouts from the Stripe balance for the account) at the deadline if we can’t verify the information.
- Who must take action.
Individuals, sole proprietorships or companies (LLCs, corporations, non-profits, and so on) using Treasury for platforms with money_manager capabilities must provide the following information:
Entity details
- Business names (customer facing and legal)
- Legal entity type
- Business address
- Business phone number
- Product or service description
- Industry or Merchant category code
- Treasury for platforms terms of service acceptance
- Stripe terms of service acceptance
Owner details
- Legal name
- Date of birth
- Residential address
- SSN or TIN (US only)
Check capability status
Check for one of the following status results in the API or Dashboard:
- Open the Connected accounts page in the Dashboard.
- Use the filters to show the accounts that you requested financial account capabilities for.
- Click an account to view its details page and its capabilities status:
- Active : The connected account has no outstanding requirements and can access Treasury for platforms features.
- Pending : We’re still evaluating the connected account and it can’t access Treasury for platforms features yet.
- Inactive : The connected account has outstanding requirements for financial account capabilities and can’t access Treasury for platforms features yet.
- Restricted : The connected account doesn’t meet the requirements and can’t access Treasury for platforms features.
- Address outstanding Actions required items for inactive capabilities or to appeal a prohibited or restricted business designation. You can do so by providing additional business details about the account or confirming that the account no longer offers the prohibited products or services. If Stripe upholds the determination after your appeal, the capabilities remain restricted .
URL errors
If the URL you provide for the connected account returns one of the following errors, resolve the issue before requesting capabilities:
- invalid _ url _ format : Update the URL to a valid format (for example, . com or . org ).
- invalid _ url _ denylisted : The URL is on a denylist. Contact Treasury support .
- invalid _ url _ website _ inaccessible : The URL might require a password. The connected account’s website must be publicly accessible.
- invalid _ url _ website _ incomplete : The URL returns a 404 error.
- invalid _ url _ website _ other : Contact Treasury support .
If the URL continues to return errors or you can’t resolve the issue, submit a product description instead.
Onboard the connected account
After you create an account, onboard its seller or service provider by:
- Retrieving the requirements populated at account creation.
- Providing a form to collect the information required from your connected account.
- Updating the Account with the collected information.
Alternatively, you can create an account link specifying the type as the merchant and money_manager configurations, then send the returned URL to your connected account so they can provide the required information in a Stripe-hosted interface.
Specify payout methods for recipient accounts
For recipient-configured connected accounts, create a PayoutMethod to make recurring outbound payments using the recipient’s preferred credentials.
Hosted onboarding collects a recipient’s payout method, but you can add additional payout methods or complete country-specific actions, if needed.
- Use the OutboundSetupIntents API to create payout methods globally. OutboundSetupIntent (OSI) supports creating bank account payout methods in more than 50 countries, and returns a payout _ method that you can use for payments and transfers. OSI can also retrieve next _ action requirements (for example, Confirmation of Payee in GB).
- Use country-specific endpoints to add features to the payout method that OSI doesn’t capture, such as GB Bank Accounts to initiate or acknowledge GB Confirmation of Payee.
Use the Stripe-Context header with ``
{{the related setting}}
/ {{the related setting}} to identify the connected account you’re making the request for.
Add payout methods with the API
You can add payout methods that collect the credentials required for different countries.
Create a GB bank account and initiate Confirmation of Payee (CoP) using the GB Bank Accounts API.
Command Line
Select a language
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
{
"id": "{{PAYOUT_METHOD_ID}}",
"object": "v2.core.vault.gb_bank_account",
"bank_name": "Test Bank",
"last4": "2345",
"confirmation_of_payee": { "status": "awaiting_acknowledgement" }
}
Check CoP status and acknowledge if needed.
Command Line
Select a language
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
Command Line
Select a language
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
List payout methods
You can list all payout methods for a connected account using the Payout Methods v2 API. Review properties such as available_payout_speeds, enabled_delivery_options, and usage_status to help you determine how to use them.
Command Line
Select a language
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
Webhooks
When the status of requested capabilities change for a connected account, you receive a v2.core.account[configuration.money_manager].capability_status_updated webhook confirming the change:
