Payouts to connected accounts
Manage payouts and external accounts for your platform's connected accounts.
Note
This page is for developers building platforms with Stripe Connect. If you’re a business or individual receiving payouts through a platform, contact that platform directly for help with your payout settings and status.
By default, any charge you make on behalf of a connected account accumulates in the connected account’s balance and is paid out on a daily rolling basis. Depending on the configuration of your connected accounts, your platform can manage their payouts as follows:
- Schedule the frequency of automatic payouts
- Perform manual payouts
- Settle funds instantly
- When using destination charges or separate charges and transfers, retain funds in your platform balance
Payout management configurations
For connected accounts with access to the full Stripe Dashboard or Express Dashboard, the account holder manages their external payout accounts (bank accounts and debit cards), but the platform can schedule payouts. To schedule payouts for an account that has access to the full Stripe Dashboard, the platform must configure Platform controls for the account.
For connected accounts without access to a Stripe-hosted Dashboard, the platform manages their external payout accounts and can schedule their payouts.
Supported settlement currencies
To see which currencies you can use to settle funds in a particular country, select that country from the following dropdown.
Note
For a list of supported presentment currencies, see the currencies documentation.
Platforms can also enable their connected accounts to settle funds and pay out to banks in certain non-primary currencies, or pay out to non-domestic bank accounts in the local currency. In some cases, Stripe charges a fee. For more information, see multi-currency settlement for Connect marketplaces and platforms.
Payout status
The Payout object’s status field reflects where funds are in the payout lifecycle:
-
pending: The payout has been created and is waiting to be submitted to the bank. Funds haven’t left Stripe yet. -
in_: Funds have been submitted to the bank and are on their way to the external account.transit -
paid: The payout has arrived at the external account. For standard payouts, this typically occurs 1–2 business days after submission. -
failed: The payout couldn’t be completed. The Payout object’sfailure_property indicates the reason. When a payout fails, the external account involved is disabled and can’t receive payouts until the platform updates the connected account’s external account details.code -
canceled: The payout was canceled before funds were submitted to the bank.
For most payouts, the full lifecycle takes several days. Instant payouts typically reach the account within 30 minutes.
If a connected account holder isn’t seeing expected funds, they need to contact the platform they work with—the platform controls payout settings and schedules for their connected accounts.
Track payouts with webhooks
You can track all payout activity on connected accounts by creating an event destination and listening for these events:
-
payout.: Sent when a payout is created (status:created pending). -
payout.: Sent when payout details change, such as the estimated arrival date.updated -
payout.: Sent when the payout reaches the external account (status:paid paid). -
payout.: Sent when a payout fails (status:failed failed). Stripe also sends anaccount.event because the failed external account is disabled.external_ account. updated
Accounts v2 API
Regardless of the Accounts API version that you use, payouts trigger only the v1 events described here. They don’t have equivalent v2 events.