---
updatedAt: 2026-08-04T10:07:42.000Z
agentTools:
  projectIndex: https://docs.fiatrepublic.com/llms.txt
---

# Required Bank Details for Payees

This guide outlines the mandatory and optional information required when creating different types of payees via the API. The required `bankDetails` depend on the currency and the payment schemes you intend to use.

## General Requirements for All Payees

The following fields are required for **all** payee types, regardless of currency or payment scheme:

| Field           | Description                                                                                            | Data Type                   | Required? |
| :-------------- | :----------------------------------------------------------------------------------------------------- | :-------------------------- | :-------- |
| `type`          | The type of payee.                                                                                     | `BUSINESS` or `PERSON`      | **Yes**   |
| `name`          | The full legal name of the person or business.                                                         | String                      | **Yes**   |
| `currency`      | The currency of the payee's bank account.                                                              | ISO 4217 Code (e.g., `GBP`) | **Yes**   |
| `address`       | The full postal address of the payee.                                                                  | Object                      | **Yes**   |
| `address.state` | Please note that state field is required for entity with address in CA and US - regardless of currency | String                      | **Yes**   |

***

## Bank Details by Currency

### **GBP Payees**

#### FPS and CHAPS

For making payments via UK domestic rails (`FPS` and `CHAPS`).

| Field                          | Description                                      | Data Type | Required? |
| :----------------------------- | :----------------------------------------------- | :-------- | :-------- |
| `bankDetails.accountNumber`    | The 8-digit UK bank account number.              | String    | **Yes**   |
| `bankDetails.routingCodeType`  | The type of routing code. Must be `"SORT_CODE"`. | String    | **Yes**   |
| `bankDetails.routingCodeValue` | The 6-digit UK Sort Code.                        | String    | **Yes**   |

### **EUR Payees (SEPA)**

#### SEPA

For making payments via SEPA rails (`SCT` and `SEPA Instant`).

| Field              | Description                                | Data Type | Required? |
| :----------------- | :----------------------------------------- | :-------- | :-------- |
| `bankDetails.iban` | The International Bank Account Number.     | String    | **Yes**   |
| `bankDetails.bic`  | The Business Identifier Code (SWIFT code). | String    | **Yes**   |

### **CHF Payees**

#### SIC

For making payments via Swiss payment rails (`SIC_ACH` and `SIC_RTGS`).

| Field                     | Description                                | Data Type                   | Required?                                         |
| :------------------------ | :----------------------------------------- | :-------------------------- | :------------------------------------------------ |
| `bankDetails.iban`        | The International Bank Account Number.     | String                      | **Yes**                                           |
| `bankDetails.bic`         | The Business Identifier Code (SWIFT code). | String                      | No (Optional)                                     |
| `bankDetails.bankCountry` | Country of the beneficiary's bank.         | String (ISO 3166-1 alpha-2) | No (Optional - Derived from IBAN if not provided) |

### **DKK Payees**

#### KRONOS2 and TIPS

For making payments via Danish payment rails (`KRONOS2` and `TIPS`).

| Field              | Description                            | Data Type | Required? |
| :----------------- | :------------------------------------- | :-------- | :-------- |
| `bankDetails.iban` | The International Bank Account Number. | String    | **Yes**   |

### **SEK Payees**

#### RIX

For making payments via Swedish payment rails (`RIX`).

| Field              | Description                            | Data Type | Required? |
| :----------------- | :------------------------------------- | :-------- | :-------- |
| `bankDetails.iban` | The International Bank Account Number. | String    | **Yes**   |

### **AUD Payees (Australia)**

#### Direct Entry

For making payments via the Australian `Direct Entry` and `NPP` rail.

| Field                          | Description                                            | Data Type | Required? |
| :----------------------------- | :----------------------------------------------------- | :-------- | :-------- |
| `bankDetails.accountNumber`    | The Australian bank account number.                    | String    | **Yes**   |
| `bankDetails.routingCodeType`  | The type of routing code. Must be `"BSB"`.             | String    | **Yes**   |
| `bankDetails.routingCodeValue` | The 6-digit Australian Bank-State-Branch (BSB) number. | String    | **Yes**   |

## **USD Payees**

### International Wire

##### I. Beneficiary Bank Details (USD)

