---
updatedAt: 2026-09-30T17:50:34.112Z
---

Fetch the complete documentation index at: https://docs.avvio.xyz/llms.txt. Use this file to discover all available pages before exploring further. Append .md to any documentation page URL to get its markdown version.

# Recipient details by country

The bank details a recipient needs in each country, from the field specs `POST /recipients/{orgId}` validates against. Each example sends the required fields (plus an account identifier where a field set marks none required), with values shaped to pass each `pattern`; they are not real accounts.

> **Build the form from the API, not from this page:** Field names depend on how your organization is routed, so a few countries have a second field set. Yours is the one `GET /recipients/{orgId}/corridors` returns, and a form built from it keeps working after a re-route.

## Purpose of payment

Payouts to `BRL`, `CNY`, `GHS`, `INR` are refused without `purposeOfPayment`; elsewhere it is optional. Read the accepted values from `GET /payments/organizations/{orgId}/payment-reasons?currency=`. Most organizations, and every test key, get these:

| Value | Meaning |
| --- | --- |
| `FAMILY_SUPPORT` | Family support |
| `GIFT` | Gift |
| `SELF` | Sending to myself |
| `EDUCATION` | Education fees |
| `HEALTH_OR_MEDICAL` | Health or medical |
| `UTILITY_BILL` | Utility bill |
| `LOAN_PAYMENT` | Loan repayment |
| `GOODS_OR_SERVICES` | Goods or services |
| `SALARY_PAYMENT` | Salary or wages |
| `REAL_ESTATE_PURCHASE` | Real estate purchase |
| `TAX_PAYMENT` | Tax payment |
| `DONATION` | Donation |
| `TRAVEL` | Travel |
| `OTHER` | Something else |

Other purpose values

Some organizations get this list instead; `payment-reasons` returns the one that applies to you.

| Value | Meaning |
| --- | --- |
| `charitable_contributions` | Charitable Contributions |
| `education_fees` | Education Fees |
| `employee_salaries_or_wages` | Employee Salaries or Wages |
| `gifts` | Gifts |
| `investments` | Investments |
| `purchase_of_goods` | Purchase of Goods |
| `purchase_of_services` | Purchase of Services |
| `personal_transfers` | Personal Transfers |
| `rent` | Rent |
| `loans` | Loans |
| `utility_bills` | Utility Bills |
| `family_support` | Family Support |
| `friends_support` | Friends Support |
| `real_estate` | Real Estate |
| `insurance` | Insurance |
| `intercompany_transfer` | Intercompany Transfer |
| `taxes` | Taxes |
| `travel` | Travel |

## North America

### Canada: CAD

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `bankCode`<br>Bank Code | Yes | `^[0-9]{3}$` | Canadian financial institution number (3 digits). |
| `branchCode`<br>Branch Code | Yes | `^[0-9]{5}$` | Transit number identifying the branch (5 digits). |
| `accountNumber`<br>Account Number | Yes | `^[0-9]{7,12}$` | Bank account number (7-12 digits). |

```json title="POST /recipients/{orgId}"
{
  "type": "individual",
  "name": "María González",
  "country": "CA",
  "method": {
    "kind": "fiat",
    "currency": "CAD",
    "recipientDetails": {
      "bankCode": "012",
      "branchCode": "01234",
      "accountNumber": "0123456"
    }
  }
}
```

Other ways to pay this country

Some organizations are served this field set instead. You have it if `/corridors` returns `account_number`, `institution_number`, `transit_number`, `bank_name`.

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `account_number`<br>Account number | Yes | `^[a-zA-Z0-9]+$` | — |
| `institution_number`<br>Institution number | Yes | `^[0-9]{3}$` | — |
| `transit_number`<br>Transit number | Yes | `^[\d-]{5,10}$` | — |
| `bank_name`<br>Bank name | Yes | `^.{2,}$` | One of 34 values, listed in the field's `options`. |

### United States: USD

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `account_number`<br>Account Number | Yes | `^[0-9]{4,21}$` | — |
| `routing_number`<br>ACH Routing Number | Yes | `^[0-9]{9}$` | — |
| `line1`<br>Recipient address line 1 | Yes | `^[\w #@!,.&()\/\\-]{1,250}$` | — |
| `city`<br>Recipient city | Yes | `^[\w #@!,.&()\/\\-]{1,150}$` | — |
| `state`<br>Recipient state / province | Yes | enum | One of 56 values, listed in the field's `options`. |
| `postal_code`<br>Recipient postal code | Yes | `^[a-zA-Z0-9\s-]{3,10}$` | — |

```json title="POST /recipients/{orgId}"
{
  "type": "individual",
  "name": "María González",
  "country": "US",
  "method": {
    "kind": "fiat",
    "currency": "USD",
    "recipientDetails": {
      "account_number": "0123",
      "routing_number": "012345678",
      "line1": "<Recipient address line 1>",
      "city": "<Recipient city>",
      "state": "AL",
      "postal_code": "<Recipient postal code>"
    }
  }
}
```

## Latin America and the Caribbean

