Skip to main content
POST
Create recipient

POBO error codes

Branch on errors[0].code. See Error codes for every code.

Authorizations

API-KEY
string
header
required

Your partner API key. Must carry the pobo permission.

Headers

Api-Version
string
default:2026-09.1
required

The API version this request targets. Required on every /api/v0/* call. Format YYYY-MM.<release>; 2026-09.1 is the latest. The version that served the request is echoed back on the response. Missing, malformed or unsupported values are rejected with 400.

Pattern: ^\d{4}-\d{2}\.\d+$

Body

application/json
type
enum<string>
required

INDIVIDUAL or BUSINESS.

Available options:
INDIVIDUAL,
BUSINESS
currency
string
required

Destination currency, ISO 4217 — PHP.

currencySymbol
string
required

The symbol for that currency.

currencyId
integer
required

Endl's numeric id for the currency, from List currencies.

payoutRail
string
required

Payout rail. POBO accepts Paywho rails only.

relationshipToCustomer
string
required

Relationship of the recipient to your customer.

firstName
string

Given name.

lastName
string

Family name.

businessName
string

Recipient's legal name. Required when type is BUSINESS.

countryId
integer

Endl's numeric id for the recipient's country, from List countries. Not saved — the saved country is recipientAddress.countryId. It narrows the payout-rail check to that country; without it, the check accepts any country's rails. It does not fill in the ISO codes on POBO.

email
string

Contact email.

phone
string

Recipient's phone number. Digits only, up to 15. No +, spaces or dashes.

bankName
string

Receiving bank.

bankAccountNumber
string

Account number at the receiving bank.

swiftBic
string

SWIFT/BIC of the receiving bank.

accountType
string

Account type — SAVINGS, CHECKING.

recipientAddress
object

Postal address. Send countryId here as well as at the top level — this one is the country saved on the recipient. On POBO, send both countryTwoLetter (ISO 3166-1 alpha-2) and countryThreeLetter (alpha-3) for every rail except AED and CRYPTO; they are not derived from countryId here. Any key not listed here is rejected with 400.

institutionalAddress
object

Address of the receiving bank. Same properties as recipientAddress. Required for GBP, with a valid UK postcode. Also used as the beneficiary bank address on AED payouts. Not specific to business recipients.

providerBankId
string

The receiving bank's code. Take it from the options of the bankId field in Get recipient fields and send the option's code. Required wherever that endpoint marks bankId as REQUIRED. Top level only, never inside recipientAddress.

dateOfBirth
string

Individual's date of birth, DD-MM-YYYY (for example 25-01-1994).

governmentId
string

Recipient's ID number. Get recipient fields calls this field governmentIdNumber.

governmentIdType
string

Type of governmentId, from the field's options.

bankBranchCode
string

Branch code.

bankBranchName
string

Branch name. Required for TWD.

nationality
string

Recipient's nationality, from the field's options.

gender
string

M or F.

occupation
string

Recipient's occupation, from the field's options.

nativeFirstName
string

First name in local script. CNY requires Han characters.

nativeLastName
string

Last name in local script.

nativeAddress
string

Address in local script. Top level, not inside recipientAddress.

nativeBusinessName
string

BUSINESS only. Legal name in local script.

businessStructure
string

BUSINESS only. From the field's options.

businessRegistrationCountry
string

BUSINESS only. From the field's options.

Response

The created recipient, short form. Unwrapped.

id
string

rec_… reference id.

firstName
string

As sent; for a business, the business name.

lastName
string

As sent.

email
string

As sent.

bankName
string

As sent.

bankAccountNumber
string

As sent.

countryId
integer

recipientAddress.countryId.

statusAccountsProvider
string

Always ACTIVE for POBO (Paywho) rails: payable at once.

deleted
boolean

Always false.

wireMessage
string

Only when sent.