The Lookup API lets you verify account details before initiating a payment. Use these endpoints to:
https://genesyspay.com/api/v2/lookup/bank
Verify a bank account number and retrieve the account holder's name. Use this before initiating a bank_transfer payout to ensure the recipient details are correct.
| Parameter | Type | Required | Description |
|---|---|---|---|
account_number |
string | Required | Recipient's bank account number (10-digit NUBAN for Nigeria) |
bank_code |
string | Required | Bank code from the Get Banks endpoint (e.g., 058 for GTBank) |
currency |
string | Required | 3-letter currency code (e.g., NGN) |
country |
string | Optional | 2 or 3-letter country code (e.g., NG). Helps select the correct provider. |
curl -X POST https://genesyspay.com/api/v2/lookup/bank \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_PRIVATE_KEY" \
-d '{
"account_number": "0123456789",
"bank_code": "058",
"currency": "NGN",
"country": "NG"
}'
{
"status": "success",
"data": {
"account_name": "JOHN DOE",
"account_number": "0123456789"
}
}
account_name with your user before proceeding with the payout. Once a bank transfer is sent it cannot be reversed.
| Error Code | HTTP Status | Description |
|---|---|---|
VALIDATION_ERROR |
422 | Missing or invalid parameters |
INVALID_CURRENCY |
422 | Currency not supported |
INVALID_COUNTRY |
422 | Country not recognized |
INVALID_ARGUMENT |
400 | Lookup not supported for this country/currency, or invalid JSON |
PROVIDER_ERROR |
400 | Account not found or bank provider returned an error |
INTERNAL_ERROR |
500 | An unexpected error occurred |
https://genesyspay.com/api/v2/lookup/mobile-money
Verify a mobile money account and retrieve the account holder's name before initiating a mobile money payout.
| Parameter | Type | Required | Description |
|---|---|---|---|
phone |
string | Required | Mobile money phone number in international format (e.g., 260773317519) |
provider |
string | Required | Mobile money provider slug (e.g., airtel, mtn) |
country |
string | Optional | 2 or 3-letter country code (e.g., ZM) |
curl -X POST https://genesyspay.com/api/v2/lookup/mobile-money \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_PRIVATE_KEY" \
-d '{
"phone": "260773317519",
"provider": "airtel",
"country": "ZM"
}'
{
"status": "success",
"data": {
"account_name": "JOHN DOE",
"phone": "260773317519",
"operator": "airtel",
"country": "ZM"
}
}
| Error Code | HTTP Status | Description |
|---|---|---|
VALIDATION_ERROR |
422 | Missing or invalid parameters |
INVALID_COUNTRY |
422 | Country not recognized |
INVALID_ARGUMENT |
400 | Lookup not supported for this method or country, or invalid JSON |
PROVIDER_ERROR |
400 | Account not found or provider returned an error |
INTERNAL_ERROR |
500 | An unexpected error occurred |