<Table align={["left","left","left","left"]}>
  <thead>
    <tr>
      <th>
        Field Name
      </th>

      <th>
        Description
      </th>

      <th>
        Data Type
      </th>

      <th>
        Required?
      </th>
    </tr>
  </thead>

  <tbody>
    <tr>
      <td>
        **Account Identification**
      </td>

      <td>

      </td>

      <td>

      </td>

      <td>
        **One of the following combinations is Required:**
      </td>
    </tr>

    <tr>
      <td>
        `bankDetails.iban`
      </td>

      <td>
        International Bank Account Number.
      </td>

      <td>
        String
      </td>

      <td>
        **Yes** (if `accountNumber` is not provided)
      </td>
    </tr>

    <tr>
      <td>
        `bankDetails.accountNumber`
      </td>

      <td>
        The account number.
      </td>

      <td>
        String
      </td>

      <td>
        **Yes** (if `iban` is not provided)
      </td>
    </tr>

    <tr>
      <td>
        `bankDetails.bic`
      </td>

      <td>
        Bank Identifier Code (SWIFT BIC).
      </td>

      <td>
        String
      </td>

      <td>
        **Yes** (used with either `iban` or `accountNumber`)
      </td>
    </tr>

    <tr>
      <td>
        ***
      </td>

      <td>
        ***
      </td>

      <td>
        ***
      </td>

      <td>
        ***
      </td>
    </tr>

    <tr>
      <td>
        `bankDetails.bankName`
      </td>

      <td>
        Name of the beneficiary's bank.
      </td>

      <td>
        String
      </td>

      <td>
        **Yes**
      </td>
    </tr>

    <tr>
      <td>
        `bankDetails.bankAddressLine1`
      </td>

      <td>
        Address line 1 of the beneficiary's bank.
      </td>

      <td>
        String
      </td>

      <td>
        **Yes**
      </td>
    </tr>

    <tr>
      <td>
        `bankDetails.bankAddressCity`
      </td>

      <td>
        City of the beneficiary's bank.
      </td>

      <td>
        String
      </td>

      <td>
        **Yes**
      </td>
    </tr>

    <tr>
      <td>
        `bankDetails.bankAddressPostalCode`
      </td>

      <td>
        Postal code of the beneficiary's bank.
      </td>

      <td>
        String
      </td>

      <td>
        **Yes**
      </td>
    </tr>

    <tr>
      <td>
        `bankDetails.bankCountry`
      </td>

      <td>
        Country of the beneficiary's bank.
      </td>

      <td>
        String (ISO 3166-1 alpha-2)
      </td>

      <td>
        **Yes** (if `bankAddressCountry` is not provided and it cannot be resolved by other bank details)
      </td>
    </tr>

    <tr>
      <td>
        `bankDetails.bankAddressCountry`
      </td>

      <td>
        Country component of the beneficiary's bank address.
      </td>

      <td>
        String (ISO 3166-1 alpha-2)
      </td>

      <td>
        **Yes** (if `bankCountry` is not provided and it cannot be resolved by other bank details)
      </td>
    </tr>

    <tr>
      <td>
        `bankDetails.routingCodes`
      </td>

      <td>
        For USD, the ABA code of the Receiving Bank's US Correspondent is required. Please contact the sending bank if this ABA code isn't immediately available.

        _Example :_`[{"type": "ABA", "value": "021000021"}]`
      </td>

      <td>
        Object or Array
      </td>

      <td>
        **Yes**
      </td>
    </tr>

    <tr>
      <td>
        `bankDetails.routingCodes.type`
      </td>

      <td>
        Type of the routing code, e.g. `ABA`
      </td>

      <td>
        String
      </td>

      <td>
        **Yes**
      </td>
    </tr>

    <tr>
      <td>
        `bankDetails.routingCodes.value`
      </td>

      <td>
        Value of the routing code
      </td>

      <td>
        String
      </td>

      <td>
        **Yes**
      </td>
    </tr>
  </tbody>
</Table>

**Note on Account Identification:** For USD bank details, you must provide either:

* (`bankDetails.iban` , `bankDetails.bic` AND `bankDetails.routingCodes` ) OR
* (`bankDetails.accountNumber` , `bankDetails.bic` AND `bankDetails.routingCodes` ).

**Note on Bank Country:** For USD bank details, at least one of `bankDetails.bankCountry` OR `bankDetails.bankAddressCountry` must also be provided.

##### II. Intermediary Bank Details (USD)

These fields are **required for USD International Wire payments if**`bankDetails.intermediaryBicSwift`**&#x20;is provided.**

| Field Name                                      | Type                        | Requirement (if `intermediaryBicSwift` is provided for USD) | Description                              |
| ----------------------------------------------- | --------------------------- | ----------------------------------------------------------- | ---------------------------------------- |
| `bankDetails.intermediaryBicSwift`              | String                      | (Trigger field for below requirements)                      | SWIFT BIC of the intermediary bank.      |
| `bankDetails.intermediaryBankName`              | String                      | **Yes**                                                     | Name of the intermediary bank.           |
| `bankDetails.intermediaryBankAddressLine1`      | String                      | **Yes**                                                     | Address line 1 of the intermediary bank. |
| `bankDetails.intermediaryBankAddressCity`       | String                      | **Yes**                                                     | City of the intermediary bank.           |
| `bankDetails.intermediaryBankAddressPostalCode` | String                      | **Yes**                                                     | Postal code of the intermediary bank.    |
| `bankDetails.intermediaryBankAddressCountry`    | String (ISO 3166-1 alpha-2) | **Yes**                                                     | Country of the intermediary bank.        |

