Payout Verification API (Provided by Merchant)
Description
To maximize transaction security for fund disbursements, the platform can trigger a secondary verification HTTP POST call to the merchant's configured callback endpoint prior to executing the actual payout.
IMPORTANT
- Successful Verification: Upon receiving and verifying the request, the merchant system returns the plain text string
true. The platform proceeds with fund disbursement. - Failed Verification: If the merchant returns
false, the platform aborts the payout immediately and returns the reserved amount and fee back to the merchant's available balance. - Error / Timeout: If the request to the merchant's verification URL fails with an HTTP error (e.g., 500) or times out, the platform defaults to treating the verification as failed.
- Activation: Merchants must provide their verification endpoint URL to the platform technical team to enable this security feature.
- Verify signatures using the Platform Public Key and ignore case differences.
Request Information
- Endpoint: Verification URL configured by the merchant on the platform
- Method:
POST - Content-Type:
application/json; charset=utf-8
HTTP Headers
| Header | Required | Type | Description |
|---|---|---|---|
merchantNo | Yes | String | Merchant ID |
sign | Yes | String | RSA digital signature generated by the platform's private key |
Request Body Parameters
Example Payload
json
{
"timestamp": "1772880700000",
"merchantOrderNo": "PO202603070001",
"platOrderNo": "876324486452871168",
"amount": "100.00",
"bankCode": "BAC",
"accountNo": "01812345678",
"accountName": "Tanvir Ahmed"
}Field Specifications
| Field | Required | Type | Example | Description |
|---|---|---|---|---|
timestamp | Yes | String | 1772880700000 | Current epoch timestamp in milliseconds |
merchantOrderNo | Yes | String | PO202603070001 | Merchant payout order reference |
platOrderNo | Yes | String | 876324486452871168 | Platform transaction reference |
amount | Yes | String | 100.00 | Payout amount |
bankCode | Yes | String | BAC | Bank or wallet code (e.g., BAC, BKASH) |
accountNo | Yes | String | 01812345678 | Beneficiary bank account or wallet number |
accountName | Yes | String | Tanvir Ahmed | Beneficiary account holder name |
Merchant Response Requirements
After internal validation, the merchant server must return plain text (lowercase):
To approve the payout:
text
trueTo reject the payout:
text
false