Skip to main content

Pay-Out · Nigeria

TOPPAY TeamAbout 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.

EnvironmentURL
Sandboxhttps://openapi.toppayment.com/sandbox/ng/disbursement/cash
Productionhttps://openapi.toppayment.com/ng/disbursement/cash

Request Header

FieldRequiredTypeDescription
Content-TypeMStringapplication/json

Request Body

FieldRequiredTypeDescription
mchNoMString(32)Merchant number
orderNumMString(50)Merchant order number
amountMNumber(32,8)Amount (NGN). Decimals are not allowed for Nigeria — pass an integer
Example: 5000
bankCodeMString(32)Bank code (Nigeria) — Regional Payment Guide — Nigeria
bankCardMString(50)Account number (NUBAN, 10 digits)
accountNameMString(50)Account name
descriptionOString(255)Description
feeTypeMNumberFee type
0: Deduction within the order
1: Handling fee is calculated separately
downNotifyUrlMString(164)Callback URL
timestampMStringTimestamp (13 digits)
signMStringSee Signature

Request Body Example (illustrative — 058 = GTBank in the NG bank table; use live codes from the guide)

Content-type: application/json

Response

FieldDescription
data.bankCodeBank code (Nigeria) — Regional Payment Guide — Nigeria
data.statusNumeric — 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

FieldRequiredTypeDescription
Content-TypeMStringHTTP request content type
Fixed value: application/json
Indicates JSON request format

Notification Body

FieldRequiredTypeDescription
platOrderNumMStringPlatform order number
System-generated internal transaction reference
Used for internal transaction management and support
versionMStringVersion
API version identifier
Example: v1
orderNumMStringMerchant order number
Same as orderNum in the original request
Used for transaction identification and verification
amountMNumberTransaction amount
Confirmed transaction amount
feeMNumberFee
Fee charged for the transaction
feeTypeMNumberFee type
1: Merchant bears the fee
statusMNumberTransaction status
See Transaction Status Codes
statusMsgMStringStatus message
Human-readable order status description
bankCodeMStringBank code (Nigeria)
See Regional Payment Guide — Nigeria
bankCardMStringBank card number/account number
accountNameMStringAccount name
descriptionOStringDescription
signMStringSignature
Digital signature of callback data

Response

Important response

Notification response: Return only the string SUCCESS to 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="
}