Pay-Out · Bangladesh
About 1 min
Request
Pay-Out API for sending funds to recipients in Bangladesh (country code bd).
- Amounts are in BDT, up to 2 decimal places (e.g. 100, 100.99).
bankCode— see Regional Payment Guide — Bangladesh.
Endpoint
Domain: Prefer unified host
openapi.toppayment.com(path unchanged); legacy country domain (e.g.global-bd-openapi.toppayment.com) remains available.
| Environment | URL |
|---|---|
| Sandbox | https://openapi.toppayment.com/sandbox/bd/disbursement/cash |
| Production | https://openapi.toppayment.com/bd/disbursement/cash |
Request Headers
| Field | Required | Type | Description |
|---|---|---|---|
| Content-Type | M | String | Fixed: application/json |
Request Body
| Field | Required | Type | Description |
|---|---|---|---|
| mchNo | M | String(32) | Merchant number |
| orderNum | M | String(50) | Merchant order number |
| amount | M | Number | Amount in BDT, up to 2 decimal places |
| bankCode | M | String(32) | Wallet code — see Bangladesh guide |
| bankCard | M | String(50) | Recipient wallet number — starts with 01, 11 digits total |
| accountName | M | String(50) | Recipient name |
| description | O | String(255) | Description |
| feeType | M | Number(0 or 1) | Fee type: 0 deducted from amount, 1 charged separately |
| downNotifyUrl | M | String(164) | Webhook URL |
| timestamp | M | String(13) | Millisecond timestamp |
| sign | M | String | RSA signature — see Signature |
Request Examples
{
"mchNo": "{{mchNo}}",
"orderNum": "BDPAYOUT1234561",
"amount": 1000.00,
"bankCode": "BKASH",
"bankCard": "01880612345",
"accountName": "Rahim Uddin",
"description": "test",
"feeType": 1,
"downNotifyUrl": "https://example.com/notify",
"timestamp": "1749451858772",
"sign": "Generate per signature rules and replace"
}
{
"mchNo": "{{mchNo}}",
"orderNum": "BDPAYOUT1234562",
"amount": 500.50,
"bankCode": "NAGAD",
"bankCard": "01880612345",
"accountName": "Rahim Uddin",
"description": "test",
"feeType": 1,
"downNotifyUrl": "https://example.com/notify",
"timestamp": "1749451858772",
"sign": "Generate per signature rules and replace"
}
Response
status — see Transaction Status Codes.
{
"success": true,
"code": "9999",
"msg": "SUCCESS",
"timeStamp": 1767772957433,
"data": {
"orderNum": "BDPAYOUT1234561",
"platOrderNum": "TRANS2008811496544403456",
"amount": 1000.00,
"fee": 20.00,
"feeType": 1,
"status": 1,
"statusMsg": "ORDER_RECEIVED_PROCESSING",
"bankCode": "BKASH",
"bankCard": "01880612345",
"accountName": "Rahim Uddin",
"description": "test"
}
}
Notification
Same callback shape as other payout markets; status — see Transaction Status Codes. Reply with SUCCESS.
