代付业务
代付API文档
代付下单
接口说明
| 请求头 | 请求头说明 |
|---|---|
| 请求URL地址 | 商户后台->开发配置,页面获取 |
| 请求方式 | POST |
| Content-Type | application/json |
| x-api-key | 商户后台->开发配置-> API Key 获取 |
| x-api-secret | 商户后台->开发配置-> API Secret 获取 |
下单传参说明
| 参数名称 | 类型 | 描述 |
|---|---|---|
| MerchantNo | String | 商户单号 |
| Amount | Number | 金额, 整数 |
| NotifyURL | String | 通知地址 |
| IFSC | String | 印度银行的IFSC号码 |
| AccountNo | String | 银行账号 |
| AccountName | String | 银行账号姓名 |
| Phone | String | 与银行账号绑定的手机号 |
下单响应数据
| 参数名称 | 类型 | 描述 |
|---|---|---|
| code | Number | 返回码, 0 表示成功 |
| data | Any | 数据 |
| msg | String | 描述,可空 |
data 结构
| 参数名称 | 类型 | 描述 |
|---|---|---|
| MerchantNo | String | 商户单号 |
| OrderNo | String | 平台单号 |
| Amount | String | 订单金额 |
下单请求示例
curl --location 'https://{{pay_url}}/payout/create' \
--header 'x-api-key: q15qnt9h2j40wo4ohyu4' \
--header 'x-api-secret: vmbwmre3syslbh7fueuwy89p6afgaictcgovy4fvsnn54duhfbvj3sv50ttablu8' \
--header 'Content-Type: application/json' \
--data '{
"MerchantNo": "t_1122337788",
"AccountName": "jaccc",
"AccountNo": "998877445566",
"NotifyURL": "{{merchant_notify_url}}",
"Amount": 400,
"IFSC": "5865892143",
"Phone": "9876543210"
}'
# 响应
# {
# "code": 0,
# "data": {
# "MerchantNo": "t_1122337788",
# "OrderNo": "o-1748271213044996978000191",
# "Amount": 0
# }
# }代付回调
回调接口说明
| 名称 | 值 | 描述 |
|---|---|---|
| Content-Type | application/x-www-form-urlencoded | HTTP请求内容类型 |
| 请求方法 | POST | HTTP请求方法 |
回调数据说明
| 参数名称 | 类型 | 参与签名 | 描述 |
|---|---|---|---|
| OrderNo | String | 是 | 平台单号,需要商户方保存 |
| MerchantNo | String | 是 | 商户单号,从请求参数透传 |
| Amount | String | 是 | 金额 |
| Status | String | 是 | 订单状态, 1 为成功,4,6为处理中,其他为失败 |
| Nonce | String | 是 | 随机数(6-32) |
| Utr | String | 是 | 可空 |
| Sign | String | 否 | MD5签名,32位小写字母 |
回调签名方法
- 签名方法需使用 MD5 32位加密算法进行 HASH 运算
- 将参数值非空并且非NULL的参数按照参数名ASCII码从小到大排序,使用 key1=value1&key2=value2...&secret 格式拼接成字符串,最后拼接上密钥,MD5-32位签名后结果转为小写。
- 空值或者NULL的值为 ""
- 密钥从商户后台获取, 路径为:商户后台->开发配置-> API Secret
回调成功返回
- 商户接收到系统发送的回调通知后,返回 http 状态码 200 即可
- 商户在收到结果通知时,需要正确响应,如果不正确响应,平台会判定本次通知失败,并重新发送通知,直到成功为止(在通知一直不成功的情况下,平台总共会发起多次通知)。
回调示例
// 商户接收到的回调数据:
// Amount=400.00&MerchantNo=t_123456789&Nonce=adaFh8QD25Yt1&OrderNo=o-0197060890437b8199779ed2907a8865&Sign=a37712b407db983b73f080b396acea16&Status=1
var OrderNo = "o-0197060890437b8199779ed2907a8865";
var MerchantNo = "t_123456789";
var Secret = "liho34564kgnb84tdzv"; // 密钥
var Amount = "400.00";
var Nonce = "adaFh8QD25Yt1";
var Status = "1";
var Sign = "a37712b407db983b73f080b396acea16"; // 平台的签名
var ApiSecret = "wtyu9j26dp2tm3t9o7ga4xjk6g5xte52htyub6e8u4uwyr1ttjq1fa50fpjs2pgn"; // Api Secret 密钥
// 拼接后的字符串: Amount=400.00&MerchantNo=t_123456789&Nonce=adaFh8QD25Yt1&OrderNo=o-0197060890437b8199779ed2907a8865&Status=1&wtyu9j26dp2tm3t9o7ga4xjk6g5xte52htyub6e8u4uwyr1ttjq1fa50fpjs2pgn
// 拼接后的签名: a37712b407db983b73f080b396acea16
// 商户验证签名后,进行后续操作代付订单查询
查询接口说明
| 请求头 | 请求头说明 |
|---|---|
| 请求URL地址 | 登录商户后台查看 |
| 请求方式 | POST |
| Content-Type | application/json |
| x-api-key | 商户后台->开发配置-> API Key 获取 |
| x-api-secret | 商户后台->开发配置-> API Secret 获取 |
查询传参说明
| 参数名称 | 类型 | 描述 |
|---|---|---|
| OrderNo | String | 平台单号 |
查询响应数据
| 参数名称 | 类型 | 描述 |
|---|---|---|
| MerchantNo | String | 商户号 |
| OrderNo | String | 平台订单号 |
| Status | String | 订单状态, 1 为成功,4,6为处理中,其他为失败 |
| Amount | String | 支付金额 |
| UTR | String | utr 凭据 |
查询请求示例
curl --location 'https://{{pay_url}}/payout/query' \
--header 'x-api-key: q15qnt9h2j40wo4ohyu4' \
--header 'x-api-secret: vmbwmre3syslbh7fueuwy89p6afgaictcgovy4fvsnn54duhfbvj3sv50ttablu8' \
--header 'Content-Type: application/json' \
--data '{
"OrderNo": "o-1748271213044996978000191"
}'
# 返回数据
# {
# "code": 0,
# "data": {
# "OrderNo": "o-1748271213044996978000191",
# "MerchantNo": "t_1122337788",
# "Amount": 400,
# "UTR": "895423654856",
# "Status": "1"
# }
# }商户余额查询
接口说明
| 请求头 | 请求头说明 |
|---|---|
| 请求URL地址 | 商户后台->开发配置,页面获取 |
| 请求方式 | POST |
| Content-Type | application/json |
| x-api-key | 商户后台->开发配置-> API Key 获取 |
| x-api-secret | 商户后台->开发配置-> API Secret 获取 |
余额查询传参说明
不需要传参
余额查询响应数据
| 参数名称 | 类型 | 描述 |
|---|---|---|
| code | String | 返回码, 0 表示成功 |
| data | Number | 可用余额 |
| msg | String | 失败的时候会有提示 |
余额查询请求示例
curl --location 'http://web_host/api/v2/balance' \
--header 'x-api-key: q15qnt9h2j40wo4ohyu4'
--header 'x-api-secret: vmbwmre3syslbh7fueuwy89p6afgaictcgovy4fvsnn54duhfbvj3sv50ttablu8' \
# 响应
# {
# "code": 0,
# "data": 43288.15
# }