Account capabilities
Learn about capabilities you can enable for accounts and the requirements you must satisfy to use them.
The capabilities you request for a connected account determine the information you need to collect for that account. To reduce onboarding effort, only request the capabilities you need. The more capabilities you request, the more information you must collect.
You can start by completing the platform profile to understand which capabilities might be appropriate for your platform.
Note
For some capabilities, requesting them enables them permanently. Attempting to remove or unrequest a permanent capability returns an error.
After creating an account, you can request additional capabilities and remove existing non-permanent capabilities. For connected accounts that other platforms control, you can’t unrequest capabilities.
Supported capabilities
Following is a list of available capabilities. Click an item to expand or collapse it.
Transfers
Card payments
US tax reporting
Payment methods
India international payments
Multiple capabilities
Requesting multiple capabilities for a connected account is common, but involves the following considerations:
- Capabilities operate independently of each other.
- If a connected account has both
card_
andpayments transfers
, and thestatus
of either one isinactive
, then both capabilities are disabled. - You can request or unrequest a capability for a connected account at any time during the account’s lifecycle.
Capabilities also allow you to collect information for multiple purposes at the same time. For example, you can collect both required tax information and the information required for a requested capability. If you’re onboarding a connected account with the transfers
capability and they’re required to file an IRS form 1099-MISC (a US federal tax reporting form), you can collect information for both at the same time.
Create an account with capabilities
Capabilities are set on the Account object. To get the list of available capabilities for an Account, use the list_capabilities endpoint.
Account creation and requesting capabilities differ for connected accounts in different configurations.
- For connected accounts with access to the full Stripe Dashboard, including Standard accounts, some capabilities are requested automatically, based on their country. You can also request other capabilities for them.
- For connected accounts with access to the Express Dashboard, including Express accounts, you can either request their capabilities or use the onboarding configuration settings to automate capability requests.
- For connected accounts without access to a Stripe-hosted dashboard, including Custom accounts, you must request their capabilities.
Information requirements vary depending on the capability, but they often relate to identity verification or other information specific to a payment type.
When your connected account is successfully created, you can retrieve a list of its requirements:
In the response, the requirements
hash specifies the required information. The values for payouts_
and charges_
indicate whether payouts and charges are enabled for the account.
Capabilities for existing connected accounts
The following sections describe how to preview information requirements or manage capabilities for existing connected accounts using the Capabilities API.
Preview information requirements
You can preview what information is needed from your connected account for a particular capability either before or after that capability has been requested.
When you request capabilities, account.
webhooks fire and the account’s requirements can change. To enable a requirement faster and avoid disabling the account, preview the requirements and collect any required information before requesting the capability.
The following example lists the requirements for the card_
capability for a specific account.
In the response, check the requirements
hash to see what information is needed:
{ "id": "card_payments", "object": "capability", "account":
, "requested": false, "requested_at": null, "requirements": { "past_due": [], "currently_due": ["company.tax_id", ...], "eventually_due": [...], "disabled_reason": ..., "current_deadline": ..., }, "status": "unrequested" }"{{CONNECTED_ACCOUNT_ID}}"
The value for status
identifies whether the capability has been requested. When the value is requested, the account’s requirements are active.
In addition to previewing a capability’s requirements before requesting it, you can use the same endpoint to view a capability’s current requirements. That can help you stay informed when requirements change.
Request and unrequest capabilities
To request a capability for an account, set the capability’s requested
value to true
by updating the account. If the request succeeds, the API returns requested: true
in the response.
To unrequest a capability for an account, set the capability’s requested
value to false
by updating the account. If the capability can’t be removed, the call returns an error. If the call succeeds, the API returns requested: false
in the response.
You can also request and remove an account’s capabilities from the Dashboard. If a capability can’t be removed, its Remove button is disabled.
The example below requests the transfers
capability for a specific connected account:
The example below requests multiple capabilities for a specific connected account: