Payout Recipients
Manage saved payout recipients for crypto and fiat in one place
Returns your saved payout recipients. Filter by type to return a single rail, or omit type to return all types.
Your API key (obtain from dashboard)
Page number (1-based)
1Example: 1Number of items per page
10Example: 10Omit for all recipients; true for temporary, false for address book.
Filter by recipient type. Omit to list every type.
Filter by the customer the recipient is linked to.
b1d9a0e2-7c44-4f1a-9b3e-2d5a8c6f0e11Search by account holder name, institution, or label.
payrollRecipients retrieved.
Indicates if the request was successful
trueResponse message
SuccessGET /api/v1/recipients HTTP/1.1
Host: api.coincircuit.io
x-api-key: YOUR_API_KEY
Accept: */*
Recipients retrieved.
{
"success": true,
"message": "Recipients retrieved successfully",
"data": [
{
"id": "b1d9a0e2-7c44-4f1a-9b3e-2d5a8c6f0e11",
"type": "ngn_bank_account",
"label": "Payroll GTBank",
"isDefault": true,
"isTrusted": false,
"details": {
"accountName": "JOHN ADEYEMI DOE",
"accountNumber": "******6789",
"bankName": "Guaranty Trust Bank",
"bankCode": "058",
"accountType": "savings",
"currency": "NGN"
},
"createdAt": "2026-06-27T10:20:05.000Z",
"updatedAt": "2026-06-27T10:20:05.000Z"
},
{
"id": "f8c3de3d-1fea-4d7c-a8b0-29f63c4c3454",
"type": "crypto_address",
"label": "Treasury TRON wallet",
"isDefault": true,
"isTrusted": false,
"details": {
"chain": "tron",
"address": "TJRyWwFs9wTFGZg3JbrVriFbNfCug5tDeC"
},
"createdAt": "2026-06-27T10:14:32.000Z",
"updatedAt": "2026-06-27T10:14:32.000Z"
},
{
"id": "3a7f2b90-5c1d-4e8a-b6f4-9d0c2e5a7b31",
"type": "kes_mobile_money",
"label": "Nairobi supplier",
"isDefault": false,
"isTrusted": false,
"details": {
"currency": "KES",
"countryIsoCode": "KE",
"accountNumber": "******5678",
"accountName": "Jane Wanjiku",
"institutionCode": "MPESA",
"institutionName": "M-Pesa",
"accountType": "individual"
},
"createdAt": "2026-06-27T10:26:48.000Z",
"updatedAt": "2026-06-27T10:26:48.000Z"
}
],
"meta": {
"page": 1,
"size": 10,
"total": 3,
"totalPages": 1
}
}Adds a payout recipient. Set type to crypto_address, ngn_bank_account, kes_mobile_money (Kenya) or ghs_mobile_money (Ghana) and supply the matching details. Bank accounts are verified and must match your name or business name. If a matching recipient already exists, the existing one is returned instead of creating a duplicate.
Your API key (obtain from dashboard)
True for a one-time recipient that is not saved to the address book. Defaults to false.
Merchant notes about this recipient. Use an empty string to clear.
Recipient type. Determines the shape of details.
ngn_bank_accountPossible values: Friendly label for the recipient.
Payroll GTBankType-specific details. crypto_address: { chain, address }. ngn_bank_account: { accountNumber, bankCode, accountType? }. kes_mobile_money and ghs_mobile_money: { phoneNumber, accountName, institutionCode, accountType? }.
Recipient created, or the existing recipient if it already existed.
trueRecipient created successfullyInvalid details or unsupported type.
POST /api/v1/recipients HTTP/1.1
Host: api.coincircuit.io
x-api-key: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 160
{
"isTemporary": true,
"notes": "text",
"type": "ngn_bank_account",
"label": "Payroll GTBank",
"details": {
"chain": "tron",
"address": "TJRyWwFs9wTFGZg3JbrVriFbNfCug5tDeC"
}
}{
"success": true,
"message": "Recipient created successfully",
"data": {
"id": "b1d9a0e2-7c44-4f1a-9b3e-2d5a8c6f0e11",
"type": "ngn_bank_account",
"label": "Payroll GTBank",
"isDefault": true,
"isTrusted": false,
"details": {
"accountName": "JOHN ADEYEMI DOE",
"accountNumber": "******6789",
"bankName": "Guaranty Trust Bank",
"bankCode": "058",
"accountType": "savings",
"currency": "NGN"
},
"createdAt": "2026-06-27T10:20:05.000Z",
"updatedAt": "2026-06-27T10:20:05.000Z"
}
}Preflight check before creating a recipient. Crypto validates the address format. Bank resolves the account holder name through the provider. Mobile money resolves the corridor and provider for the details.
Your API key (obtain from dashboard)
ngn_bank_accountPossible values: Type-specific details to validate. crypto_address: { chain, address }. ngn_bank_account: { accountNumber, bankCode }. kes_mobile_money and ghs_mobile_money take the same details as create.
Details are valid.
truengn_bank_accountPossible values: Resolved details, matching type. crypto_address: { chain, address }. ngn_bank_account: { accountName, bankName, bankCode, accountNumber }. kes_mobile_money and ghs_mobile_money: { currency, countryIsoCode, accountNumber, accountName, institutionCode, institutionName, accountType }.
Invalid details.
POST /api/v1/recipients/validate HTTP/1.1
Host: api.coincircuit.io
x-api-key: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 101
{
"type": "ngn_bank_account",
"details": {
"chain": "tron",
"address": "TJRyWwFs9wTFGZg3JbrVriFbNfCug5tDeC"
}
}{
"success": true,
"message": "Recipient details are valid",
"data": {
"valid": true,
"type": "ngn_bank_account",
"resolved": {
"accountName": "JOHN ADEYEMI DOE",
"bankName": "Guaranty Trust Bank",
"bankCode": "058",
"accountNumber": "0123456789"
}
}
}Banks available for bank account recipients. Nigeria (ng) only for now.
Your API key (obtain from dashboard)
ISO 3166-1 alpha-2 country code. Optional, defaults to ng; only ng is supported for now.
ngExample: ngBank list retrieved.
trueBank list retrieved successfullyGET /api/v1/recipients/banks HTTP/1.1
Host: api.coincircuit.io
x-api-key: YOUR_API_KEY
Accept: */*
Bank list retrieved.
{
"success": true,
"message": "Bank list retrieved successfully",
"data": {
"status": true,
"message": "success",
"data": [
{
"name": "Access Bank Nigeria",
"slug": "access",
"code": "044",
"nibss_bank_code": "000014",
"country": "NG"
}
]
}
}Returns the chains and assets available for crypto_address recipients, keyed by chain.
Your API key (obtain from dashboard)
Supported chains retrieved.
trueSupported payout chains retrieved successfullyGET /api/v1/recipients/chains HTTP/1.1
Host: api.coincircuit.io
x-api-key: YOUR_API_KEY
Accept: */*
Supported chains retrieved.
{
"success": true,
"message": "Supported payout chains retrieved successfully",
"data": {
"tron": [
{
"asset": "USDT",
"networkId": "tron:0000000000000000000000000000000000000000",
"metadata": {
"name": "Tether USD",
"symbol": "USDT",
"decimals": 6
},
"contract": {
"address": "TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t",
"decimals": 6
}
}
],
"base": [
{
"asset": "USDC",
"networkId": "eip155:8453",
"metadata": {
"name": "USD Coin",
"symbol": "USDC",
"decimals": 6
},
"contract": {
"address": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"decimals": 6
}
}
],
"bsc": [
{
"asset": "USDT",
"networkId": "eip155:56",
"metadata": {
"name": "Tether USD",
"symbol": "USDT",
"decimals": 6
},
"contract": {
"address": "0x55d398326f99059ff775485246999027b3197955",
"decimals": 18
}
}
]
}
}Returns the payout recipient for the given ID.
Your API key (obtain from dashboard)
Recipient ID
Recipient retrieved.
trueRecipient created successfullyRecipient not found.
GET /api/v1/recipients/{id} HTTP/1.1
Host: api.coincircuit.io
x-api-key: YOUR_API_KEY
Accept: */*
{
"success": true,
"message": "Recipient retrieved successfully",
"data": {
"id": "b1d9a0e2-7c44-4f1a-9b3e-2d5a8c6f0e11",
"type": "ngn_bank_account",
"label": "Payroll GTBank",
"isDefault": true,
"isTrusted": false,
"details": {
"accountName": "JOHN ADEYEMI DOE",
"accountNumber": "******6789",
"bankName": "Guaranty Trust Bank",
"bankCode": "058",
"accountType": "savings",
"currency": "NGN"
},
"createdAt": "2026-06-27T10:20:05.000Z",
"updatedAt": "2026-06-27T10:20:05.000Z"
}
}Deletes the payout recipient.
Your API key (obtain from dashboard)
Recipient ID
Recipient deleted.
Recipient not found.
DELETE /api/v1/recipients/{id} HTTP/1.1
Host: api.coincircuit.io
x-api-key: YOUR_API_KEY
Accept: */*
{
"success": true,
"message": "Recipient deleted successfully",
"data": {
"success": true
}
}Last updated
Was this helpful?