Skip to content

List beneficiaries​

GET
/v2/payments/bulk-withdrawals/beneficiaries

Requires DISBURSEMENTS_READ, granted by PAYMENTS_READ or DISBURSEMENTS_WRITE (bundles)

Returns your beneficiaries a page at a time, active ones by default. Use query to search by name, trading name, email address or account number.

Parameters​

Query Parameters

query

Text to search for in the name, trading name, email address and account number. Results are ranked by relevance and sort is ignored.

Type
string
Example"nkosi"
type

Only beneficiaries of this type. Beneficiaries saved from a batch without a type match neither value. Case-insensitive.

Type
string
Valid values
"INDIVIDUAL""BUSINESS"
Example"INDIVIDUAL"
status

ACTIVE, ARCHIVED or ALL. Case-insensitive.

Type
string
Valid values
"ACTIVE""ARCHIVED""ALL"
Example"ACTIVE"
Default
"ACTIVE"
sort

created (newest first), lastPaid (most recently paid first, never paid last) or archived (most recently archived first). Defaults to archived when status is ARCHIVED, otherwise created; archived needs status ARCHIVED or ALL.

Type
string
Valid values
"created""lastPaid""archived"
Example"lastPaid"
limit

Page size, from 1 to 200; values outside that range are clamped.

Type
integer
Default
50
offset

Number of items to skip.

Type
integer
Default
0

Responses​

OK

application/json
JSON
{
"items": [
{
"id": "a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d",
"bank": "FNB",
"bankDisplayName": "FNB/RMB",
"accountHolder": "Thandi Nkosi",
"accountNumberMasked": "*******0327",
"accountNumber": "62845190327",
"branchCode": "250655",
"accountType": "CHEQUE",
"email": "thandi@example.com",
"type": "INDIVIDUAL",
"tradingName": null,
"reference": "SALARY",
"country": "ZA",
"createdAt": "2026-09-01T10:12:30.004Z",
"updatedAt": "2026-10-23T08:15:02.010Z",
"lastPaidAt": "2026-10-23T08:15:03.204Z",
"deletedAt": null,
"deletedBy": null
}
],
"total": 1,
"limit": 50,
"offset": 0,
"truncated": null
}

Samples​

Errors

HTTPErrorWhen
400BAD_REQUESTA query parameter or field is invalid.
403-16098PAYMENTS_USER_ACCESS_NOT_CONFIGUREDPayments haven't been set up for your business yet.
500INTERNAL_ERRORUnexpected error in the payments service.
502-16097EXCHANGE_API_ERRORThe payments service failed to process the request.
502EXCHANGE_API_ERRORThe payments service couldn't complete the request. Try again later.
503-16099PAYMENTS_BACKEND_PROXY_DISABLEDPayments endpoints are temporarily unavailable.

Plus the errors common to all signed endpoints.