# Bank accounts

`GET /v1/stablecoin/bank-accounts` returns the cash accounts registered against your stablecoin product, including which one your redemptions are paid out to. Use it to confirm the destination a `FIAT` redemption will settle to before approving one.

Like the [Wallets API](/products/stablecoin/api/wallets), it takes no tenant identifier (the tenant comes from your access token) and requires `rlusd_customers:read`.

## List bank accounts

```
GET /v1/stablecoin/bank-accounts
```

**Required scope:** `rlusd_customers:read`

### Query parameters

| Parameter | Type | Required | Description |
|  --- | --- | --- | --- |
| `page` | integer | No | Page number, 0-indexed (default: `0`) |
| `size` | integer | No | Page size (default: `20`) |
| `sort` | string | No | Sort field and direction (default: `bankName,asc`). Supported fields: `bankName`, `name` |


### Example request

```bash
curl -s 'https://api.ripple.com/v1/stablecoin/bank-accounts' \
  -H 'Authorization: Bearer <access_token>' \
  -H 'Accept: application/json'
```

### Example response — `200 OK`

```json
{
  "content": [
    {
      "name": "Treasury Operating",
      "bankName": "First National Bank",
      "accountNumberLastFour": "7890",
      "swiftBicCode": "FNBKUS33",
      "routingNumber": "021000021",
      "currency": "USD",
      "reference": "RLUSD-OPS",
      "isRedemption": true
    },
    {
      "name": "EUR Settlement",
      "bankName": "Second National Bank",
      "ibanLastFour": "4321",
      "swiftBicCode": "SNBKGB2L",
      "currency": "EUR",
      "isRedemption": false
    }
  ],
  "totalPages": 1,
  "totalElements": 2,
  "size": 20,
  "number": 0
}
```

## Bank account object

| Field | Type | Description |
|  --- | --- | --- |
| `name` | string | Your own name for the account. Empty string when none is registered |
| `bankName` | string | Bank the account is held at. Empty string when none is registered |
| `accountNumberLastFour` | string | Last four digits of the account number. Absent when the account has no account number |
| `ibanLastFour` | string | Last four characters of the IBAN. Absent when the account has no IBAN |
| `swiftBicCode` | string | SWIFT/BIC code. Absent when not registered |
| `routingNumber` | string | Routing number. Absent when not registered |
| `currency` | string | ISO-4217 currency code of the account, e.g. `USD` |
| `reference` | string | Payment reference you have asked to be quoted on transfers to this account. This is **separate** from the `RL…` [memo](/products/stablecoin/api/fiat-instructions#memo-format) used for mint and redemption correlation — the memo always travels in the reference field of the fiat payment and is what joins a payment to a transaction |
| `isRedemption` | boolean | `true` on the account your redemptions are paid out to. Defaults are per product, so an account that is the default for another Ripple product reads `false` here |


Full account numbers and IBANs never leave Ripple — only the last four characters are served, enough to recognize an account without being enough to pay it. Accounts with no stablecoin registration are filtered out, so the list is the set of accounts relevant to RLUSD rather than every account on record.

An unknown record is **not** an error: like the [Wallets API](/products/stablecoin/api/wallets), this endpoint never returns `404`. An empty result comes back as `200` with an empty `content` array and `totalElements: 0`.