Skip to content
Loading keys…
Authorization<token>

A public key (pk./pk_test.) is accepted on /payments, /customers, /links, /invoices and the catalogue reads (/channels, /providers, /countries, /currencies); anything that moves money out, reads the balance or manages the account answers 406 to it. It is an identifier, never an authorization. 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

Header Parameters

Idempotency-Keystring

Your key for this request, 1 to 128 characters of letters, digits and `. _ : -`. The same request sent again with the same key returns the first answer instead of doing the work twice. See [Idempotency](/api/idempotency).

Request Body

application/json

channelstringrequired

Transfer channel (e.g. `cm.mtn`, `ke.mpesa`, `ci.djamo`). It tells Mobile Money, wallet and bank recipients apart: there is no `type` field.

namestringrequired

Recipient full name.

account_numberstring | null

Bank account number, for a bank channel. One of `phone` and `account_number` is required.

phonestring | null

Mobile Money / Djamo phone number. One of `phone` and `account_number` is required.

emailstring | null

The recipient's email address.

country_codestring | null

The recipient's two-letter country code.

notestring | null

A note of your own, up to 1 000 characters.

metadataobject | null

Free-form key-value data.

ibanstring | null

Recorded on the beneficiary for your own reference. A bank payout goes through a payout account added in the Dashboard, which this API cannot pay.

swiftstring | null

Recorded with `iban`, 8 or 11 characters.

Response Body

application/json

application/json

curl -X POST "https://api.wajub.com/beneficiaries" \  -H "Idempotency-Key: beneficiary-seller-42" \  -H "Content-Type: application/json" \  -d '{    "channel": "cm.mtn",    "name": "Jean Dupont"  }'
POST
/beneficiaries
{  "code": 201,  "status": "Created",  "message": "Beneficiary created successfully",  "beneficiary": {    "id": "ben_Fw8Qa3Zr6Ty1Np5Jd2Lv",    "name": "Jean Dupont",    "phone": "+237670000000"  }}

Created

What did you think of this content?