When you create a new bank account, you must specify a connected account to create it on. You can only specify connected accounts where account.controller.requirement_collection is application
(includes Custom accounts).
If the bank account’s owner has no other external account in the bank account’s currency, the new bank account will become the default for that currency. However, if the owner already has a bank account for that currency, the new account will become the default only if the default_
parameter is set to true
.
Parameters
- external_
accountobject | stringRequired Either a token, like the ones returned by Stripe.js, or a dictionary containing a user’s bank account details (with the options shown below).
- 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
.
More parameters
- default_
for_ currencyboolean
Returns
Returns the bank account object
{ "id": "ba_1NAiJy2eZvKYlo2CvChQKz5k", "object": "bank_account", "account": "acct_1032D82eZvKYlo2C", "account_holder_name": "Jane Austen", "account_holder_type": "company", "account_type": null, "bank_name": "STRIPE TEST BANK", "country": "US", "currency": "usd", "fingerprint": "1JWtPxqbdX5Gamtc", "last4": "6789", "metadata": {}, "routing_number": "110000000", "status": "new"}
Updates the metadata, account holder name, account holder type of a bank account belonging to a connected account and optionally sets it as the default for its currency. Other bank account details are not editable by design.
You can only update bank accounts when account.controller.requirement_collection is application
, which includes Custom accounts.
You can re-enable a disabled bank account by performing an update call without providing any arguments or changes.
Parameters
- default_
for_ currencyboolean When set to true, this becomes the default external account for its currency.
- 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
.
More parameters
- account_
holder_ namestring - account_
holder_ typestring - account_
typestring - documentsobject
Returns
Returns the bank account object.
{ "id": "ba_1NAiwl2eZvKYlo2CRdCLZSxO", "object": "bank_account", "account_holder_name": "Jane Austen", "account_holder_type": "company", "account_type": null, "bank_name": "STRIPE TEST BANK", "country": "US", "currency": "usd", "fingerprint": "1JWtPxqbdX5Gamtc", "last4": "6789", "metadata": { "order_id": "6735" }, "routing_number": "110000000", "status": "new", "account": "acct_1032D82eZvKYlo2C"}
By default, you can see the 10 most recent external accounts stored on a connected account directly on the object. You can also retrieve details about a specific bank account stored on the account.
Parameters
No parameters.
Returns
Returns the bank account object.
{ "id": "ba_1NAinX2eZvKYlo2CpFGcuuEG", "object": "bank_account", "account_holder_name": "Jane Austen", "account_holder_type": "company", "account_type": null, "bank_name": "STRIPE TEST BANK", "country": "US", "currency": "usd", "customer": null, "fingerprint": "1JWtPxqbdX5Gamtc", "last4": "6789", "metadata": {}, "routing_number": "110000000", "status": "new"}
You can see a list of the bank accounts that belong to a connected account. Note that the 10 most recent external accounts are always available by default on the corresponding Stripe object. If you need more than those 10, you can use this API method and the limit
and starting_
parameters to page through additional bank accounts.
Parameters
No parameters.
More parameters
- ending_
beforestring - limitinteger
- objectstring
- starting_
afterstring
Returns
Returns a list of the bank accounts stored on the account.
{ "object": "list", "url": "/v1/accounts/acct_1032D82eZvKYlo2C/external_accounts", "has_more": false, "data": [ { "id": "ba_1NB1IV2eZvKYlo2CByiLrMWv", "object": "bank_account", "account_holder_name": "Jane Austen", "account_holder_type": "company", "account_type": null, "bank_name": "STRIPE TEST BANK", "country": "US", "currency": "usd", "fingerprint": "1JWtPxqbdX5Gamtc", "last4": "6789", "metadata": {}, "routing_number": "110000000", "status": "new", "account": "acct_1032D82eZvKYlo2C" } {...} {...} ],}
You can delete destination bank accounts from a connected account where account.controller.requirement_collection is application
(includes Custom accounts).
There are restrictions for deleting a bank account with default_
set to true. You cannot delete a bank account if any of the following apply:
- The bank account’s
currency
is the same as the connected account’s default_currency. - There is another external account (card or bank account) with the same currency as the bank account.
To delete a bank account, you must first replace the default external account by setting default_
with another external account in the same currency.
Parameters
No parameters.
Returns
Returns the deleted bank account object.
{ "id": "ba_1NAz2w2eZvKYlo2CgeR2w6yU", "object": "bank_account", "deleted": true}