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/mex/order/create

Request Parameters

FieldTypeRequiredDescription
namestringYesCustomer name — More realistic values improve success rate and reduce risk-control flags
phonestringYesCustomer mobile number — More realistic values improve success rate and reduce risk-control flags
emailstringYesCustomer email — More realistic values improve success rate and reduce risk-control flags
bankCodestringYesBank code
accountstringYesBank account number
amountnumberYesAmount — Up to 2 decimal places (rounded). Trailing zeros after the decimal are omitted in the pre-sign string for float amounts
notifyUrlstringYesNotification callback URL — Sandbox supports automatic callbacks: odd last digit of phone → success; even → failure
signstringYesSignature
appIdstringYesMerchant appId
mchOrderNostringYesMerchant order number
mchIdintegerYesMerchant ID
txChannelstringYesTransaction channel — Fixed value: TX_MEX_001
timestampintegerYesCurrent timestamp — Unix timestamp in seconds

Request Example

json
"{\r\n \"mchId\": 10001,\r\n \"txChannel\": \"TX_MEX_001\"\r\n \"appId\": \"10001\",\r\n \"timestamp\": 16624500121,\r\n \"mchOrderNo\": \"payout_1662112069\",\r\n \"name\": \"Charles Clark\",\r\n \"phone\": \"18133533117\",\r\n \"email\": \"vumls@nipdvy.lk\",\r\n \"bankCode\": \"BANCOMEXT\",\r\n \"account\": \"646180110400000001\",\r\n \"amount\": 180.34,\r\n \"notifyUrl\": \"http://tfcxggxrvz.com/oksgk\",\r\n \"sign\": \"xxxxxxxx\"\r\n}"

Response Parameters

FieldTypeRequiredDescription
statusintegerYesStatus — 200 success
msgstringYesMessage
dataobjectYes
data.applyTimeintegerYesApplication time
data.amountnumberYesCredited amount
data.platOrderNostringYesPlatform order number
data.mchOrderNostringYesMerchant order number
data.orderStatusstringYesOrder status

Response Example

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

Transafe Developer Documentation