---
title: "Get bank details"
method: GET
path: "/v1/stablecoin/fiat-bank-details"
tags: ["Fiat instructions"]
---

# Get bank details

`GET /v1/stablecoin/fiat-bank-details`

## Request

- Base URL: `https://api.ripple.com`
- URL: `https://api.ripple.com/v1/stablecoin/fiat-bank-details`
- Auth: OAuth 2
  - Client credentials
  - Token URL: `https://api.ripple.com/v2/oauth/token` scopes: `rlusd_customers:read`
- TypeScript: <https://skmtc.dev/ripple/apis/ripple-mint-api/docs/v1/stablecoin/fiat-bank-details/get.ts> (a function with typed inputs; its response is checked against the schema)

Returns the Ripple bank account to wire fiat to when buying stablecoin - the same object
embedded as `bankDetails` on every fiat instruction, served on its own.

The bank belongs to your account rather than to any one instruction, so this is the endpoint
to call when you want the wire destination without creating or listing an instruction:
rendering a "where to send funds" panel, caching the details, or checking them on a
schedule.

**This endpoint does not return a memo.** A memo is per-payment and comes only from a fiat
instruction; the bank details alone are not enough to have a payment attributed. Create an
instruction for every payment you intend to send.

Unlike the embedded `bankDetails` field, which is simply absent on any failure so that the
instruction and its memo still come back, this endpoint keeps its failures apart: a `404` is
a settled answer and retrying will not change it, a `502` is transient.

## Response `200`

The Ripple bank account to wire fiat to

- StablecoinBankDetails: The Ripple bank account to wire fiat to when buying stablecoin. Quote the instruction's `memo` on the transfer so the funds can be attributed to it - the `reference` below is a separate value the bank wants, not a substitute for the memo. Unlike `BankAccount`, which redacts your own account numbers to their last four digits, these are served in full: this is the beneficiary of an outgoing wire, and a truncated account number cannot be paid. At least one of `accountNumber` and `iban` is always present - an account that could not be paid is omitted from the response entirely rather than returned partially.
  - `bankName` string, required: Name of the bank holding the account. May be an empty string.
  - `accountName` string, required: Name the account is held under - the Ripple legal entity you are paying. May be an empty string.
  - `accountNumber` string: Account number to wire to.
  - `iban` string: IBAN to wire to, for accounts identified that way.
  - `swiftBicCode` string
  - `routingNumber` string
  - `reference` string: Reference Ripple wants quoted on transfers to this account. Distinct from the instruction's `memo`, which is what actually attributes the payment - send both.
  - `bankAddress` StablecoinBankAddress: Postal address of the bank account.
    - `street` string: Street address. Where the bank's address is recorded over two lines, both are returned here joined by `, `.
    - `city` string
    - `state` string: State, province or region.
    - `zipCode` string
    - `country` string

## Other responses

- `401`: Missing or expired access token
- `403`: The access token lacks `rlusd_customers:read`, or Ripple holds no RLUSD customer record for your tenant at all (`FORBIDDEN`) - the tenant is not entitled to this API. Settled rather than transient; raise it with your Ripple contact rather than retrying.
- `404`: There is no bank to return - no active default bank account on file, no link from it to a Ripple receiving bank, or a linked bank that cannot be paid (`STABLECOIN_BANK_DETAILS_NOT_FOUND`). Distinct from the `403` by status alone: the customer exists, but has no Ripple bank linked yet. Also settled rather than transient.
- `500`: Unexpected server error
- `502`: An upstream system Ripple depends on could not be reached (`UPSTREAM_UNAVAILABLE`). Safe to retry: these are reads with no side effects, and the one write that returns it — `createFiatInstruction` — is idempotent on `id`.

## Changes

- **2026-09-18** `6db752579872`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/ripple/apis/ripple-mint-api/changes/v1/stablecoin/fiat-bank-details/get.md)

---

[API](https://skmtc.dev/ripple/apis/ripple-mint-api.md) - [All operations](https://skmtc.dev/ripple/apis/ripple-mint-api/llms.txt) - [OpenAPI document](https://skmtc.dev/ripple/apis/ripple-mint-api/revisions/6db752579872?raw)
