Skip to content
Authorization<token>

Use a public key (pk./pk_test.) for payment initialization. Use a secret key (sk./sk_test.) for sensitive operations (transfers, refunds, balance), or a restricted key (rk./rk_test.) scoped to specific permissions. The _test. variant of any key selects the sandbox environment — there is no separate sandbox URL. Never expose your secret key in client-side code.

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

channel*string
name*string

Must not be greater than 255 characters.

account_number?string | null

Must not be greater than 50 characters.

phone?string | null

Must not be greater than 20 characters.

email?string | null

Must be a valid email address. Must not be greater than 255 characters.

country_code?string | null

Must be 2 characters.

note?string | null

Must not be greater than 1000 characters.

metadata?object | null
iban?string | null

Must not be greater than 34 characters.

swift?string | null

Must not be greater than 11 characters.

vault?object | null
vault_type?string | null

Must not be greater than 50 characters.

vault_details?object | null
vault_holder_name?string | null

Must not be greater than 255 characters.

vault_last_four?string | null

Must be 4 characters.

vault_phone_number?string | null

Must not be greater than 20 characters.

vault_bank_code?string | null

Must not be greater than 20 characters.

vault_account_type?string | null

Must not be greater than 20 characters.

vault_operator?string | null

Must not be greater than 50 characters.

Response Body

application/json

application/json

curl -X POST "https://example.com/beneficiaries" \  -H "Content-Type: application/json" \  -d '{    "channel": "architecto",    "name": "n"  }'
POST
/beneficiaries
{
  "code": 201,
  "beneficiary": {
    "id": "bfn_01JXXX",
    "name": "Jean Dupont",
    "channel": "cm.mtn"
  }
}
{
  "code": 422,
  "errors": {}
}