Stripe: Financial connections schemas
13 Stripe schemas with complete fields and constraints.
← Financial connections operations · All schemas
Retrieve a Transaction — financial Connections get Financial Connections Transactions Transaction — response body
| Field | Type | Presence | Description and constraints |
|---|---|---|---|
$ | object | Root | A Transaction represents a real transaction that affects a Financial Connections Account balance. |
account | string | Required within parent | The ID of the Financial Connections Account this transaction belongs to. Maximum length: 5000 |
amount | JSON | Required within parent | |
amount (anyOf 1) | integer | Alternative | The amount of this transaction, in cents (or local equivalent). |
amount (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
currency | string | Required within parent | Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://stripe.com/docs/currencies). Maximum length: 5000 |
description | string | Required within parent | The description of this transaction. Maximum length: 5000 |
id | string | Required within parent | Unique identifier for the object. Maximum length: 5000 |
livemode | boolean | Required within parent | If the object exists in live mode, the value is `true`. If the object exists in test mode, the value is `false`. |
object | string | Required within parent | String representing the object's type. Objects of the same type share the same value. Known values: financial_connections.transaction |
status | string | Required within parent | The status of the transaction. Known values: pending, posted, void |
status_transitions | Model | Required within parent | Expand Retrieve a Transaction — financial Connections get Financial Connections Transactions Transaction — response body — status transitions |
transacted_at | JSON | Required within parent | |
transacted_at (anyOf 1) | integer | Alternative | Time at which the transaction was transacted. Measured in seconds since the Unix epoch. Format: unix-time |
transacted_at (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
transaction_refresh | string | Required within parent | The token of the transaction refresh that last updated or created this transaction. Maximum length: 5000 |
updated | JSON | Required within parent | |
updated (anyOf 1) | integer | Alternative | Time at which the object was last updated. Measured in seconds since the Unix epoch. Format: unix-time |
updated (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
Referenced models: Retrieve a Transaction — financial Connections get Financial Connections Transactions Transaction — response body — status transitions
Retrieve a Transaction — financial Connections get Financial Connections Transactions Transaction — response body — status transitions
| Field | Type | Presence | Description and constraints |
|---|---|---|---|
$ | object | Root | |
posted_at | JSON | Optional | |
posted_at (anyOf 1) | JSON | Alternative | |
posted_at (anyOf 1) (anyOf 1) | integer | Alternative | Time at which this transaction posted. Measured in seconds since the Unix epoch. Format: unix-time |
posted_at (anyOf 1) (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
posted_at (anyOf 2) | null | Alternative | |
void_at | JSON | Optional | |
void_at (anyOf 1) | JSON | Alternative | |
void_at (anyOf 1) (anyOf 1) | integer | Alternative | Time at which this transaction was voided. Measured in seconds since the Unix epoch. Format: unix-time |
void_at (anyOf 1) (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
void_at (anyOf 2) | null | Alternative |
Subscribe to data refreshes for an Account — response body
| Field | Type | Presence | Description and constraints |
|---|---|---|---|
$ | object | Root | A Financial Connections Account represents an account that exists outside of Stripe, to which you have been granted some degree of access. |
account_holder | JSON | Optional | |
account_holder (anyOf 1) | JSON | Alternative | The account holder that this account belongs to. |
account_holder (anyOf 1) (anyOf 1) | Model | Alternative | Expand Create a Session — linkAccountSessions.postLinkAccountSessions — response body — account_holder / value / type: account, customer |
account_holder (anyOf 2) | null | Alternative | |
account_numbers | JSON | Optional | |
account_numbers (anyOf 1) | array | Alternative | Details about the account numbers. |
account_numbers (anyOf 1)[] | Model | Each item | Expand Subscribe to data refreshes for an Account — response body — account numbers Details about the account numbers item |
account_numbers (anyOf 2) | null | Alternative | |
balance | JSON | Optional | |
balance (anyOf 1) | JSON | Alternative | The most recent information about the account's balance. |
balance (anyOf 1) (anyOf 1) | Model | Alternative | Expand Subscribe to data refreshes for an Account — response body — balance / value / type: cash, credit |
balance (anyOf 2) | null | Alternative | |
balance_refresh | JSON | Optional | |
balance_refresh (anyOf 1) | JSON | Alternative | The state of the most recent attempt to refresh the account balance. |
balance_refresh (anyOf 1) (anyOf 1) | Model | Alternative | Expand Subscribe to data refreshes for an Account — response body — balance_refresh / value / status: failed, pending, succeeded |
balance_refresh (anyOf 2) | null | Alternative | |
category | string | Required within parent | The type of the account. Account category is further divided in `subcategory`. Known values: cash, credit, investment, other |
created | JSON | Required within parent | |
created (anyOf 1) | integer | Alternative | Time at which the object was created. Measured in seconds since the Unix epoch. Format: unix-time |
created (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
display_name | JSON | Optional | |
display_name (anyOf 1) | string | Alternative | A human-readable name that has been assigned to this account, either by the account holder or by the institution. Maximum length: 5000 |
display_name (anyOf 2) | null | Alternative | |
id | string | Required within parent | Unique identifier for the object. Maximum length: 5000 |
institution_name | string | Required within parent | The name of the institution that holds this account. Maximum length: 5000 |
last4 | JSON | Optional | |
last4 (anyOf 1) | string | Alternative | The last 4 digits of the account number. If present, this will be 4 numeric characters. Maximum length: 5000 |
last4 (anyOf 2) | null | Alternative | |
livemode | boolean | Required within parent | If the object exists in live mode, the value is `true`. If the object exists in test mode, the value is `false`. |
object | string | Required within parent | String representing the object's type. Objects of the same type share the same value. Known values: financial_connections.account |
ownership | JSON | Optional | |
ownership (anyOf 1) | JSON | Alternative | The most recent information about the account's owners. |
ownership (anyOf 1) (anyOf 1) | string | Alternative | Maximum length: 5000 |
ownership (anyOf 1) (anyOf 2) | Model | Alternative | Expand Subscribe to data refreshes for an Account — response body — ownership / value / object: financial connections account ownership |
ownership (anyOf 2) | null | Alternative | |
ownership_refresh | JSON | Optional | |
ownership_refresh (anyOf 1) | JSON | Alternative | The state of the most recent attempt to refresh the account owners. |
ownership_refresh (anyOf 1) (anyOf 1) | Model | Alternative | Expand Subscribe to data refreshes for an Account — response body — ownership_refresh / value / status: failed, pending, succeeded |
ownership_refresh (anyOf 2) | null | Alternative | |
permissions | JSON | Optional | |
permissions (anyOf 1) | array | Alternative | The list of permissions granted by this account. |
permissions (anyOf 1)[] | string | Each item | Known values: balances, ownership, payment_method, transactions |
permissions (anyOf 2) | null | Alternative | |
status | string | Required within parent | The status of the link to the account. Known values: active, disconnected, inactive |
status_details | Model | Optional | Expand Subscribe to data refreshes for an Account — response body — status details |
subcategory | string | Required within parent | If `category` is `cash`, one of: - `checking` - `savings` - `other` If `category` is `credit`, one of: - `mortgage` - `line_of_credit` - `credit_card` - `other` If `category` is `investment` or `other`, this will be `other`. Known values: checking, credit_card, line_of_credit, mortgage, other, savings |
subscriptions | JSON | Optional | |
subscriptions (anyOf 1) | array | Alternative | The list of data refresh subscriptions requested on this account. |
subscriptions (anyOf 1)[] | string | Each item | Known values: transactions |
subscriptions (anyOf 2) | null | Alternative | |
supported_payment_method_types | array | Required within parent | The [PaymentMethod type](https://docs.stripe.com/api/payment_methods/object#payment_method_object-type)(s) that can be created from this account. |
supported_payment_method_types[] | string | Each item | Known values: link, us_bank_account |
transaction_refresh | JSON | Optional | |
transaction_refresh (anyOf 1) | JSON | Alternative | The state of the most recent attempt to refresh the account transactions. |
transaction_refresh (anyOf 1) (anyOf 1) | Model | Alternative | Expand Subscribe to data refreshes for an Account — response body — transaction_refresh / value / status: failed, pending, succeeded |
transaction_refresh (anyOf 2) | null | Alternative |
Referenced models: Subscribe to data refreshes for an Account — response body — account numbers Details about the account numbers item, Subscribe to data refreshes for an Account — response body — status details, Create a Session — linkAccountSessions.postLinkAccountSessions — response body — account_holder / value / type: account, customer, Subscribe to data refreshes for an Account — response body — balance / value / type: cash, credit, Subscribe to data refreshes for an Account — response body — balance_refresh / value / status: failed, pending, succeeded, Subscribe to data refreshes for an Account — response body — ownership_refresh / value / status: failed, pending, succeeded, Subscribe to data refreshes for an Account — response body — transaction_refresh / value / status: failed, pending, succeeded, Subscribe to data refreshes for an Account — response body — ownership / value / object: financial connections account ownership
Subscribe to data refreshes for an Account — response body — account numbers Details about the account numbers item
| Field | Type | Presence | Description and constraints |
|---|---|---|---|
$ | object | Root | |
expected_expiry_date | JSON | Optional | |
expected_expiry_date (anyOf 1) | JSON | Alternative | |
expected_expiry_date (anyOf 1) (anyOf 1) | integer | Alternative | When the account number is expected to expire, if applicable. Format: unix-time |
expected_expiry_date (anyOf 1) (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
expected_expiry_date (anyOf 2) | null | Alternative | |
identifier_type | string | Required within parent | The type of account number associated with the account. Known values: account_number, tokenized_account_number |
status | string | Required within parent | Whether the account number is currently active and usable for transactions. Known values: deactivated, expired, pending, transactable |
supported_networks | array | Required within parent | The payment networks that the account number can be used for. |
supported_networks[] | string | Each item | Known values: ach |
Subscribe to data refreshes for an Account — response body — balance / value / type: cash, credit
| Field | Type | Presence | Description and constraints |
|---|---|---|---|
$ | object | Root | |
as_of | JSON | Required within parent | |
as_of (anyOf 1) | integer | Alternative | The time that the external institution calculated this balance. Measured in seconds since the Unix epoch. Format: unix-time |
as_of (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
cash | Model | Optional | Expand Subscribe to data refreshes for an Account — response body — balance / value / type: cash, credit cash |
credit | Model | Optional | Expand Subscribe to data refreshes for an Account — response body — balance / value / type: cash, credit credit |
current | object | Required within parent | The balances owed to (or by) the account holder, before subtracting any outbound pending transactions or adding any inbound pending transactions. Each key is a three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Each value is a integer amount. A positive amount indicates money owed to the account holder. A negative amount indicates money owed by the account holder. Additional keys: see wildcard field |
current.* | JSON | Additional keys | |
current.* (anyOf 1) | integer | Alternative | |
current.* (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
type | string | Required within parent | The `type` of the balance. An additional hash is included on the balance with a name matching this value. Known values: cash, credit |
Referenced models: Subscribe to data refreshes for an Account — response body — balance / value / type: cash, credit cash, Subscribe to data refreshes for an Account — response body — balance / value / type: cash, credit credit
Subscribe to data refreshes for an Account — response body — balance / value / type: cash, credit cash
| Field | Type | Presence | Description and constraints |
|---|---|---|---|
$ | object | Root | |
available | JSON | Optional | |
available (anyOf 1) | object | Alternative | The funds available to the account holder. Typically this is the current balance after subtracting any outbound pending transactions and adding any inbound pending transactions. Each key is a three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Each value is a integer amount. A positive amount indicates money owed to the account holder. A negative amount indicates money owed by the account holder. Additional keys: see wildcard field |
available (anyOf 1).* | JSON | Additional keys | |
available (anyOf 1).* (anyOf 1) | integer | Alternative | |
available (anyOf 1).* (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
available (anyOf 2) | null | Alternative |
Subscribe to data refreshes for an Account — response body — balance / value / type: cash, credit credit
| Field | Type | Presence | Description and constraints |
|---|---|---|---|
$ | object | Root | |
used | JSON | Optional | |
used (anyOf 1) | object | Alternative | The credit that has been used by the account holder. Each key is a three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Each value is a integer amount. A positive amount indicates money owed to the account holder. A negative amount indicates money owed by the account holder. Additional keys: see wildcard field |
used (anyOf 1).* | JSON | Additional keys | |
used (anyOf 1).* (anyOf 1) | integer | Alternative | |
used (anyOf 1).* (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
used (anyOf 2) | null | Alternative |
Subscribe to data refreshes for an Account — response body — balance_refresh / value / status: failed, pending, succeeded
| Field | Type | Presence | Description and constraints |
|---|---|---|---|
$ | object | Root | |
last_attempted_at | JSON | Required within parent | |
last_attempted_at (anyOf 1) | integer | Alternative | The time at which the last refresh attempt was initiated. Measured in seconds since the Unix epoch. Format: unix-time |
last_attempted_at (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
next_refresh_available_at | JSON | Optional | |
next_refresh_available_at (anyOf 1) | JSON | Alternative | |
next_refresh_available_at (anyOf 1) (anyOf 1) | integer | Alternative | Time at which the next balance refresh can be initiated. This value will be `null` when `status` is `pending`. Measured in seconds since the Unix epoch. Format: unix-time |
next_refresh_available_at (anyOf 1) (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
next_refresh_available_at (anyOf 2) | null | Alternative | |
status | string | Required within parent | The status of the last refresh attempt. Known values: failed, pending, succeeded |
Subscribe to data refreshes for an Account — response body — ownership / value / object: financial connections account ownership
| Field | Type | Presence | Description and constraints |
|---|---|---|---|
$ | object | Root | Describes a snapshot of the owners of an account at a particular point in time. |
created | JSON | Required within parent | |
created (anyOf 1) | integer | Alternative | Time at which the object was created. Measured in seconds since the Unix epoch. Format: unix-time |
created (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
id | string | Required within parent | Unique identifier for the object. Maximum length: 5000 |
object | string | Required within parent | String representing the object's type. Objects of the same type share the same value. Known values: financial_connections.account_ownership |
owners | object | Required within parent | A paginated list of owners for this account. |
owners.data | array | Required within parent | Details about each object. |
owners.data[] | Model | Each item | Expand List Account Owners — linked Accounts get Linked Accounts Account Owners — response body — data item |
owners.has_more | boolean | Required within parent | True if this list has another page of items after this one that can be fetched. |
owners.object | string | Required within parent | String representing the object's type. Objects of the same type share the same value. Always has the value `list`. Known values: list |
owners.url | string | Required within parent | The URL where this list can be accessed. Maximum length: 5000 |
Referenced models: List Account Owners — linked Accounts get Linked Accounts Account Owners — response body — data item
Subscribe to data refreshes for an Account — response body — ownership_refresh / value / status: failed, pending, succeeded
| Field | Type | Presence | Description and constraints |
|---|---|---|---|
$ | object | Root | |
last_attempted_at | JSON | Required within parent | |
last_attempted_at (anyOf 1) | integer | Alternative | The time at which the last refresh attempt was initiated. Measured in seconds since the Unix epoch. Format: unix-time |
last_attempted_at (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
next_refresh_available_at | JSON | Optional | |
next_refresh_available_at (anyOf 1) | JSON | Alternative | |
next_refresh_available_at (anyOf 1) (anyOf 1) | integer | Alternative | Time at which the next ownership refresh can be initiated. This value will be `null` when `status` is `pending`. Measured in seconds since the Unix epoch. Format: unix-time |
next_refresh_available_at (anyOf 1) (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
next_refresh_available_at (anyOf 2) | null | Alternative | |
status | string | Required within parent | The status of the last refresh attempt. Known values: failed, pending, succeeded |
Subscribe to data refreshes for an Account — response body — status details
| Field | Type | Presence | Description and constraints |
|---|---|---|---|
$ | object | Root | |
active | Model | Optional | Expand Subscribe to data refreshes for an Account — response body — status details active |
Referenced models: Subscribe to data refreshes for an Account — response body — status details active
Subscribe to data refreshes for an Account — response body — status details active
| Field | Type | Presence | Description and constraints |
|---|---|---|---|
$ | object | Root | |
action | string | Required within parent | The action (if any) to proactively relink the Account. Known values: none, relink_required |
cause | string | Required within parent | The underlying cause of the Account becoming inactive. Known values: access_expired, institution_requirement, unspecified |
expected_deactivation_date | JSON | Required within parent | |
expected_deactivation_date (anyOf 1) | integer | Alternative | When the Account is expected to become inactive, if applicable. Format: unix-time |
expected_deactivation_date (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
Subscribe to data refreshes for an Account — response body — transaction_refresh / value / status: failed, pending, succeeded
| Field | Type | Presence | Description and constraints |
|---|---|---|---|
$ | object | Root | |
id | string | Required within parent | Unique identifier for the object. Maximum length: 5000 |
last_attempted_at | JSON | Required within parent | |
last_attempted_at (anyOf 1) | integer | Alternative | The time at which the last refresh attempt was initiated. Measured in seconds since the Unix epoch. Format: unix-time |
last_attempted_at (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
next_refresh_available_at | JSON | Optional | |
next_refresh_available_at (anyOf 1) | JSON | Alternative | |
next_refresh_available_at (anyOf 1) (anyOf 1) | integer | Alternative | Time at which the next transaction refresh can be initiated. This value will be `null` when `status` is `pending`. Measured in seconds since the Unix epoch. Format: unix-time |
next_refresh_available_at (anyOf 1) (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
next_refresh_available_at (anyOf 2) | null | Alternative | |
status | string | Required within parent | The status of the last refresh attempt. Known values: failed, pending, succeeded |