> ## Documentation Index
> Fetch the complete documentation index at: https://developer.uphold.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Bank transfer integration overview (FPS, SEPA, ACH, Wire)

> Connect to local banking rails across the UK, EU, and US — FPS, SEPA, ACH, FedNow/RTP, and Wire — with deposit and withdrawal coverage and quote flows.

Connect to local banking rails across the UK, EU, and US.

## Available networks

Five banking rails are available across the UK, EU, and US. Settlement speed and features vary by network. All networks support **Individual** accounts; availability for **Business** accounts depends on the specific rail and your contract.

### Coverage

| Network          | Region  | Currency | Settlement                     |
| ---------------- | ------- | -------- | ------------------------------ |
| **FPS**          | UK / EU | GBP      | Near-instant (24/7)            |
| **SEPA**         | UK / EU | EUR      | Near-instant or 1 business day |
| **ACH**          | US      | USD      | 1–3 business days              |
| **FedNow / RTP** | US      | USD      | Near-instant (24/7)            |
| **Wire**         | US      | USD      | Same or next day               |

### Supported features

| Network          | Deposit                                                   | Withdrawal                                                    |
| ---------------- | --------------------------------------------------------- | ------------------------------------------------------------- |
| **FPS**          | <Icon icon="check" size={12} color="#10b981" /> Supported | <Icon icon="check" size={12} color="#10b981" /> Supported     |
| **SEPA**         | <Icon icon="check" size={12} color="#10b981" /> Supported | <Icon icon="check" size={12} color="#10b981" /> Supported     |
| **ACH**          | <Icon icon="check" size={12} color="#10b981" /> Supported | <Icon icon="check" size={12} color="#10b981" /> Supported     |
| **FedNow / RTP** | <Icon icon="check" size={12} color="#10b981" /> Supported | <Icon icon="check" size={12} color="#10b981" /> Supported     |
| **Wire**         | <Icon icon="check" size={12} color="#10b981" /> Supported | <Icon icon="xmark" size={12} color="#ef4444" /> Not supported |

## Key concepts

* **Push deposits are external transactions** — only push deposits are supported. The sender initiates the transfer from their bank, and the platform creates the transaction automatically when funds are detected. No quote is required.
* **Withdrawals are quote-based** — the user must confirm a quote before the transaction is created and the payout is submitted.
* **Origin linking** — for [FPS](/developer-guides/bank-transfers/deposit/via-rest-api/fps) and [SEPA](/developer-guides/bank-transfers/deposit/via-rest-api/sepa), the origin bank account is automatically linked as an [external account](/rest-apis/core-api/external-accounts/introduction) after the first deposit. For [ACH](/developer-guides/bank-transfers/withdrawal/via-rest-api/ach), users must explicitly add one.

## Network specifics

| Network          | ToS required                  | Deposit target      | Notes                                                                                                  |
| ---------------- | ----------------------------- | ------------------- | ------------------------------------------------------------------------------------------------------ |
| **FPS**          | `unique-account-number-viban` | Any account         | —                                                                                                      |
| **SEPA**         | `unique-account-number-viban` | Any account         | —                                                                                                      |
| **ACH**          | None                          | Default USD account | Shares routing details with FedNow / RTP and Wire                                                      |
| **FedNow / RTP** | None                          | Default USD account | Not all banks supported; shares routing details with ACH and Wire; withdrawal incurs an additional fee |
| **Wire**         | None                          | Default USD account | Shares routing details with ACH and FedNow / RTP                                                       |

## Testing in sandbox

Use the [Simulate bank deposit](/rest-apis/core-api/accounts/test-helpers/simulate-bank-deposit) test helper to simulate an incoming deposit in sandbox for any supported network (FPS, SEPA, ACH, FedNow / RTP, Wire). Call it with the deposit method details returned by the [Setup Account Deposit Method](/rest-apis/core-api/accounts/set-up-account-deposit-method) endpoint and specify the `network`, and the platform will create a completed transaction as if the user had sent the transfer from their bank.

## Start building

<CardGroup cols={2}>
  <Card title="Deposit via API" icon="code" href="/developer-guides/bank-transfers/deposit/via-rest-api">
    Set up deposit instructions and handle incoming funds programmatically.
  </Card>

  <Card title="Deposit via Widget" icon="puzzle-piece" href="/developer-guides/bank-transfers/deposit/via-payment-widget">
    Let users deposit funds with a low-code, embeddable widget.
  </Card>

  <Card title="Withdrawal via API" icon="code" href="/developer-guides/bank-transfers/withdrawal/via-rest-api">
    Create quotes and submit payouts to your users' bank accounts.
  </Card>

  <Card title="Withdrawal via Widget" icon="puzzle-piece" href="/developer-guides/bank-transfers/withdrawal/via-payment-widget">
    Let users withdraw funds with a low-code, embeddable widget.
  </Card>
</CardGroup>
