Pay-Out · Nigeria
About 2 min
Request
The Pay-Out API initiates disbursement transactions. This page is for Nigeria (country code ng). bankCode values are in Regional Payment Guide — Nigeria (Disbursement bank list).
Request URL
Domain: Prefer unified host
openapi.toppayment.com(path unchanged); legacy country domain (e.g.global-ng-openapi.toppayment.com) remains available.
| Environment | URL |
|---|---|
| Sandbox | https://openapi.toppayment.com/sandbox/ng/disbursement/cash |
| Production | https://openapi.toppayment.com/ng/disbursement/cash |
Request Header
| Field | Required | Type | Description |
|---|---|---|---|
| Content-Type | M | String | application/json |
Request Body
| Field | Required | Type | Description |
|---|---|---|---|
| mchNo | M | String(32) | Merchant number |
| orderNum | M | String(50) | Merchant order number |
| amount | M | Number(32,8) | Amount (NGN). Decimals are not allowed for Nigeria — pass an integer Example: 5000 |
| bankCode | M | String(32) | Bank code (Nigeria) — Regional Payment Guide — Nigeria |
| bankCard | M | String(50) | Account number (NUBAN, 10 digits) |
| accountName | M | String(50) | Account name |
| description | O | String(255) | Description |
| feeType | M | Number | Fee type 0: Deduction within the order 1: Handling fee is calculated separately |
| downNotifyUrl | M | String(164) | Callback URL |
| timestamp | M | String | Timestamp (13 digits) |
| sign | M | String | See Signature |
Request Body Example (illustrative — 058 = GTBank in the NG bank table; use live codes from the guide)
Content-type: application/json
{
"mchNo": "{{mchNo}}",
"orderNum": "NGPAYOUT1234561",
"amount": 5000,
"bankCode": "058",
"bankCard": "0123456789",
"accountName": "Chinedu Okafor",
"description": "test",
"feeType": 1,
"downNotifyUrl": "https://example.com/notify",
"timestamp": "1749451858772",
"sign": "Generate per signature rules and replace"
}
Response
| Field | Description |
|---|---|
| data.bankCode | Bank code (Nigeria) — Regional Payment Guide — Nigeria |
| data.status | Numeric — Transaction Status Codes |
Example response
{
"success": true,
"code": "9999",
"timeStamp": 1767772957433,
"data": {
"orderNum": "NGPAYOUT12345617",
"platOrderNum": "TRANS2008811496544403456",
"amount": 5000,
"fee": 100,
"feeType": 1,
"status": 1,
"statusMsg": "ORDER_RECEIVED_PROCESSING",
"bankCode": "058",
"bankCard": "0123456789",
"accountName": "Chinedu Okafor",
"description": "test"
}
}
Notification
HTTP Request
| Field | Required | Type | Description |
|---|---|---|---|
| Content-Type | M | String | HTTP request content type Fixed value: application/json Indicates JSON request format |
Notification Body
| Field | Required | Type | Description |
|---|---|---|---|
| platOrderNum | M | String | Platform order number System-generated internal transaction reference Used for internal transaction management and support |
| version | M | String | Version API version identifier Example: v1 |
| orderNum | M | String | Merchant order number Same as orderNum in the original request Used for transaction identification and verification |
| amount | M | Number | Transaction amount Confirmed transaction amount |
| fee | M | Number | Fee Fee charged for the transaction |
| feeType | M | Number | Fee type 1: Merchant bears the fee |
| status | M | Number | Transaction status See Transaction Status Codes |
| statusMsg | M | String | Status message Human-readable order status description |
| bankCode | M | String | Bank code (Nigeria) See Regional Payment Guide — Nigeria |
| bankCard | M | String | Bank card number/account number |
| accountName | M | String | Account name |
| description | O | String | Description |
| sign | M | String | Signature Digital signature of callback data |
Response
Important response
Notification response: Return only the string
SUCCESSto acknowledge receipt of the notification
{
"platOrderNum": "TRANS2008812168572567552",
"version": "v1",
"orderNum": "NGPAYOUT12345648",
"amount": 5000,
"fee": 100,
"feeType": 1,
"status": 2,
"statusMsg": "supplement success!",
"bankCode": "058",
"bankCard": "0123456789",
"accountName": "Chinedu Okafor",
"description": "test",
"sign": "KCitZCmhtuoGtVOl/EC4Mn1vwf3QRkoL9Ged0psKiCzATvP0AePNc8P1PEcWrbJYAPctewCRO9jW+vHjtXrh6ozk2OUvVDUlLTiM3PS7ydpeogy+W6w3b4OZDg5vUtaTVwz5mpEKBZv/XEhOes1C16+ec36PLp3Mi0Y0g4ivgwk="
}
SUCCESS
