Stripe | Financial Infrastructure to Grow Your Revenue

Stripe | Financial Infrastructure to Grow Your Revenue

5282 articles

Transfers


Transfers

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 object, with corresponding payout endpoints. For more information, read about the transfer/payout split.

Related guide: Creating separate charges and transfers

Was this section helpful? Yes No

Create a transfer

POST / v1 / transfers

Update a transfer

POST / v1 / transfers /:id

Retrieve a transfer

GET / v1 / transfers /:id

List all transfers

GET / v1 / transfers

The Transfer object

Attributes

  • id string Unique identifier for the object.
  • amount integer Amount in the smallest currency unit to be transferred.
  • currency enum Three-letter ISO currency code, in lowercase. Must be a supported currency.
  • description nullable string An arbitrary string attached to the object. Often useful for displaying to users.
  • destination nullable string Expandable ID of the Stripe account the transfer was sent to.
  • metadata map 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.

More attributes

  • object string, value is "transfer"
  • amount _ reversed integer
  • balance _ transaction nullable string Expandable
  • created timestamp
  • destination _ payment nullable string Expandable
  • livemode boolean
  • reversals object
  • reversed boolean
  • source _ transaction nullable string Expandable
  • source _ type nullable string
  • transfer _ group nullable string

The Transfer object

Create a transfer

POST / v1 / transfers

To send funds from your Stripe account to a connected account, you create a new transfer object. Your Stripe balance must be able to cover the transfer amount, or you’ll receive an “Insufficient Funds” error.

Parameters

  • currency enum Required Three-letter ISO code for currency in lowercase. Must be a supported currency.
  • destination string Required The ID of a connected Stripe account. See the Connect documentation for details.
  • amount integer Required A positive integer in the smallest currency unit representing how much to transfer.
  • description string An arbitrary string attached to the object. Often useful for displaying to users.
  • metadata map 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

  • source _ transaction string
  • source _ type string
  • transfer _ group string

Returns

Returns a transfer object if there were no initial errors with the transfer creation (e.g., insufficient funds).

Response

Last verified 2026-09-25

Is this helpful?