Stripe: Transfers schemas
2 Stripe schemas with complete fields and constraints.
← Transfers operations · All schemas
Create a transfer — response body
| Field | Type | Presence | Description and constraints |
|---|---|---|---|
$ | object | Root | A `Transfer` object is created when you move funds between Stripe accounts as part of Connect. Before April 6, 2017, transfers also represented movement of funds from a Stripe account to a card or bank account. This behavior has since been split out into a [Payout](https://docs.stripe.com/api#payout_object) object, with corresponding payout endpoints. For more information, read about the [transfer/payout split](https://docs.stripe.com/transfer-payout-split). Related guide: [Creating separate charges and transfers](https://docs.stripe.com/connect/separate-charges-and-transfers) |
amount | JSON | Required within parent | |
amount (anyOf 1) | integer | Alternative | Amount in cents (or local equivalent) to be transferred. |
amount (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
amount_reversed | JSON | Required within parent | |
amount_reversed (anyOf 1) | integer | Alternative | Amount in cents (or local equivalent) reversed (can be less than the amount attribute on the transfer if a partial reversal was issued). |
amount_reversed (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
balance_transaction | JSON | Optional | |
balance_transaction (anyOf 1) | JSON | Alternative | Balance transaction that describes the impact of this transfer on your account balance. |
balance_transaction (anyOf 1) (anyOf 1) | string | Alternative | Maximum length: 5000 |
balance_transaction (anyOf 1) (anyOf 2) | Model | Alternative | Expand Retrieve a balance transaction — balance get Balance History Id — response body |
balance_transaction (anyOf 2) | null | Alternative | |
created | JSON | Required within parent | |
created (anyOf 1) | integer | Alternative | Time that this record of the transfer was first created. Format: unix-time |
created (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). Format: currency |
description | JSON | Optional | |
description (anyOf 1) | string | Alternative | An arbitrary string attached to the object. Often useful for displaying to users. Maximum length: 5000 |
description (anyOf 2) | null | Alternative | |
destination | JSON | Optional | |
destination (anyOf 1) | JSON | Alternative | ID of the Stripe account the transfer was sent to. |
destination (anyOf 1) (anyOf 1) | string | Alternative | Maximum length: 5000 |
destination (anyOf 1) (anyOf 2) | Model | Alternative | Expand Create an account — response body |
destination (anyOf 2) | null | Alternative | |
destination_payment | JSON | Optional | If the destination is a Stripe account, this will be the ID of the payment that the destination account received for the transfer. |
destination_payment (anyOf 1) | string | Alternative | Maximum length: 5000 |
destination_payment (anyOf 2) | Model | Alternative | Expand Create a charge — response body |
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`. |
metadata | object | Required within parent | Set of [key-value pairs](https://docs.stripe.com/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Additional keys: see wildcard field |
metadata.* | string | Additional keys | Maximum length: 500 |
object | string | Required within parent | String representing the object's type. Objects of the same type share the same value. Known values: transfer |
reversals | object | Required within parent | A list of reversals that have been applied to the transfer. |
reversals.data | array | Required within parent | Details about each object. |
reversals.data[] | Model | Each item | Expand Update a reversal — response body |
reversals.has_more | boolean | Required within parent | True if this list has another page of items after this one that can be fetched. |
reversals.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 |
reversals.url | string | Required within parent | The URL where this list can be accessed. Maximum length: 5000 |
reversed | boolean | Required within parent | Whether the transfer has been fully reversed. If the transfer is only partially reversed, this attribute will still be false. |
source_transaction | JSON | Optional | |
source_transaction (anyOf 1) | JSON | Alternative | ID of the charge that was used to fund the transfer. If null, the transfer was funded from the available balance. |
source_transaction (anyOf 1) (anyOf 1) | string | Alternative | Maximum length: 5000 |
source_transaction (anyOf 1) (anyOf 2) | Model | Alternative | Expand Create a charge — response body |
source_transaction (anyOf 2) | null | Alternative | |
source_type | string | Optional | The source balance this transfer came from. One of `card`, `fpx`, or `bank_account`. Maximum length: 5000 |
transfer_group | JSON | Optional | |
transfer_group (anyOf 1) | string | Alternative | A string that identifies this transaction as part of a group. See the [Connect documentation](https://docs.stripe.com/connect/separate-charges-and-transfers#transfer-options) for details. Maximum length: 5000 |
transfer_group (anyOf 2) | null | Alternative |
Referenced models: Create an account — response body, Retrieve a balance transaction — balance get Balance History Id — response body, Create a charge — response body, Update a reversal — response body
Update a reversal — response body
| Field | Type | Presence | Description and constraints |
|---|---|---|---|
$ | object | Root | [Stripe Connect](https://docs.stripe.com/connect) platforms can reverse transfers made to a connected account, either entirely or partially, and can also specify whether to refund any related application fees. Transfer reversals add to the platform's balance and subtract from the destination account's balance. Reversing a transfer that was made for a [destination charge](/docs/connect/destination-charges) is allowed only up to the amount of the charge. It is possible to reverse a [transfer_group](https://docs.stripe.com/connect/separate-charges-and-transfers#transfer-options) transfer only if the destination account has enough balance to cover the reversal. Related guide: [Reverse transfers](https://docs.stripe.com/connect/separate-charges-and-transfers#reverse-transfers) |
amount | JSON | Required within parent | |
amount (anyOf 1) | integer | Alternative | Amount, in cents (or local equivalent). |
amount (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
balance_transaction | JSON | Optional | |
balance_transaction (anyOf 1) | JSON | Alternative | Balance transaction that describes the impact on your account balance. |
balance_transaction (anyOf 1) (anyOf 1) | string | Alternative | Maximum length: 5000 |
balance_transaction (anyOf 1) (anyOf 2) | Model | Alternative | Expand Retrieve a balance transaction — balance get Balance History Id — response body |
balance_transaction (anyOf 2) | null | Alternative | |
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]+)?$ |
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). Format: currency |
destination_payment_refund | JSON | Optional | |
destination_payment_refund (anyOf 1) | JSON | Alternative | Linked payment refund for the transfer reversal. |
destination_payment_refund (anyOf 1) (anyOf 1) | string | Alternative | Maximum length: 5000 |
destination_payment_refund (anyOf 1) (anyOf 2) | Model | Alternative | Expand Cancel a refund — response body |
destination_payment_refund (anyOf 2) | null | Alternative | |
id | string | Required within parent | Unique identifier for the object. Maximum length: 5000 |
metadata | JSON | Optional | |
metadata (anyOf 1) | object | Alternative | Set of [key-value pairs](https://docs.stripe.com/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Additional keys: see wildcard field |
metadata (anyOf 1).* | string | Additional keys | Maximum length: 500 |
metadata (anyOf 2) | null | Alternative | |
object | string | Required within parent | String representing the object's type. Objects of the same type share the same value. Known values: transfer_reversal |
source_refund | JSON | Optional | |
source_refund (anyOf 1) | JSON | Alternative | ID of the refund responsible for the transfer reversal. |
source_refund (anyOf 1) (anyOf 1) | string | Alternative | Maximum length: 5000 |
source_refund (anyOf 1) (anyOf 2) | Model | Alternative | Expand Cancel a refund — response body |
source_refund (anyOf 2) | null | Alternative | |
transfer | JSON | Required within parent | ID of the transfer that was reversed. |
transfer (anyOf 1) | string | Alternative | Maximum length: 5000 |
transfer (anyOf 2) | Model | Alternative | Expand Create a transfer — response body |
Referenced models: Retrieve a balance transaction — balance get Balance History Id — response body, Cancel a refund — response body, Create a transfer — response body