Create a transfer v1

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

  • currencyenumRequired

    Three-letter ISO code for currency in lowercase. Must be a supported currency.

  • destinationstringRequired

    The ID of a connected Stripe account. See the Connect documentation for details.

  • amountintegerRequired

    A positive integer in the smallest currency unit representing how much to transfer.

  • descriptionstring

    An arbitrary string attached to the object. Often useful for displaying to users.

  • metadatamap

    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_transactionstring

  • source_typestring

  • transfer_groupstring

Returns

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

curl https://api.stripe.com/v1/transfers \
-u "sk_test_...sk_test_...:" \
-d amount=400 \
-d currency=usd \
-d destination= \
-d transfer_group=ORDER_95
Response
{
"object": "transfer",
"amount": 400,
"amount_reversed": 0,
"balance_transaction": "",
"created": 1678043844,
"currency": "usd",
"description": null,
"destination": "",
"destination_payment": "py_1MiN3gQ9PRzxEwkZWTPGNq9o",
"livemode": false,
"metadata": {},
"reversals": {
"object": "list",
"data": [],
"has_more": false,
"total_count": 0,
"url": "/v1/transfers/tr_1MiN3gLkdIwHu7ixNCZvFdgA/reversals"
},
"reversed": false,
"source_transaction": null,
"source_type": "card",
"transfer_group": "ORDER_95"
}

Update a transfer v1

POST /v1/transfers/:id

Updates the specified transfer by setting the values of the parameters passed. Any parameters not provided will be left unchanged.

This request accepts only metadata as an argument.

Parameters

  • descriptionstring

    An arbitrary string attached to the object. Often useful for displaying to users.

  • metadatamap

    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.

Returns

Returns the transfer object if the update succeeded. This call will raise an error if update parameters are invalid.

curl https://api.stripe.com/v1/transfers/ \
-u "sk_test_...sk_test_...:" \
-d "metadata[order_id]=6735"
Response
{
"object": "transfer",
"amount": 400,
"amount_reversed": 0,
"balance_transaction": "",
"created": 1678043844,
"currency": "usd",
"description": null,
"destination": "",
"destination_payment": "py_1MiN3gQ9PRzxEwkZWTPGNq9o",
"livemode": false,
"metadata": {
"order_id": "6735"
},
"reversals": {
"object": "list",
"data": [],
"has_more": false,
"total_count": 0,
"url": "/v1/transfers/tr_1MiN3gLkdIwHu7ixNCZvFdgA/reversals"
},
"reversed": false,
"source_transaction": null,
"source_type": "card",
"transfer_group": "ORDER_95"
}

Retrieve a transfer v1

GET /v1/transfers/:id

Retrieves the details of an existing transfer. Supply the unique transfer ID from either a transfer creation request or the transfer list, and Stripe will return the corresponding transfer information.

Parameters

No parameters.

Returns

Returns a transfer object if a valid identifier was provided, and raises an error otherwise.

curl https://api.stripe.com/v1/transfers/ \
-u "sk_test_...sk_test_...:"
Response
{
"object": "transfer",
"amount": 400,
"amount_reversed": 0,
"balance_transaction": "",
"created": 1678043844,
"currency": "usd",
"description": null,
"destination": "",
"destination_payment": "py_1MiN3gQ9PRzxEwkZWTPGNq9o",
"livemode": false,
"metadata": {},
"reversals": {
"object": "list",
"data": [],
"has_more": false,
"total_count": 0,
"url": "/v1/transfers/tr_1MiN3gLkdIwHu7ixNCZvFdgA/reversals"
},
"reversed": false,
"source_transaction": null,
"source_type": "card",
"transfer_group": "ORDER_95"
}