Wonder
post/api/v1/openapi/payees

Create payee

Creates a payee and its payout account; if a payee with the same transfer method, country, currency, and payout-account details already exists under the business, it idempotently returns the existing payee ID instead of creating a new one.

transfer_methodRequired block
HK FPS - Account Numberpayee.payout_account.hk_fps.bank_account (bank_code / account_name / account_number)
HK FPS - Mobilehk_fps.mobile + hk_fps.full_name
HK FPS - Emailhk_fps.email + hk_fps.full_name
HK FPS - FPS IDhk_fps.fps_id + hk_fps.full_name
RTGSrtgs.bank_account (swift_code / account_name / account_number)
SWIFTswift.bank_account (swift_code / account_name / account_number)

date_of_birth condition

When payee.type = People and transfer_method is one of the HK FPS methods below, payout_account.date_of_birth is required:

HK FPS - Account Number

HK FPS - Mobile

HK FPS - Email

HK FPS - FPS ID

Format: YYYY-MM-DD.

Header parameters

Signature
string

Example: good

Credential
string

Example: {{credential}}

x-request-id
string

Example: {{$string.uuid}}

x-i18n-lang
string

Example: zh-CN

Content-typerequired
string

Example: application/json

Request body · application/json

required
object

Payee

typerequired
enum<string>

Payee type. People: individual; for HK FPS methods, date_of_birth is typically required Business: company

PeopleBusiness

Example: People

emailrequired
string<email>

Contact email. Required; max 100 characters; must pass email format validation. Failure → 810002 Invalid email.

Example: alice@example.com

nicknamerequired
string

Nickname. Required; max 50 characters (runes). Empty or too long → 810004 Invalid nickname.

Example: Alice HK

company_name
string | null

Company / entity name. Optional; when provided, max 120 characters (runes). Too long → 810005 Invalid company name.

Example: Alice Trading

phone_numberrequired
string

Phone number (without country code). Validated together with phone_country_code. Failure → 810003 Invalid mobile number.

Example: 91234567

required
object

Payout account

phone_country_coderequired
string

Phone country code (without +). Validated together with phone_number. Failure → 810003 Invalid mobile number.

Example: 852

payout_category_namerequired
enum<string>

Payout category name. Must exist in revenue_expense_categories.category_name. Empty or not found → 810000 Invalid category.

Other Staff ExpensesOther InvestmentMiscellaneous ExpensesMerchant DisbursementMedical ServicesLoan RepaymentInventories & SuppliesGoods TradeGeneral Office OverheadsCharitable DonationCapital InvestmentWonder Extended ServicesTaxesStaff TrainingRelated Company TransferProfessional ServicesOffice SuppliesPayrollWonder Treasury ServicesTravel ExpensesTransportationSubscriptionStaff AccommodationRent & Management FeePensionLogistics Expenses

Example: Merchant Disbursement

Responses

Created successfully, or the existing payee id when the same payout-account details already exist under the current business (idempotent reuse).

coderequired
enum<integer>

Always 200 on success

200

Example: 200

messagerequired
enum<string>

Always succeed on success

succeed

Example: succeed

object

Response data

required
object

Payee