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.
- Do not hard-code name, phone, and email together
- Use the same name + phone + email for the same customer
Endpoint
POST /cashout/india/order/create
Request Headers
| Name | Required | Example | Description |
|---|---|---|---|
Content-Type | Yes | application/json | |
lang | No | en | Response language: zh Chinese, en English, pt Portuguese |
Request Parameters
| Field | Type | Required | Description |
|---|---|---|---|
name | string | No | Customer name — More realistic values improve success rate and reduce risk flags; length must be greater than 5 |
phone | string | No | Customer mobile number — 10-digit Indian mobile numbers starting with 6/7/8/9. More realistic numbers improve success rate and reduce risk flags |
email | string | No | Customer email — More realistic values improve success rate and reduce risk-control flags |
bankCode | string enum | Yes | Payout method code — UPI, BANK_IN |
account | string | Yes | Account number — Set account according to bankCode (UPI account or bank card account) |
amount | number | Yes | Amount — 100~49999; up to 2 decimal places (rounded). Trailing zeros after the decimal are omitted in the pre-sign string for float amounts |
notifyUrl | string | Yes | Notification URL — Sandbox supports automatic callbacks: odd last digit of phone → success; even → failure |
sign | string | Yes | Signature |
appId | string | Yes | Merchant appId |
mchOrderNo | string | Yes | Merchant order number |
mchId | integer | Yes | Merchant ID |
txChannel | string | Yes | Transaction channel — Fixed value: TX_INDIA_001 |
timestamp | integer | Yes | Current timestamp — Unix timestamp in seconds |
ifsc | string | No | Indian IFSC — Indian IFSC (must be 11 characters: first 4 are bank code, 5th is 0). Required when bankCode is BANK_IN |
Request Example
json
{
"mchId": 364295370187661,
"txChannel": "TX_INDIA_001",
"appId": "7acG5KbHUAxC3EJNxG",
"timestamp": 1662450012,
"mchOrderNo": "payout_26622128134",
"name": "Matthew Clark",
"phone": "19818970682",
"email": "test@gmail.com",
"bankCode": "BANK_IN",
"ifsc": "SBIN0001537",
"account": "6221881999382",
"amount": "50",
"notifyUrl": "http://xmevj.kg/obp",
"sign": "xxxxxxxx"
}Response Parameters
| Field | Type | Required | Description |
|---|---|---|---|
status | integer | Yes | Status — 200 success |
msg | string | Yes | Message |
data | object | Yes | |
data.applyTime | integer | Yes | Application time |
data.amount | number | Yes | Credited amount |
data.platOrderNo | string | Yes | Platform order number |
data.mchOrderNo | string | Yes | Merchant order number |
data.orderStatus | string enum | Yes | Order 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"
}
}