### ACH

For making payments via ACH rails ( `ACH` and `ACH_SAME_DAY`).

<Table align={["left","left","left","left"]}>
  <thead>
    <tr>
      <th>
        Field
      </th>

      <th>
        Description
      </th>

      <th>
        Data Type
      </th>

      <th>
        Required?
      </th>
    </tr>
  </thead>

  <tbody>
    <tr>
      <td>
        `bankDetails.accountNumber`
      </td>

      <td>
        Bank Account Number.
      </td>

      <td>
        String
      </td>

      <td>
        **Yes**
      </td>
    </tr>

    <tr>
      <td>
        `bankDetails.accountType`
      </td>

      <td>
        Us Account Type (CHECKING/SAVINGS).
      </td>

      <td>
        String
      </td>

      <td>
        **Yes**
      </td>
    </tr>

    <tr>
      <td>
        `bankDetails.routingCodes`
      </td>

      <td>
        For USD, the ABA (RTN) code of the US Recipient  Bank is required.

        _Example :_`[{"type": "ABA", "value": "021000021"}]`
      </td>

      <td>
        Object or Array
      </td>

      <td>
        **Yes**
      </td>
    </tr>

    <tr>
      <td>
        `bankDetails.routingCodes.type`
      </td>

      <td>
        Type of the routing code, e.g. `ABA`
      </td>

      <td>
        String
      </td>

      <td>
        **Yes**
      </td>
    </tr>

    <tr>
      <td>
        `bankDetails.routingCodes.value`
      </td>

      <td>
        Valid nine digit US ABA Routing Transit Number.
      </td>

      <td>
        String
      </td>

      <td>
        **Yes**
      </td>
    </tr>
  </tbody>
</Table>

### Domestic WIRE

For making payments via FedWire rails.

<Table align={["left","left","left","left"]}>
  <thead>
    <tr>
      <th>
        Field
      </th>

      <th>
        Description
      </th>

      <th>
        Data Type
      </th>

      <th>
        Required?
      </th>
    </tr>
  </thead>

  <tbody>
    <tr>
      <td>
        `bankDetails.accountNumber`
      </td>

      <td>
        Bank Account Number.
      </td>

      <td>
        String
      </td>

      <td>
        **Yes**
      </td>
    </tr>

    <tr>
      <td>
        `bankDetails.routingCodes`
      </td>

      <td>
        For USD, the WIRE (RTN) code of the US Recipient  Bank is required.

        _Example :_`[{"type": "WIRE", "value": "021000021"}]`
      </td>

      <td>
        Object or Array
      </td>

      <td>
        **Yes**
      </td>
    </tr>

    <tr>
      <td>
        `bankDetails.routingCodes.type`
      </td>

      <td>
        Type of the routing code, e.g. `WIRE`
      </td>

      <td>
        String
      </td>

      <td>
        **Yes**
      </td>
    </tr>

    <tr>
      <td>
        `bankDetails.routingCodes.value`
      </td>

      <td>
        Valid nine digit US ABA Routing Transit Number.
      </td>

      <td>
        String
      </td>

      <td>
        **Yes**
      </td>
    </tr>

    <tr>
      <td>
        `bankDetails.bankName`
      </td>

      <td>
        Name of the beneficiary's bank.
      </td>

      <td>
        String
      </td>

      <td>
        **Yes**
      </td>
    </tr>
  </tbody>
</Table>

***

## Special Case: Payees for CHAPS Payments with Purpose Codes

When making a CHAPS payment to Financial Institution, you must provide additional structured data - **LEI code** - within the `paymentSchemeDetails` object **at the time of payment initiation**. These fields are **not** part of the payee creation itself, but are required for the payment. You can find the details [here](https://docs.fiatrepublic.com/docs/payee-for-chaps-payment-with-purpose-codes#/)

| Field                                      | Description                                              | Data Type | Required for CHAPS? |
| :----------------------------------------- | :------------------------------------------------------- | :-------- | :------------------ |
| `paymentSchemeDetails.scheme`              | The payment scheme. Must be `"CHAPS"`.                   | String    | **Yes**             |
| `paymentSchemeDetails.purposeCode`         | The specific 4-letter code for the payment's purpose.    | String    | **Yes**             |
| `paymentSchemeDetails.categoryPurposeCode` | The broader 4-letter category for the payment's purpose. | String    | **Yes**             |