Update beneficiary

Update an existing beneficiary by ID while preserving omitted fields and validating the record against its currency, payment mode, and beneficiary type.

Path Params
string
required

id of the account

Body Params

Update payload for an existing beneficiary. The update is merged with the existing record, so most body fields are optional. When a field is supplied, the same format/pattern/enum constraints as addBeneficiaryClient apply.

currencyId, paymentMode and beneficiaryType must always be supplied so downstream validation can resolve the correct currency/payment-mode configuration.

Runtime conditional rules (enforced by the service, not by the JSON schema):

  • Non-stablecoin paymentModes (LOCAL, INTERNATIONAL, MOBILE_MONEY, HK_BANK): accountNumber, bankCode, bankName and bankAddress.countryCode are required.
  • INTERNATIONAL paymentMode additionally requires beneficiaryAddress.addressLine1 and beneficiaryAddress.countryCode.
  • When beneficiaryType is company, companyName is required (non-stablecoin). When individual, firstName and lastName are required. myOrganisation has no name field requirement.
  • Stablecoin paymentMode (STABLECOIN): cryptoCurrencyWalletAddress, blockchain, cryptoCurrency and cryptoCurrencyWalletHostedOption are required. When accountLabel (wallet nickname) is supplied, companyName is required; otherwise either companyName or both firstName+lastName must be provided, together with a full beneficiaryAddress (addressLine1, city, countryCode, postCode, stateOrProvience).
  • SWIFT bank codes whose country (chars 5-6) is in the sanctioned (OORA) list are rejected.
  • When the client's company category is financial services or crypto, nestedType is required.
  • Per-currency paymentMode restrictions: KES/TZS → LOCAL|INTERNATIONAL|MOBILE_MONEY; KRW → LOCAL; XAF → LOCAL|MOBILE_MONEY.

integer | null
string | null

Trimmed before validation. For IBAN-based modes, spaces and hyphens are accepted and stripped, then the value is uppercased before validation. Required for non-stablecoin payment modes. Character set is intentionally permissive at the schema level; exact per-currency/payment-mode format (e.g. TZS/KES/XAF MOBILE_MONEY expect +<country>-XXXXXXXXX) is enforced by the runtime validator.

string | null

Wallet nickname (primarily for stablecoin). Allowed characters: alphanumeric, spaces, and .,'&@#$^*/!()

string | null
enum

Required when paymentMode is stablecoin.

Allowed:
string | null
enum

Required when paymentMode is stablecoin.

Allowed:
string | null

Required when paymentMode is stablecoin. Must be a valid 0x-prefixed 40-character hex address.

string | null
enum

Required when paymentMode is stablecoin.

Allowed:
string | null
enum

This field is based on the selected cryptoCurrencyWalletHostedOptions, i.e. store custodian/exchange/self-hosted wallet details. This is null if cryptoCurrencyWalletHostedOptions is not_sure

string | null
string | null
string | null
bankAddress
object

When supplied, countryCode must reference an active supported 2-letter country code.

string | null

Trimmed before validation. Required for non-stablecoin payment modes. SWIFT codes belonging to sanctioned (OORA) countries are rejected.

string | null

Optional alternate national identifier. Trimmed before validation.

string | null

Required for non-stablecoin payment modes.

string | null

Required when beneficiaryType is 'company' (non-stablecoin). Base validation allows alphanumerics and spaces; some currencies (e.g. AUD/CAD/CNY/HKD/IDR/JPY and other Asian locales) additionally permit . and - in company names — enforced by the runtime validator.

string | null

Required when beneficiaryType is 'individual' (non-stablecoin). Only alphanumeric characters and spaces are allowed.

string | null

Required when beneficiaryType is 'individual' (non-stablecoin). Only alphanumeric characters and spaces are allowed.

beneficiaryAddress
object

Required for international payment mode and for currencies/payment modes where the configured rules mark beneficiary address as required. All individual fields (when present) must be up to 35 characters; only alphanumeric characters, spaces, and commas are allowed.

string
enum
required

Type of beneficiary.

Allowed:
boolean | null
string | null
string | null
string | null
integer
required
forFurtherCredit
object
string | null
enum
Allowed:
string
enum
required

Payment method. Accepted values depend on the currency:

  • KES, TZS: LOCAL, INTERNATIONAL, MOBILE_MONEY
  • KRW: LOCAL
  • XAF: LOCAL, MOBILE_MONEY
  • All other supported currencies: LOCAL, INTERNATIONAL, STABLECOIN, HK_BANK
Allowed:
paymentCapabilities
object | null
boolean | null
string | null
integer | null
string | null
string | null
boolean | null
boolean | null
object

Required when the authenticated client company is categorised as 'financial services' or 'crypto' (nested client).

documentDetails
array of objects | null
documentDetails
string | null
string | null
string | null
string | null
string | null
string | null
Response

Language
URL
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json