Create a transfer 

Connect
Transfers
Create a transfer

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 cents representing how much to transfer.

  • descriptionstring

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

  • 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

  • source_transactionstring

    You can use this parameter to transfer funds from a charge before they are added to your available balance. A pending balance will transfer immediately but the funds will not become available until the original charge becomes available. See the Connect documentation for details.

  • source_typestring

    The source balance to use for this transfer. One of bank_account, card, or fpx. For most users, this will default to card.

  • transfer_groupstring

    A string that identifies this transaction as part of a group. See the Connect documentation for details.

Returns

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

POST /v1/transfers
const stripe = require('stripe')('sk_test_BQokikJ...2HlWgH4olfQ2sk_test_BQokikJOvBiI2HlWgH4olfQ2');
const transfer = await stripe.transfers.create({
amount: 400,
currency: 'usd',
destination: 'acct_1MTfjCQ9PRzxEwkZ',
transfer_group: 'ORDER_95',
});
Response
{
"id": "tr_1MiN3gLkdIwHu7ixNCZvFdgA",
"object": "transfer",
"amount": 400,
"amount_reversed": 0,
"balance_transaction": "txn_1MiN3gLkdIwHu7ixxapQrznl",
"created": 1678043844,
"currency": "usd",
"description": null,
"destination": "acct_1MTfjCQ9PRzxEwkZ",
"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"
}