Capabilities Framework Overview

    Learn about the capabilities framework and some of the use cases it supports.

    Government regulations require platforms to collect and verify personal and business information from their users. For global platforms, this is particularly complex because regulations vary widely across the world.

    Stripe's capabilities framework helps make sure that your users are asked to provide only required information. Each account your platform creates represents an individual or business. Instead of requesting all possible information from everyone, you request only the information required by the capabilities that are assigned to the connected account. Information requirements for a given capability can vary by factors including business type, country, and activity. The capability framework matches information requirements to each account you onboard. This approach to collecting information helps you optimize onboarding flows.

    When you complete the platform profile questionnaire, Stripe helps you with account setup by providing recommendations for your integration and enabling some capabilities for your connected accounts. You may test capabilities in test mode before completing the platform profile, but you won't be able to use them in live mode.

    You can review the specific set of requirements associated with a capability with the API. To make onboarding as easy as possible for your platform and your users, you should request only the capabilities you require. The more capabilities you request for a connected account, the more information you're required to collect.

    For example, a ride-hailing platform can use the transfers capability to specify that the platform can transfer payments to drivers. The onboarding requirements for this capability are minimal. An e-commerce platform can use the card_payments capability to enable sellers to accept card payments directly from their customers. Requirements are generally more stringent for connected accounts that process payments.

    Multiple capabilities

    Capabilities operate independently of each other and it is common to set multiple capabilities on an account.

    If both card_payments and transfers are set on an account, however, both capabilities are disabled if either capability is set to inactive.

    You can request or unrequest any capability for a connected account at any time during your connected account's lifecycle.

    For example, assume that when you onboarded a user, you requested the transfers capability so they can receive payments from your platform. Also assume that your platform is required to file an IRS FORM 1099-MISC, a U.S. federal tax reporting form, for this user. You can collect the required information for the IRS Form 1099-MISC during onboarding time or later, depending on how your platform handles tax preparation.

    Supported capabilities

    Below is a listing of capabilities that are available for use. Click on the items to get more information about them:

    Transfers

    You can transfer funds to connected accounts that have this capability. On-demand platforms often use this capability so they can pay their connected accounts. For example, a ride-hailing platform could use this capability so they can pay their drivers. The diagram below helps illustrate the flow of funds and the relationship between the customer, platform, and connected account.

    Relationship between the customer, connected account, and platform.

    Your platform's information is displayed on the customer's bank statement when you process charges this way, rather than the connected account's. This is because the charges are processed on your platform, instead of the connected accounts.

    You can use transfers with the following account and charge types:

    Account types Charge types Stripe's recommendation
    Express with destination charges

    Cross-border transfers

    Moving money across country borders introduces additional requirements. Transfers are not supported cross-border, except in the European Union (EU) where transfers between SEPA countries, other than the United Kingdom (GB), are supported.

    When a platform account is in a different country from the connected account, charges must be made directly on the connected account (using card_payments), or with the connected account specified as the settlement merchant (using on_behalf_of).

    If it's not desired that charges be made directly on the connected account, you will need to create a platform account in that same region and onboard accounts to that account. Depending on your business structure, this might require creating a legal entity in that region and additional work to onboard users to the new platform account.

    Card payments

    Connected accounts with this capability can process (their own) credit card payments and ACH payments. For example, an e-commerce platform would use this capability so each storefront can collect payments. Without triggering additional requirements, connected accounts can also receive payments from your platform if the transfers capability is added. Many e-commerce platforms use both card_payments and transfers so their connected accounts can collect payments from customers as well as receive payments from the platform. The diagram below helps illustrate the flow of funds and the relationship between the customer, platform, and connected account:

    Relationship between the customer, connected account, and platform.

    Connected accounts with the card_payments capability have their statement descriptor displayed on the customer's bank statement, not the platform's.

    You can use card_payments with the following account and charge types:

    Account types Charge types Stripe's recommendation
    Standard with direct charges

    U.S. tax reporting

    The U.S. Internal Revenue Service (IRS) requires some platforms to file 1099 forms with the IRS between January and March, and to deliver the reporting of those filings to their users by January 31. As a result, these platforms need to collect additional user information.

    If your platform has federal 1099 filing requirements and you decide to file through Stripe, you can use the tax_reporting_us_1099_misc and tax_reporting_us_1099_k capabilities to collect the necessary personal and business information from your users.

    1099-MISC form

    Many types of payments require an IRS Form 1099-MISC, such as payments to non-employees or contractors, royalties, prizes, and so forth. The tax_reporting_us_1099_misc capability helps you collect the required information for Form 1099-MISC. For example, a dog-walking platform could use the tax_reporting_us_1099_misc capability to collect the necessary information from their dog walkers for tax filing season.

    1099-K form

    A 1099-K form reports payments received from credit card transactions and third-party payment networks. Traditionally, third-party settlement organizations have used Form 1099-K to report their gross payment transactions in a calendar year. For example, an e-commerce platform would use the tax_reporting_us_1099_k capability to collect the necessary information from each storefront for tax filing season.

    Next steps

    You can expand on what you've learned here by reading these other pages:

    Was this page helpful?

    Thank you for helping improve Stripe's documentation. If you need help or have any questions, please consider contacting support.

    On this page