Accounts
This is an object representing a Stripe account. You can retrieve it to see properties on the account like its current requirements or if the account is enabled to make live charges or receive payouts.
For accounts where controller.requirement_collection is application
, which includes Custom accounts, the properties below are always returned.
For accounts where controller.requirement_collection is stripe
, which includes Standard and Express accounts, some properties are only returned until you create an Account Link or Account Session to start Connect Onboarding. Learn about the differences between accounts.
The Account object
Attributes
- idstring
Unique identifier for the object.
- business_
typenullable enum The business type. After you create an Account Link or Account Session, this property is only returned for accounts where controller.requirement_collection is
application
, which includes Custom accounts. - capabilitiesnullable object
A hash containing the set of capabilities that was requested for this account and their associated states. Keys are names of capabilities. You can see the full list here. Values may be
active
,inactive
, orpending
. - companynullable object
Information about the company or business. This property is available for any
business_type
. After you create an Account Link or Account Session, this property is only returned for accounts where controller.requirement_collection isapplication
, which includes Custom accounts. - countrystring
The account’s country.
- emailnullable string
An email address associated with the account. It’s not used for authentication and Stripe doesn’t market to this field without explicit approval from the platform.
- individualnullable object
Information about the person represented by the account. This property is null unless
business_type
is set toindividual
. After you create an Account Link or Account Session, this property is only returned for accounts where controller.requirement_collection isapplication
, which includes Custom accounts. - metadatanullable object
Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format.
- requirementsnullable object
Information about the requirements for the account, including what information needs to be collected, and by when. You can resolve most requirements programatically. For some, you must complete a form or challenge through a Stripe interface. Learn more about handling requirements.
- tos_
acceptanceobject Details on the acceptance of the Stripe Services Agreement by the account representative.
- typeenum
The Stripe account type. Can be
standard
,express
,custom
, ornone
.
More attributes
- objectstring
- business_
profilenullable object - charges_
enabledboolean - controllernullable object
- createdtimestamp
- default_
currencystring - details_
submittedboolean - external_
accountsobject - future_
requirementsnullable object - payouts_
enabledboolean - settingsnullable object
Create an account
With Connect, you can create Stripe accounts for your users. To do this, you’ll first need to register your platform.
If you’ve already collected information for your connected accounts, you can prefill that information when creating the account. Connect Onboarding won’t ask for the prefilled information during account onboarding. You can prefill any information on the account.
Parameters
- business_
typeenum The business type. Once you create an Account Link or Account Session, this property can only be updated for accounts where controller.requirement_collection is
application
, which includes Custom accounts. - capabilitiesobjectRequired conditionally
Each key of the dictionary represents a capability, and each capability maps to its settings (for example, whether it has been requested or not). Each capability is inactive until you have provided its specific requirements and Stripe has verified them. An account might have some of its requested capabilities be active and some be inactive.
Required when account.controller.stripe_dashboard.type is
none
, which includes Custom accounts. - companyobject
Information about the company or business. This field is available for any
business_type
. Once you create an Account Link or Account Session, this property can only be updated for accounts where controller.requirement_collection isapplication
, which includes Custom accounts. - controllerobject
A hash of configuration describing the account controller’s attributes.
- countrystringdefault is your own country
The country in which the account holder resides, or in which the business is legally established. This should be an ISO 3166-1 alpha-2 country code. For example, if you are in the United States and the business for which you’re creating an account is legally represented in Canada, you would use
CA
as the country for the account being created. Available countries include Stripe’s global markets as well as countries where cross-border payouts are supported. - emailstring
The email address of the account holder. This is only to make the account easier to identify to you. If controller.requirement_collection is
application
, which includes Custom accounts, Stripe doesn’t email the account without your consent. - individualobject
Information about the person represented by the account. This field is null unless
business_type
is set toindividual
. Once you create an Account Link or Account Session, this property can only be updated for accounts where controller.requirement_collection isapplication
, which includes Custom accounts. - metadataobject
Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to
metadata
. - tos_
acceptanceobject Details on the account’s acceptance of the Stripe Services Agreement. This property can only be updated for accounts where controller.requirement_collection is
application
, which includes Custom accounts. - typeenum
The type of Stripe account to create. May be one of
custom
,express
orstandard
.
More parameters
- account_
tokenstring - business_
profileobject - default_
currencyenum - documentsobject
- external_
accountstring - settingsobject
Returns
Returns an Account
object if the call succeeds.
Update an account
Updates a connected account by setting the values of the parameters passed. Any parameters not provided are left unchanged.
For accounts where controller.requirement_collection is application
, which includes Custom accounts, you can update any information on the account.
For accounts where controller.requirement_collection is stripe
, which includes Standard and Express accounts, you can update all information until you create an Account Link or Account Session to start Connect onboarding, after which some properties can no longer be updated.
To update your own account, use the Dashboard. Refer to our Connect documentation to learn more about updating accounts.
Parameters
- business_
typeenum The business type. Once you create an Account Link or Account Session, this property can only be updated for accounts where controller.requirement_collection is
application
, which includes Custom accounts. - capabilitiesobject
Each key of the dictionary represents a capability, and each capability maps to its settings (for example, whether it has been requested or not). Each capability is inactive until you have provided its specific requirements and Stripe has verified them. An account might have some of its requested capabilities be active and some be inactive.
Required when account.controller.stripe_dashboard.type is
none
, which includes Custom accounts. - companyobject
Information about the company or business. This field is available for any
business_type
. Once you create an Account Link or Account Session, this property can only be updated for accounts where controller.requirement_collection isapplication
, which includes Custom accounts. - emailstring
The email address of the account holder. This is only to make the account easier to identify to you. If controller.requirement_collection is
application
, which includes Custom accounts, Stripe doesn’t email the account without your consent. - individualobject
Information about the person represented by the account. This field is null unless
business_type
is set toindividual
. Once you create an Account Link or Account Session, this property can only be updated for accounts where controller.requirement_collection isapplication
, which includes Custom accounts. - metadataobject
Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to
metadata
. - tos_
acceptanceobject Details on the account’s acceptance of the Stripe Services Agreement. This property can only be updated for accounts where controller.requirement_collection is
application
, which includes Custom accounts.
More parameters
- account_
tokenstring - business_
profileobject - default_
currencyenum - documentsobject
- external_
accountstring - settingsobject