### Argentina: ARS

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `cbu`<br>Cbu | Yes | `^[0-9]{22}$` | — |
| `phone`<br>Phone | Yes | `^[0-9+()\-\s]{1,50}$` | — |
| `tax_number`<br>Tax number | Yes | — | — |
| `bank_name`<br>Bank name | Yes | — | — |
| `line1`<br>Recipient address line 1 | Yes | `^[A-Za-z0-9\s-]{1,200}$` | — |
| `city`<br>Recipient city | Yes | — | — |
| `state`<br>Recipient state / province | Yes | — | — |
| `postal_code`<br>Recipient postal code | Yes | — | — |

```json title="POST /recipients/{orgId}"
{
  "type": "individual",
  "name": "María González",
  "country": "AR",
  "method": {
    "kind": "fiat",
    "currency": "ARS",
    "recipientDetails": {
      "cbu": "0123456789012345678901",
      "phone": "<Phone>",
      "tax_number": "<Tax number>",
      "bank_name": "<Bank name>",
      "line1": "<Recipient address line 1>",
      "city": "<Recipient city>",
      "state": "<Recipient state / province>",
      "postal_code": "<Recipient postal code>"
    }
  }
}
```

### Brazil: BRL

A payout needs `purposeOfPayment` ([values](#purpose-of-payment)).

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `pixKey`<br>Pix Key | Yes | — | The PIX key (email, phone, CPF, CNPJ, or random). |
| `pixKeyType`<br>Pix Key Type | Yes | enum | The type of PIX key. One of `CPF`, `CNPJ`, `EMAIL`, `PHONE`, `RANDOM`. |
| `taxId`<br>Tax Id | Yes | `^[0-9]{11,14}$` | The tax ID (CPF or CNPJ). |

```json title="POST /recipients/{orgId}"
{
  "type": "individual",
  "name": "María González",
  "country": "BR",
  "method": {
    "kind": "fiat",
    "currency": "BRL",
    "recipientDetails": {
      "pixKey": "<Pix Key>",
      "pixKeyType": "CPF",
      "taxId": "01234567890"
    }
  }
}
```

Other ways to pay this country

Some organizations are served this field set instead. You have it if `/corridors` returns `email`, `pix_key`, `pix_key_type`.

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `email`<br>Email | Yes | — | — |
| `pix_key`<br>Pix key | Yes | `^.{1,100}$` | — |
| `pix_key_type`<br>Pix key type | Yes | enum | One of `cpf`, `cnpj`, `email`, `phone`, `evp`. |

Sandbox fields

A test key is served these fields.

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `accountNumber`<br>Account number | Yes | `^[0-9]{6,18}$` | — |

### Colombia: COP

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `accountNumber`<br>Account Number | No | — | The account number of the bank. |
| `bankAccountType`<br>Bank Account Type | No | enum | The bank account type. One of `CHECKING`, `SAVINGS`. |
| `bankName`<br>Bank Name | Yes | — | The name of the bank. |
| `phoneNumber`<br>Phone Number | No | `^\+[0-9]{6,14}$` | The phone number in international format. |

Every account identifier in this field set is marked optional, but a payout needs one, so the example adds `accountNumber`. Send the identifiers your recipient's bank uses.

```json title="POST /recipients/{orgId}"
{
  "type": "individual",
  "name": "María González",
  "country": "CO",
  "method": {
    "kind": "fiat",
    "currency": "COP",
    "recipientDetails": {
      "bankName": "<Bank Name>",
      "accountNumber": "<Account Number>"
    }
  }
}
```

Sandbox fields

A test key is served these fields.

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `accountNumber`<br>Account number | Yes | `^[0-9]{6,18}$` | — |

### Guatemala: GTQ

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `accountNumber`<br>Account Number | Yes | — | The account number of the bank. |
| `bankAccountType`<br>Bank Account Type | Yes | enum | The bank account type. One of `CHECKING`, `SAVINGS`. |
| `bankName`<br>Bank Name | Yes | — | The name of the beneficiary's bank. |

An `individual` recipient here also needs `country` (their country of residence) and `phone`.

```json title="POST /recipients/{orgId}"
{
  "type": "individual",
  "name": "María González",
  "country": "GT",
  "phone": "+50212345678",
  "method": {
    "kind": "fiat",
    "currency": "GTQ",
    "recipientDetails": {
      "accountNumber": "<Account Number>",
      "bankAccountType": "CHECKING",
      "bankName": "<Bank Name>"
    }
  }
}
```

### Haiti: HTG

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `phoneNumber`<br>Phone Number | Yes | `^\+[0-9]{6,14}$` | The phone number in international format. |

```json title="POST /recipients/{orgId}"
{
  "type": "individual",
  "name": "María González",
  "country": "HT",
  "method": {
    "kind": "fiat",
    "currency": "HTG",
    "recipientDetails": {
      "phoneNumber": "+012345"
    }
  }
}
```

### Jamaica: JMD

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `accountNumber`<br>Account Number | Yes | — | The account number of the bank. |
| `branchCode`<br>Branch Code | Yes | `^[0-9]{5}$` | The branch code. |
| `bankAccountType`<br>Bank Account Type | Yes | enum | The bank account type. One of `CHECKING`, `SAVINGS`. |
| `bankName`<br>Bank Name | Yes | — | The name of the bank. |
| `line1`<br>Recipient address line 1 | Individual recipients | — | — |
| `line2`<br>Recipient address line 2 | No | — | — |
| `city`<br>Recipient city | No | — | — |
| `state`<br>Recipient state / province | No | — | — |
| `postal_code`<br>Recipient postal code | Individual recipients | — | — |
| `country`<br>Recipient country | No | `^[A-Za-z]{2}$` | Two-letter country code. Defaults to the corridor country. |

An `individual` recipient here also needs their address (the fields marked "Individual recipients" above) and `phone`.

```json title="POST /recipients/{orgId}"
{
  "type": "individual",
  "name": "María González",
  "country": "JM",
  "phone": "+50212345678",
  "method": {
    "kind": "fiat",
    "currency": "JMD",
    "recipientDetails": {
      "accountNumber": "<Account Number>",
      "branchCode": "01234",
      "bankAccountType": "CHECKING",
      "bankName": "<Bank Name>",
      "line1": "<Recipient address line 1>",
      "postal_code": "<Recipient postal code>"
    }
  }
}
```

### Mexico: MXN

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `clabeNumber`<br>Clabe Number | Yes | `^[0-9]{18}$` | The CLABE number of the bank. Check digit enforced (`checksum: "clabe"`); see [Register recipients](/recipients/). |

```json title="POST /recipients/{orgId}"
{
  "type": "individual",
  "name": "María González",
  "country": "MX",
  "method": {
    "kind": "fiat",
    "currency": "MXN",
    "recipientDetails": {
      "clabeNumber": "012180000080004471"
    }
  }
}
```

Other ways to pay this country

Some organizations are served this field set instead. You have it if `/corridors` returns `clabe`.

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `clabe`<br>Clabe | Yes | `^[0-9]{18}$` | Check digit enforced (`checksum: "clabe"`); see [Register recipients](/recipients/). |

Sandbox fields

A test key is served these fields.

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `clabeNumber`<br>CLABE | Yes | `^[0-9]{18}$` | Check digit enforced (`checksum: "clabe"`); see [Register recipients](/recipients/). |

## Europe

### Denmark: DKK

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `iban`<br>Iban | Yes | `^DK[0-9]{16}$` | Danish IBAN (18 characters, starting with DK). |
| `swiftCode`<br>Swift Code | No | `^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$` | The SWIFT/BIC code of the bank. |

```json title="POST /recipients/{orgId}"
{
  "type": "individual",
  "name": "María González",
  "country": "DK",
  "method": {
    "kind": "fiat",
    "currency": "DKK",
    "recipientDetails": {
      "iban": "DK5823456789012345"
    }
  }
}
```

### Eurozone (SEPA): EUR

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `iban`<br>Iban | Yes | `^[A-Z]{2}[0-9]{2}[A-Za-z0-9]{11,30}$` | The IBAN of the bank account. |
| `swiftCode`<br>Swift Code | No | `^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$` | The SWIFT/BIC code of the bank. |

An `individual` recipient here also needs `country` (their country of residence, not `EU`).

```json title="POST /recipients/{orgId}"
{
  "type": "individual",
  "name": "María González",
  "country": "DE",
  "method": {
    "kind": "fiat",
    "currency": "EUR",
    "recipientDetails": {
      "iban": "DE89370400440532013000"
    }
  }
}
```

Other ways to pay this country

Some organizations are served this field set instead. You have it if `/corridors` returns `account_number`, `line1`, `city`, `postal_code`.

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `account_number`<br>IBAN | Yes | `^[A-Z]{2}[0-9]{2}[A-Z0-9]{11,30}$` | — |
| `line1`<br>Recipient address line 1 | Yes | `^.{2,100}$` | — |
| `city`<br>Recipient city | Yes | — | — |
| `country`<br>Recipient country | No | enum | One of 252 values, listed in the field's `options`. |
| `postal_code`<br>Recipient postal code | Yes | — | — |

Sandbox fields

A test key is served these fields.

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `iban`<br>IBAN | Yes | `^[A-Z]{2}[0-9A-Z]{13,32}$` | — |

### United Kingdom: GBP

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `sortCode`<br>Sort Code | Yes | `^[0-9]{6}$` | The UK sort code. |
| `accountNumber`<br>Account Number | Yes | `^[0-9]{8}$` | UK bank account number (8 digits). |

```json title="POST /recipients/{orgId}"
{
  "type": "individual",
  "name": "María González",
  "country": "GB",
  "method": {
    "kind": "fiat",
    "currency": "GBP",
    "recipientDetails": {
      "sortCode": "012345",
      "accountNumber": "01234567"
    }
  }
}
```

Other ways to pay this country

Some organizations are served this field set instead. You have it if `/corridors` returns `account_number`, `sort_code`, `line1`, `city`, `postal_code`.

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `account_number`<br>Account number | Yes | `^[0-9]{8}$` | — |
| `sort_code`<br>Sort code | Yes | `^[0-9]{6}$` | — |
| `line1`<br>Recipient address line 1 | Yes | `^.{1,100}$` | — |
| `city`<br>Recipient city | Yes | `^.{1,100}$` | — |
| `postal_code`<br>Recipient postal code | Yes | — | — |

Sandbox fields

A test key is served these fields.

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `accountNumber`<br>Account number | Yes | `^[0-9]{8}$` | — |

## Middle East and Africa

### Botswana: BWP

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `phoneNumber`<br>Phone Number | Yes | `^\+[0-9]{6,14}$` | The phone number in international format. |
| `provider`<br>Provider | Yes | — | The mobile money provider name. |

```json title="POST /recipients/{orgId}"
{
  "type": "individual",
  "name": "María González",
  "country": "BW",
  "method": {
    "kind": "fiat",
    "currency": "BWP",
    "recipientDetails": {
      "phoneNumber": "+012345",
      "provider": "<Provider>"
    }
  }
}
```

### Central African CFA zone: XAF

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `phoneNumber`<br>Phone Number | Yes | `^\+[0-9]{6,14}$` | The phone number in international format. |
| `provider`<br>Provider | Yes | — | The mobile money provider name. |
| `region`<br>Region | Yes | `^[A-Z]{2}$` | Country code within the Central African CFA franc zone. One of `CM`, `CG`. |

```json title="POST /recipients/{orgId}"
{
  "type": "individual",
  "name": "María González",
  "country": "CM",
  "method": {
    "kind": "fiat",
    "currency": "XAF",
    "recipientDetails": {
      "phoneNumber": "+012345",
      "provider": "<Provider>",
      "region": "CM"
    }
  }
}
```

### Egypt: EGP

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `iban`<br>Iban | No | `^EG[0-9]{27}$` | Egyptian IBAN (29 characters, starting with EG). |
| `bankName`<br>Bank Name | Yes | — | The name of the bank. |
| `phoneNumber`<br>Phone Number | No | `^\+[0-9]{6,14}$` | The phone number in international format. |
| `line1`<br>Recipient address line 1 | Business recipients | — | — |
| `line2`<br>Recipient address line 2 | No | — | — |
| `city`<br>Recipient city | No | — | — |
| `state`<br>Recipient state / province | No | — | — |
| `postal_code`<br>Recipient postal code | Business recipients | — | — |
| `country`<br>Recipient country | No | `^[A-Za-z]{2}$` | Two-letter country code. Defaults to the corridor country. |

Every account identifier in this field set is marked optional, but a payout needs one, so the example adds `iban`. Send the identifiers your recipient's bank uses.

A `business` recipient here also needs an address: the fields marked "Business recipients" above.

```json title="POST /recipients/{orgId}"
{
  "type": "individual",
  "name": "María González",
  "country": "EG",
  "method": {
    "kind": "fiat",
    "currency": "EGP",
    "recipientDetails": {
      "bankName": "<Bank Name>",
      "iban": "EG382345678901234567890123456"
    }
  }
}
```

### Ghana: GHS

A payout needs `purposeOfPayment` ([values](#purpose-of-payment)).

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `accountNumber`<br>Account Number | No | — | The account number of the bank. |
| `bankName`<br>Bank Name | Yes | — | The name of the bank. |
| `phoneNumber`<br>Phone Number | No | `^\+[0-9]{6,14}$` | The phone number in international format. |

Every account identifier in this field set is marked optional, but a payout needs one, so the example adds `accountNumber`. Send the identifiers your recipient's bank uses.

```json title="POST /recipients/{orgId}"
{
  "type": "individual",
  "name": "María González",
  "country": "GH",
  "method": {
    "kind": "fiat",
    "currency": "GHS",
    "recipientDetails": {
      "bankName": "<Bank Name>",
      "accountNumber": "<Account Number>"
    }
  }
}
```

### Kenya: KES

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `phoneNumber`<br>Phone Number | Yes | `^\+254[0-9]{9}$` | Kenyan mobile money phone number. |
| `provider`<br>Provider | Yes | — | The mobile money provider name. |

```json title="POST /recipients/{orgId}"
{
  "type": "individual",
  "name": "María González",
  "country": "KE",
  "method": {
    "kind": "fiat",
    "currency": "KES",
    "recipientDetails": {
      "phoneNumber": "+254012345678",
      "provider": "<Provider>"
    }
  }
}
```

### Malawi: MWK

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `phoneNumber`<br>Phone Number | Yes | `^\+[0-9]{6,14}$` | The phone number in international format. |
| `provider`<br>Provider | Yes | — | The mobile money provider name. |

```json title="POST /recipients/{orgId}"
{
  "type": "individual",
  "name": "María González",
  "country": "MW",
  "method": {
    "kind": "fiat",
    "currency": "MWK",
    "recipientDetails": {
      "phoneNumber": "+012345",
      "provider": "<Provider>"
    }
  }
}
```

### Nigeria: NGN

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `accountNumber`<br>Account Number | Yes | `^[0-9]{10}$` | Nigerian bank account number. |
| `bankName`<br>Bank Name | Yes | — | The name of the bank. |

```json title="POST /recipients/{orgId}"
{
  "type": "individual",
  "name": "María González",
  "country": "NG",
  "method": {
    "kind": "fiat",
    "currency": "NGN",
    "recipientDetails": {
      "accountNumber": "0123456789",
      "bankName": "<Bank Name>"
    }
  }
}
```

Other ways to pay this country

Some organizations are served this field set instead. You have it if `/corridors` returns `account_number`, `bank_code`.

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `account_number`<br>Account number (NUBAN) | Yes | `^[0-9]{10}$` | — |
| `bank_code`<br>Bank | Yes | enum | One of 20 values, listed in the field's `options`. |

Sandbox fields

A test key is served these fields.

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `accountNumber`<br>Account number | Yes | `^[0-9]{6,18}$` | — |

### Rwanda: RWF

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `phoneNumber`<br>Phone Number | Yes | `^\+250[0-9]{9}$` | Rwandan mobile money phone number. |
| `provider`<br>Provider | Yes | — | The mobile money provider name. |

```json title="POST /recipients/{orgId}"
{
  "type": "individual",
  "name": "María González",
  "country": "RW",
  "method": {
    "kind": "fiat",
    "currency": "RWF",
    "recipientDetails": {
      "phoneNumber": "+250012345678",
      "provider": "<Provider>"
    }
  }
}
```

### South Africa: ZAR

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `accountNumber`<br>Account Number | Yes | `^[0-9]{9,13}$` | South African bank account number. |
| `bankName`<br>Bank Name | Yes | — | The name of the bank. |

```json title="POST /recipients/{orgId}"
{
  "type": "individual",
  "name": "María González",
  "country": "ZA",
  "method": {
    "kind": "fiat",
    "currency": "ZAR",
    "recipientDetails": {
      "accountNumber": "012345678",
      "bankName": "<Bank Name>"
    }
  }
}
```

### Tanzania: TZS

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `phoneNumber`<br>Phone Number | Yes | `^\+255[0-9]{9}$` | Tanzanian mobile money phone number. |
| `provider`<br>Provider | Yes | — | The mobile money provider name. |

```json title="POST /recipients/{orgId}"
{
  "type": "individual",
  "name": "María González",
  "country": "TZ",
  "method": {
    "kind": "fiat",
    "currency": "TZS",
    "recipientDetails": {
      "phoneNumber": "+255012345678",
      "provider": "<Provider>"
    }
  }
}
```

### Uganda: UGX

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `phoneNumber`<br>Phone Number | Yes | `^\+[0-9]{6,14}$` | The phone number in international format. |
| `provider`<br>Provider | Yes | — | The mobile money provider name. |

```json title="POST /recipients/{orgId}"
{
  "type": "individual",
  "name": "María González",
  "country": "UG",
  "method": {
    "kind": "fiat",
    "currency": "UGX",
    "recipientDetails": {
      "phoneNumber": "+012345",
      "provider": "<Provider>"
    }
  }
}
```

### United Arab Emirates: AED

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `iban`<br>Iban | Yes | `^AE[0-9]{21}$` | UAE IBAN (23 characters, starting with AE). |
| `swiftCode`<br>Swift Code | No | `^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$` | The SWIFT/BIC code of the bank. |
| `line1`<br>Recipient address line 1 | Yes | — | — |
| `line2`<br>Recipient address line 2 | No | — | — |
| `city`<br>Recipient city | No | — | — |
| `state`<br>Recipient state / province | No | — | — |
| `postal_code`<br>Recipient postal code | Yes | — | — |
| `country`<br>Recipient country | No | `^[A-Za-z]{2}$` | Two-letter country code. Defaults to the corridor country. |

Every recipient here needs an address: the address fields above.

```json title="POST /recipients/{orgId}"
{
  "type": "individual",
  "name": "María González",
  "country": "AE",
  "method": {
    "kind": "fiat",
    "currency": "AED",
    "recipientDetails": {
      "iban": "AE532345678901234567890",
      "line1": "<Recipient address line 1>",
      "postal_code": "<Recipient postal code>"
    }
  }
}
```

Other ways to pay this country

Some organizations are served this field set instead. You have it if `/corridors` returns `account_number`, `phone`, `line1`, `city`.

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `account_number`<br>IBAN | Yes | `^AE\d{2}\d{3}\d{16}$` | — |
| `phone`<br>Phone Number | Yes | `^\+?[0-9]{8,15}$` | — |
| `line1`<br>Recipient address line 1 | Yes | `^.{2,100}$` | — |
| `city`<br>Recipient city | Yes | — | — |

### West African CFA zone: XOF

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `phoneNumber`<br>Phone Number | Yes | `^\+[0-9]{6,14}$` | The phone number in international format. |
| `provider`<br>Provider | Yes | — | The mobile money provider name. |
| `region`<br>Region | Yes | `^[A-Z]{2}$` | Country code within the West African CFA franc zone. One of `BJ`, `CI`, `SN`, `TG`. |

```json title="POST /recipients/{orgId}"
{
  "type": "individual",
  "name": "María González",
  "country": "SN",
  "method": {
    "kind": "fiat",
    "currency": "XOF",
    "recipientDetails": {
      "phoneNumber": "+012345",
      "provider": "<Provider>",
      "region": "BJ"
    }
  }
}
```

### Zambia: ZMW

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `phoneNumber`<br>Phone Number | Yes | `^\+260[0-9]{9}$` | Zambian mobile money phone number. |
| `provider`<br>Provider | Yes | — | The mobile money provider name. |

```json title="POST /recipients/{orgId}"
{
  "type": "individual",
  "name": "María González",
  "country": "ZM",
  "method": {
    "kind": "fiat",
    "currency": "ZMW",
    "recipientDetails": {
      "phoneNumber": "+260012345678",
      "provider": "<Provider>"
    }
  }
}
```

## Asia-Pacific

### Bangladesh: BDT

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `accountNumber`<br>Account Number | No | — | The account number of the bank. |
| `bankName`<br>Bank Name | Yes | — | The name of the bank. |
| `branchCode`<br>Branch Code | No | `^[0-9]{5}$` | The branch code. |
| `swiftCode`<br>Swift Code | No | `^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$` | The SWIFT/BIC code of the bank. |
| `phoneNumber`<br>Phone Number | No | `^\+[0-9]{6,14}$` | The phone number in international format. |

Every account identifier in this field set is marked optional, but a payout needs one, so the example adds `accountNumber`. Send the identifiers your recipient's bank uses.

```json title="POST /recipients/{orgId}"
{
  "type": "individual",
  "name": "María González",
  "country": "BD",
  "method": {
    "kind": "fiat",
    "currency": "BDT",
    "recipientDetails": {
      "bankName": "<Bank Name>",
      "accountNumber": "<Account Number>"
    }
  }
}
```

### China: CNY

A payout needs `purposeOfPayment` ([values](#purpose-of-payment)).

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `accountNumber`<br>Account Number | No | — | The account number of the bank. |
| `bankName`<br>Bank Name | Yes | — | The name of the bank. |
| `phoneNumber`<br>Phone Number | No | `^\+[0-9]{6,14}$` | The phone number in international format. |
| `line1`<br>Recipient address line 1 | Business recipients | — | — |
| `line2`<br>Recipient address line 2 | No | — | — |
| `city`<br>Recipient city | No | — | — |
| `state`<br>Recipient state / province | No | — | — |
| `postal_code`<br>Recipient postal code | Business recipients | — | — |
| `country`<br>Recipient country | No | `^[A-Za-z]{2}$` | Two-letter country code. Defaults to the corridor country. |

Every account identifier in this field set is marked optional, but a payout needs one, so the example adds `accountNumber`. Send the identifiers your recipient's bank uses.

A `business` recipient here also needs an address: the fields marked "Business recipients" above.

```json title="POST /recipients/{orgId}"
{
  "type": "individual",
  "name": "María González",
  "country": "CN",
  "method": {
    "kind": "fiat",
    "currency": "CNY",
    "recipientDetails": {
      "bankName": "<Bank Name>",
      "accountNumber": "<Account Number>"
    }
  }
}
```

Other ways to pay this country

Some organizations are served this field set instead. You have it if `/corridors` returns `account_number`, `cnaps_code`, `id_number`, `line1`, `city`.

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `account_number`<br>Account number | Yes | `^[A-Za-z0-9]+$` | — |
| `cnaps_code`<br>Cnaps code | Yes | `^[0-9]{12}$` | — |
| `id_number`<br>Id number | Yes | `^.{2,100}$` | — |
| `line1`<br>Recipient address line 1 | Yes | `^.{2,100}$` | — |
| `city`<br>Recipient city | Yes | — | — |

### Hong Kong SAR China: HKD

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `bankName`<br>Bank Name | Yes | — | The name of the bank. |
| `accountNumber`<br>Account Number | Yes | — | Hong Kong bank account number. |
| `swiftCode`<br>Swift Code | Yes | `^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$` | The SWIFT/BIC code of the bank. |

```json title="POST /recipients/{orgId}"
{
  "type": "individual",
  "name": "María González",
  "country": "HK",
  "method": {
    "kind": "fiat",
    "currency": "HKD",
    "recipientDetails": {
      "bankName": "<Bank Name>",
      "accountNumber": "<Account Number>",
      "swiftCode": "ABCDEF67"
    }
  }
}
```

Other ways to pay this country

Some organizations are served this field set instead. You have it if `/corridors` returns `account_number`, `bic`, `line1`, `city`.

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `account_number`<br>Account number | Yes | `^[0-9]+$` | — |
| `bic`<br>BIC / SWIFT | Yes | `^[A-Z0-9]{4,30}$` | — |
| `line1`<br>Recipient address line 1 | Yes | `^.{2,100}$` | — |
| `city`<br>Recipient city | Yes | — | — |

### India: INR

A payout needs `purposeOfPayment` ([values](#purpose-of-payment)).

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `vpa`<br>Vpa | No | `^[a-zA-Z0-9.\-_]+@[a-zA-Z0-9]+$` | The UPI Virtual Payment Address. |
| `accountNumber`<br>Account Number | No | `^[0-9]{9,18}$` | Indian bank account number (9–18 digits). |
| `ifsc`<br>Ifsc | No | `^[A-Z]{4}0[A-Z0-9]{6}$` | The Indian Financial System Code (IFSC) of the beneficiary's bank branch (NEFT/RTGS). |
| `rail`<br>Rail | No | — | The payment rail to route the payout over, for currencies that support more than one (e.g. NEFT or RTGS for INR). |
| `bankName`<br>Bank Name | No | — | The name of the bank. |

Every account identifier in this field set is marked optional, but a payout needs one, so the example adds `accountNumber` and `ifsc`. Send the identifiers your recipient's bank uses.

```json title="POST /recipients/{orgId}"
{
  "type": "individual",
  "name": "María González",
  "country": "IN",
  "method": {
    "kind": "fiat",
    "currency": "INR",
    "recipientDetails": {
      "accountNumber": "012345678",
      "ifsc": "ABCD0456789"
    }
  }
}
```

Other ways to pay this country

Some organizations are served this field set instead. You have it if `/corridors` returns `account_number`, `ifsc`.

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `account_number`<br>Account number | Yes | `^[a-zA-Z0-9]+$` | — |
| `ifsc`<br>Ifsc | Yes | `^([A-Z]{4}[A-Z0-9]{7})$` | — |

Sandbox fields

A test key is served these fields.

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `accountNumber`<br>Account number | Yes | `^[0-9]{9,18}$` | — |
| `ifscCode`<br>IFSC code | Yes | `^[A-Z]{4}0[A-Z0-9]{6}$` | The beneficiary bank branch. |

### Indonesia: IDR

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `bankName`<br>Bank Name | Yes | — | The name of the bank. |
| `accountNumber`<br>Account Number | Yes | — | Indonesian bank account number. |
| `swiftCode`<br>Swift Code | Yes | `^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$` | The SWIFT/BIC code of the bank. |
| `phoneNumber`<br>Phone Number | Yes | `^\+62[0-9]{9,12}$` | Indonesian phone number for e-wallet payments. |

```json title="POST /recipients/{orgId}"
{
  "type": "individual",
  "name": "María González",
  "country": "ID",
  "method": {
    "kind": "fiat",
    "currency": "IDR",
    "recipientDetails": {
      "bankName": "<Bank Name>",
      "accountNumber": "<Account Number>",
      "swiftCode": "ABCDEF67",
      "phoneNumber": "+62012345678"
    }
  }
}
```

Other ways to pay this country

Some organizations are served this field set instead. You have it if `/corridors` returns `account_number`, `bank_name`.

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `account_number`<br>Account number | Yes | `^[a-zA-Z0-9]+$` | — |
| `bank_name`<br>Bank name | Yes | `^.{2,}$` | One of 103 values, listed in the field's `options`. |

### Malaysia: MYR

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `bankName`<br>Bank Name | Yes | — | The name of the bank. |
| `accountNumber`<br>Account Number | Yes | — | Malaysian bank account number. |
| `swiftCode`<br>Swift Code | Yes | `^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$` | The SWIFT/BIC code of the bank. |

```json title="POST /recipients/{orgId}"
{
  "type": "individual",
  "name": "María González",
  "country": "MY",
  "method": {
    "kind": "fiat",
    "currency": "MYR",
    "recipientDetails": {
      "bankName": "<Bank Name>",
      "accountNumber": "<Account Number>",
      "swiftCode": "ABCDEF67"
    }
  }
}
```

### Pakistan: PKR

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `bankName`<br>Bank Name | Yes | — | The name of the bank. |
| `accountNumber`<br>Account Number | No | — | The account number of the bank. |
| `iban`<br>Iban | No | `^PK[0-9]{2}[A-Z]{4}[0-9]{16}$` | Pakistani IBAN (24 characters, starting with PK). |
| `phoneNumber`<br>Phone Number | No | `^\+[0-9]{6,14}$` | The phone number in international format. |

Every account identifier in this field set is marked optional, but a payout needs one, so the example adds `accountNumber`. Send the identifiers your recipient's bank uses.

```json title="POST /recipients/{orgId}"
{
  "type": "individual",
  "name": "María González",
  "country": "PK",
  "method": {
    "kind": "fiat",
    "currency": "PKR",
    "recipientDetails": {
      "bankName": "<Bank Name>",
      "accountNumber": "<Account Number>"
    }
  }
}
```

### Philippines: PHP

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `bankName`<br>Bank Name | Yes | — | Name of the beneficiary's bank. |
| `accountNumber`<br>Account Number | Yes | `^[0-9]{8,16}$` | Bank account number. |

```json title="POST /recipients/{orgId}"
{
  "type": "individual",
  "name": "María González",
  "country": "PH",
  "method": {
    "kind": "fiat",
    "currency": "PHP",
    "recipientDetails": {
      "bankName": "<Bank Name>",
      "accountNumber": "01234567"
    }
  }
}
```

Other ways to pay this country

Some organizations are served this field set instead. You have it if `/corridors` returns `account_number`, `bank_name`.

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `account_number`<br>Account number | Yes | `^[0-9]+$` | — |
| `bank_name`<br>Bank name | Yes | `^.{2,100}$` | One of 141 values, listed in the field's `options`. |

Sandbox fields

A test key is served these fields.

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `accountNumber`<br>Account number | Yes | `^[0-9]{6,18}$` | — |

### Singapore: SGD

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `bankName`<br>Bank Name | No | — | Name of the beneficiary's bank. When omitted, resolved from swiftCode via the payout partner bank directory at account creation. |
| `accountNumber`<br>Account Number | Yes | — | Bank account number. |
| `swiftCode`<br>Swift Code | Yes | `^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$` | The SWIFT/BIC code of the bank. |

```json title="POST /recipients/{orgId}"
{
  "type": "individual",
  "name": "María González",
  "country": "SG",
  "method": {
    "kind": "fiat",
    "currency": "SGD",
    "recipientDetails": {
      "accountNumber": "<Account Number>",
      "swiftCode": "ABCDEF67"
    }
  }
}
```

### Thailand: THB

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `bankName`<br>Bank Name | Yes | — | The name of the bank. |
| `accountNumber`<br>Account Number | Yes | — | Thai bank account number. |
| `swiftCode`<br>Swift Code | Yes | `^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$` | The SWIFT/BIC code of the bank. |

```json title="POST /recipients/{orgId}"
{
  "type": "individual",
  "name": "María González",
  "country": "TH",
  "method": {
    "kind": "fiat",
    "currency": "THB",
    "recipientDetails": {
      "bankName": "<Bank Name>",
      "accountNumber": "<Account Number>",
      "swiftCode": "ABCDEF67"
    }
  }
}
```

Other ways to pay this country

Some organizations are served this field set instead. You have it if `/corridors` returns `account_number`, `bank_name`.

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `account_number`<br>Account number | Yes | `^[a-zA-Z0-9]+$` | — |
| `bank_name`<br>Bank name | Yes | `^.{2,}$` | One of 10 values, listed in the field's `options`. |

### Vietnam: VND

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `bankName`<br>Bank Name | Yes | — | The name of the bank. |
| `accountNumber`<br>Account Number | Yes | — | Vietnamese bank account number. |
| `swiftCode`<br>Swift Code | Yes | `^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$` | The SWIFT/BIC code of the bank. |

```json title="POST /recipients/{orgId}"
{
  "type": "individual",
  "name": "María González",
  "country": "VN",
  "method": {
    "kind": "fiat",
    "currency": "VND",
    "recipientDetails": {
      "bankName": "<Bank Name>",
      "accountNumber": "<Account Number>",
      "swiftCode": "ABCDEF67"
    }
  }
}
```

## International

### International (SWIFT): USD

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `country`<br>Country | Yes | `^[A-Z]{2}$` | The ISO 3166-1 alpha-2 country code of the bank account. |
| `swiftCode`<br>Swift Code | Yes | `^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$` | The SWIFT/BIC code of the bank. |
| `bankName`<br>Bank Name | Yes | — | The name of the bank. |
| `accountNumber`<br>Account Number | No | — | The bank account number. Required for most corridors. Use iban instead for IBAN-only corridors (e.g. BR, GB). |
| `iban`<br>Iban | No | `^[A-Z]{2}[0-9]{2}[A-Za-z0-9]{11,30}$` | The IBAN of the bank account. Required for IBAN-only corridors (e.g. BR, GB). Use accountNumber for all other corridors. |

Every account identifier in this field set is marked optional, but a payout needs one, so the example adds `accountNumber`. Send the identifiers your recipient's bank uses.

```json title="POST /recipients/{orgId}"
{
  "type": "individual",
  "name": "María González",
  "method": {
    "kind": "fiat",
    "currency": "USD",
    "recipientDetails": {
      "country": "AL",
      "swiftCode": "ABCDEF67",
      "bankName": "<Bank Name>",
      "accountNumber": "<Account Number>"
    }
  }
}
```

Other ways to pay this country

Some organizations are served this field set instead. You have it if `/corridors` returns `account_number`, `bic`, `bank_name`, `line1`, `city`, `state`, `postal_code`.

| Field | Required | Format | Notes |
| --- | --- | --- | --- |
| `account_number`<br>Account number | Yes | `^[a-zA-Z0-9]+$` | — |
| `bic`<br>BIC / SWIFT | Yes | `^[a-zA-Z]{6}[a-zA-Z0-9]{2}([a-zA-Z0-9]{3})?$` | — |
| `routing_number`<br>Routing number (US correspondent bank) | No | — | — |
| `bank_name`<br>Bank name | Yes | — | — |
| `line1`<br>Recipient address line 1 | Yes | `^.{2,100}$` | — |
| `city`<br>Recipient city | Yes | — | — |
| `state`<br>Recipient state / province | Yes | — | — |
| `country`<br>Recipient country | No | enum | One of 252 values, listed in the field's `options`. |
| `postal_code`<br>Recipient postal code | Yes | — | — |

