# Fund your financial account

Add funds to your financial account from your Stripe balance, crypto wallet, or bank.

> Financial accounts are in preview and some features vary by region. Check [regional availability](https://docs.stripe.com/treasury/add-funds.md#regional-availability) for full details.

Adding funds to your *financial account* (You can use a financial account to store, transfer, convert, or spend funds) allows you to convert, pay out, and earn rewards on your balance. Each currency in your financial account has its own account details and inbound payment methods.

## Funding sources 

You can transfer funds from several different sources. The [availability](https://docs.stripe.com/treasury/add-funds.md#regional-availability) of each funding source depends on your business’s location. You need [administrator access](https://docs.stripe.com/get-started/account/teams/roles.md) to add funds.

| Funding source | Transfer speed |
| --- | --- |
| [Stripe payments balance](https://docs.stripe.com/treasury/add-funds.md#transfer-funds-stripe-balance) | Instant |
| [Crypto wallets](https://docs.stripe.com/treasury/add-funds.md#add-from-a-crypto-wallet) | Minutes |
| [Push from an external bank account](https://docs.stripe.com/treasury/add-funds.md#push-funds-external-bank-account) | 0–3 days* |
| [Pull from a verified bank account](https://docs.stripe.com/treasury/add-funds.md#pull-funds-external-bank-account) | 2–6 days* |

\* Varies by transfer method. See [typical transaction times](https://docs.stripe.com/treasury/add-funds.md#typical-transaction-times) for details.

## Transfer funds from your Stripe balance 

You can transfer settled funds from your Stripe [payments balance](https://docs.stripe.com/payments/balances.md) into a financial account.

### One-time transfers (Private preview) 

#### Dashboard

1. On the [Balances](https://dashboard.stripe.com/balances) page, click **Transfer**.
2. Select the payments balance to transfer from.
3. Select the financial account to transfer to.
4. Enter the amount to move.
5. Click **Review** to review your selections, then click **Transfer**.

#### API

Call the [Balance API v1](https://docs.stripe.com/api/balance/balance_retrieve.md?api-version=preview) to determine your available funds.

```curl
curl https://api.stripe.com/v1/balance \
  -u "<<YOUR_SECRET_KEY>>:"
```

Call the [Financial Account API v2](https://docs.stripe.com/api/v2/money-management/financial-accounts/list.md?api-version=preview) to get your Financial Account ID or find it in your [Dashboard Payout settings](https://dashboard.stripe.com/settings/payouts).

```curl
curl https://api.stripe.com/v2/money_management/financial_accounts \
  -H "Authorization: Bearer <<YOUR_SECRET_KEY>>" \
  -H "Stripe-Version: 2026-08-26.preview"
```

Call [Payouts API v1](https://docs.stripe.com/api/payouts/create.md?api-version=preview) to create a payout from your payments revenue. Pass your Financial Account ID in the `payout_method` parameter and the amount to transfer from your [Balance v1](https://docs.stripe.com/api/balance/balance_object.md).

```curl
curl https://api.stripe.com/v1/payouts \
  -u "<<YOUR_SECRET_KEY>>:" \
  -d "payout_method={{FINANCIALACCOUNTID_ID}}" \
  -d amount=250 \
  -d currency=usd
```

Call the [Received Credit API v2](https://docs.stripe.com/api/v2/money-management/received-credits/retrieve.md?api-version=preview) to retrieve your current and pending ReceivedCredits for funds into your Financial Account.

```curl
curl https://api.stripe.com/v2/money_management/received_credits \
  -H "Authorization: Bearer <<YOUR_SECRET_KEY>>" \
  -H "Stripe-Version: 2026-08-26.preview"
```

To review the outgoing transfer from your balance, call the [Payouts API v1](https://docs.stripe.com/api/payouts/retrieve.md?api-version=preview) to inspect the outgoing transfer from your `/v1/balance`.

To confirm that the transfer completed, [review your financial account transactions](https://docs.stripe.com/treasury/add-funds.md#view-funding-status).

### Recurring transfers 

You can set up a recurring transfer from your Stripe payments balance to your financial account. You can set a target amount to be transferred or you can transfer all of your earnings when they settle into your payments balance.

To configure a recurring transfer from your payments balance, you must be on an automatic payout schedule.

1. On the [Balances](https://dashboard.stripe.com/balances) page, click **Payments balance**.
2. Click **Recurring transfers**.
3. Choose the currency that you want to set up.
4. Select whether you want to transfer a target amount or all of your payments balance.
5. Click **Save**.

To confirm that the transfer completed, [review your financial account transactions](https://docs.stripe.com/treasury/add-funds.md#view-funding-status).

## Transfer from a crypto wallet 

If you’re eligible for a [stablecoin balance](https://docs.stripe.com/treasury/store-funds.md#stablecoin-balances), you can add funds from your own crypto wallet. Stripe credits the funds to your stablecoin balance instead of a fiat balance. To move them into a fiat balance, see [Convert funds](https://docs.stripe.com/treasury/convert-funds.md#stablecoin-conversions).

You generate a deposit address for one blockchain network, then send funds to it from your wallet.

1. On the [Balances](https://dashboard.stripe.com/balance/overview) overview, click **Add funds**.
2. Click **Crypto transfer**.
3. Select a blockchain network.
4. Copy the wallet address or scan the QR code with your crypto wallet.
5. Click **Done**.
6. From your crypto wallet, send the asset that the network you selected uses: USDC.e on Tempo, or USDC on the other supported networks.

> Send only the asset for the network you selected, and use the address that matches that network. For the full mapping, see [Stablecoin assets and networks](https://docs.stripe.com/treasury/transfer-send.md#stablecoin-assets).

To confirm that the transfer completed, [review your financial account transactions](https://docs.stripe.com/treasury/add-funds.md#view-funding-status).

## Push funds from your external bank account 

When you push funds, you initiate the transfer through your bank. While this process is different at each institution, it always requires your Stripe financial account information.

> Make sure that your name, business name, and contact information in Stripe matches the information registered with your bank. Identification mismatches delay or prevent transfers.

### View your financial account details

#### Dashboard

1. On the [Balances](https://dashboard.stripe.com/balances) page, click **Add funds**.
2. Select the financial account to transfer funds into.
3. Select **Manually transfer from your bank** and click **Continue**.
4. Use the account details to send a supported transfer from your bank.

#### API

Retrieve your FinancialAccount ID using the [Financial Account API v2](https://docs.stripe.com/api/v2/money-management/financial-accounts.md?api-version=preview).

```curl
curl https://api.stripe.com/v2/money_management/financial_accounts \
  -H "Authorization: Bearer <<YOUR_SECRET_KEY>>" \
  -H "Stripe-Version: 2026-08-26.preview"
```

Create a financial address by calling the [Financial Address API v2](https://docs.stripe.com/api/v2/money-management/financial-addresses.md?api-version=preview) and include your financial account ID.

```curl
curl -X POST https://api.stripe.com/v2/money_management/financial_addresses \
  -H "Authorization: Bearer <<YOUR_SECRET_KEY>>" \
  -H "Stripe-Version: 2026-08-26.preview" \
  --json '{
    "financial_account": "{{FINANCIALACCOUNTID_ID}}",
    "type": "us_bank_account"
  }'
```

Retrieve the financial address credentials by calling the [Financial Address API v2](https://docs.stripe.com/api/v2/money-management/financial-addresses.md?api-version=preview) again, including the `credentials` field using the `include` parameter.

```curl
curl -G https://api.stripe.com/v2/money_management/financial_addresses \
  -H "Authorization: Bearer <<YOUR_SECRET_KEY>>" \
  -H "Stripe-Version: 2026-08-26.preview" \
  -d "include[0]=credentials.us_bank_account.account_number"
```

Submit a request to your bank to send money using the financial address credentials you retrieved.

You can create up to five FinancialAddresses for your financial account. Funds that you send to these financial accounts are represented as a unified balance in the [FinancialAccount](https://docs.stripe.com/api/v2/financial-accounts.md).

To confirm that the transfer completed, [review your financial account transactions](https://docs.stripe.com/treasury/add-funds.md#view-funding-status).

## Pull funds from your external bank account 

> Pulling funds from external bank accounts is only supported in the US.

When you pull funds, you initiate the transfer through Stripe. You can only pull funds from verified bank accounts. This funding method doesn’t support recurring transfers.

### Add and verify a bank account 

1. On the [Balances](https://dashboard.stripe.com/balances) page, click **Add funds**.
2. Select the financial account to add money to.
3. Select **Linked bank account** from payment method and click **Add new bank account**.

You have two options to add and verify your bank account:

- (Recommended) **Instant with [Financial Connections](https://docs.stripe.com/financial-connections.md):** Use your bank credentials with Financial Connections to verify and connect your bank account.
- **Manually with micro-deposits:** Manually enter your bank account and routing numbers. Stripe sends microdeposit amounts that appear on your online banking statement within 1–2 business days, with the `ACCTVERIFY` statement description. Use these amounts to verify your account in the Dashboard. This manual verification timing is separate to any settlement timing for your funding transaction.

### Pull funds into your financial account balance

#### Dashboard

You can pull funds into your financial account directly from the Dashboard.

1. On the [Treasury](https://dashboard.stripe.com/treasury) page, click **Add funds**.
2. Select the financial account to add money to.
3. Enter the amount to add.
4. Select **Linked bank account**.
5. Choose the bank account you want to send money from.
6. Click **Continue** to review your selections, then click **Top up**.

#### API

To make an [InboundTransfer](https://docs.stripe.com/api/v2/inbound-transfers.md?api-version=preview), you need your verified bank account ID and `FinancialAccount` ID.

To retrieve your verified bank account ID:

1. In the Dashboard, go to your bank accounts in [Settings](https://dashboard.stripe.com/settings/global-payouts).
2. Copy the bank account ID from a verified bank account.

Use the FinancialAccounts API to retrieve your FinancialAccount ID.

```curl
curl https://api.stripe.com/v2/money_management/financial_accounts \
  -H "Authorization: Bearer <<YOUR_SECRET_KEY>>" \
  -H "Stripe-Version: 2026-08-26.preview"
```

After you have the verified bank account ID and the FinancialAccount ID, initiate an InboundTransfer using the verified bank account ID in the `payment_method` field.

```curl
curl -X POST https://api.stripe.com/v2/money_management/inbound_transfers \
  -H "Authorization: Bearer <<YOUR_SECRET_KEY>>" \
  -H "Stripe-Version: 2026-08-26.preview" \
  --json '{
    "from": {
        "payment_method": "{{VERIFIED_BANK_ACCOUNT_ID}}"
    },
    "to": {
        "financial_account": "{{FINANCIALACCOUNTID_ID}}",
        "currency": "usd"
    },
    "amount": {
        "value": 300,
        "currency": "usd"
    }
  }'
```

Use the Inbound Transfers API v2 to retrieve your current and pending InboundTransfers.

```curl
curl https://api.stripe.com/v2/money_management/inbound_transfers \
  -H "Authorization: Bearer <<YOUR_SECRET_KEY>>" \
  -H "Stripe-Version: 2026-08-26.preview"
```

To confirm that the transfer completed, [review your financial account transactions](https://docs.stripe.com/treasury/add-funds.md#view-funding-status).

#### Transfer limits

Pull transfers are subject to the following transaction limits:

- 50,000 USD per transaction
- 50,000 USD per day
- 100,000 USD per week

## View funding status 

You can view the status of your funding attempts in the Dashboard or with the API.

#### Dashboard

1. Navigate to **Treasury** > **Financial account**.
2. View the list of transactions into and out of your financial account.
3. Click a specific funding transaction to see a timeline view, the transaction ID, and an itemized receipt with details of the transaction.

#### API

To retrieve the status of a funding attempt, call the Transactions API and pass the funding attempt ID (either InboundTransfer or ReceivedCredit ID) in the `flow` parameter.

```curl
curl -G https://api.stripe.com/v2/money_management/transactions \
  -H "Authorization: Bearer <<YOUR_SECRET_KEY>>" \
  -H "Stripe-Version: 2026-08-26.preview" \
  -d "flow={{FLOWID_ID}}"
```

Use the `status` parameter in the response to determine the status of the funding attempt. A funding attempt can be `pending`, `posted` and available for use, or `void`.

To retrieve an itemized receipt, use either the InboundTransfers or ReceivedCredit API to retrieve details of the funding attempt. The response includes a URL to an itemized receipt.

To move funds out of your financial account, see [Transfer and send money](https://docs.stripe.com/treasury/transfer-send.md#transfer-money). If your financial account holds a stablecoin balance, see [Move money from a stablecoin balance](https://docs.stripe.com/treasury/transfer-send.md#stablecoin-payouts).

## Regional availability 

### Supported currencies 

Currency support for your financial account depends on the location of both your business and your business representative:

| Business and representative location | USD | USDC1 | GBP | EUR | AUD |
| --- | --- | --- | --- | --- | --- |
| US legal entities with US representatives | ✓ Supported | ✓ Supported | ✓ Supported | ✓ Supported | - Unsupported |
| US legal entities with international representatives | - Unsupported | ✓ Supported | - Unsupported | - Unsupported | - Unsupported |
| UK legal entities with UK representatives | ✓ Supported | - Unsupported | ✓ Supported | ✓ Supported | - Unsupported |
| International legal entities in eligible countries | - Unsupported | ✓ Supported | - Unsupported | - Unsupported | - Unsupported |
| AU legal entities | ✓ Supported | - Unsupported | ✓ Supported | ✓ Supported | ✓ Supported |

1 USDC is *generally available* (A release phase for products or features that are fully available to all Stripe accounts. Functionality is feature-complete, and future changes are handled through standard API version releases)in the US, and *private preview* (A release phase for products or features that are available by invitation, usually through a waitlist. Functionality might be incomplete, and breaking changes are likely) in other countries and regions. Check [stablecoin availability](https://docs.stripe.com/treasury/stablecoins.md#availability) for full details.

### Typical transaction times 

The time to complete a transfer varies by the currency and payment network.

| Currency | Required account details | Payment network | Completion time |
| --- | --- | --- | --- |
| USD | Routing and account numbers | ACH Credit | 0-3 business days 1 |
| International ACH Transaction (IAT) | 0-3 business days 1 |
| Fedwire | Same day 2 |
| RTP (US-only) | Minutes |
| GBP | Sort code and account number | Faster Payments (FPS) | Same day |
| CHAPS | Same day |
| EUR | IBAN and BIC | SEPA Credit Transfer | Same day |
| SEPA Instant | Seconds |
| AUD | BSB and account number | BECS | Same day |
| NPP | Same day |
| RTGS | Same day |

1. ACH Cutoff time: 8:30 p.m. ET. Same-day: 1:00 p.m. ET 2. Wire transfer cutoff time: 5:00 p.m. ET
