Skip to content

Create Payout

WARNING

Note: if the response times out or returns a non-200 HTTP status code, confirm the order status with operations before resubmitting

WARNING

Important: name + phone + email + amount are used to identify distinct customers. Follow these notes to avoid incorrect risk-control decisions.

  1. Do not hard-code name, phone, and email together
  2. Use the same name + phone + email for the same customer

Endpoint

POST /cashout/bengal/order/create

Request Parameters

FieldTypeRequiredDescription
namestringYesCustomer name — More realistic values improve success rate and reduce risk flags; length must be greater than 5
phonestringNoCustomer mobile number — 10-digit mobile format starting with 1. More realistic numbers improve success rate and reduce risk flags
emailstringYesCustomer email — More realistic values improve success rate and reduce risk-control flags
bankCodestring enumYesPayout method code — UPAY, NAGAD, BKASH
accountstringYesAccount number — Wallet ID
amountnumberYesAmount — 100~49999; up to 2 decimal places (rounded). Trailing zeros after the decimal are omitted in the pre-sign string for float amounts
notifyUrlstringYesNotification URL — Sandbox supports automatic callbacks: odd last digit of phone → success; even → failure
signstringYesSignature
appIdstringYesMerchant appId
mchOrderNostringYesMerchant order number
mchIdintegerYesMerchant ID
txChannelstringYesTransaction channel — Fixed valueTX_BD_001
timestampintegerYesCurrent timestamp — Unix timestamp in seconds

Request Example

json
{
 "mchId": 7937213261,
 "txChannel": "TX_BD_001",
 "appId": "R22e9c0f1x3hycRKd9",
 "timestamp": 1662450012,
 "mchOrderNo": "payout_26622128134",
 "name": "Matthew Clark",
 "phone": "19818970682",
 "email": "test@gmail.com",
 "bankCode": "UPAY",
 "account": "6221881999382",
 "amount": "500",
 "notifyUrl": "http://xmevj.kg/obp",
 "sign": "xxxxxxxx"
}

Response Parameters

FieldTypeRequiredDescription
statusintegerYesStatus — 200 success
msgstringYesMessage
dataobjectYes
data.applyTimeintegerYesApplication time
data.amountnumberYesCredited amount
data.platOrderNostringYesPlatform order number
data.mchOrderNostringYesMerchant order number
data.orderStatusstring enumYesOrder status — PENDING, SUCCESS, FAILED, REFUND

Response Example

json
{
 "status": 200,
 "msg": null,
 "data": {
 "mchOrderNo": "payout_1662104438",
 "platOrderNo": "wussXUCOoXO3yptr7rQV",
 "applyTime": 1662104742,
 "amount": 180.34,
 "orderStatus": "PENDING"
 }
}

Transafe Developer Documentation