代付下单
接口网关
URL address:
https://pay.xxx.io/pay/unifiedorder
提示
此接口为测试接口,请向业务人员索要
请求参数
字段名 | 变量名 | 类型 | 必填 | 示例值 | 说明 |
---|---|---|---|---|---|
商户UID | mchid | string | TRUE | 100000 | 商户UID |
商户用户ID | userid | string | TRUE | U123456789 | 商户用户ID |
商户订单号 | out_trade_no | string | TRUE | 1.00966E+18 | 商户订单号 |
商品描述 | subject | string | TRUE | 会员充值 | 商品简单描述 |
商品信息 | body | string | TRUE | 会员充值 | 支付商品信息 |
支付金额 | amount | float | TRUE | 1000 | 支付总金额,两位精度 |
支付产品 | channel | string | TRUE | inpay_payout | (1) 支付方式: inpay_bankupi/vnpay_napas_vietqr (2) 代付方式: inpay_payout /vnpay_payout |
附加数据 | extparam | string | TRUE | 如果是代付请求(channel为inpay_payout/vnpay_payout),则extparam需要添加userid bankname bankcode bankaccount accountname参数,参数格式为json | |
货币代码 | currency | string | TRUE | INR | 支付币种: CNY, INR, VND |
终端IP | client_ip | string | TRUE | 127.0.0.1 | 发起支付IP |
回调地址 | notify_url | string | FALSE | 异步回调地址: 为空或者不传则不回调 | |
跳转地址 | return_url | string | FALSE | 同步跳转地址: 为空或者不传则不跳转 |
样例:
{
"extparam": {
"accountname": "Nguyễn Thành Phát",
"bankaccount": "0824287105",
"bankcode": "MB"
},
"amount": 10000,
"mchid": 100000,
"out_trade_no": "23092024183233784",
"subject": "pay_test",
"channel": "vnpay_payout",
"return_url": "http://localhost:8001/demo.html",
"currency": "VND",
"client_ip": "127.0.0.1",
"body": "pay_test",
"notify_url": "http://localhost:8001/cashier/demonotify",
"userid": "U123456789"
}
提示
extparam参数说明
- 当channel是代付inpay_payout/vnpay_payout时,extparam需要添加bankcode/bankaccount/accountname参数:
{
"accountname": "Nguyễn Thành Phát",
"bankaccount": "0824287105",
"bankcode": "MB"
}
返回结果
字段名 | 变量名 | 类型 | 必填 | 示例值 | 说明 |
---|---|---|---|---|---|
错误码 | result_code | string | TRUE | OK | 结果码. OK:成功,其他:失败 |
返回消息 | result_msg | string | TRUE | SUCCESS | 提示信息. SUCCESS:成功 |
数据对象 | charge | object | TRUE | 返回支付对象(请看下方具体数据) |
成功样例:
{
"result_code": "OK",
"result_msg": "SUCCESS",
"charge": {
"channel": "vnpay_payout",
"out_trade_no": "23092024183233784",
"client_ip": "127.0.0.1",
"amount": "10000",
"currency": "VND",
"subject": "pay_test",
"body": "pay_test",
"extparam": {
"accountname": "Nguyễn Thành Phát",
"bankaccount": "0824287105",
"bankcode": "MB"
},
"credential": {
"out_trade_no": "9451fa8fac8569dab6443cb54270728a",
"merchant_wallet": {
"uid": 100000,
"total_limit_credits": "-1000000000.00",
"total_security_deposit_credits": "0.00",
"total_unsettled_credits": "121356.33",
"total_hold_credits": "0.00",
"total_commission_credits": "229.47",
"total_available_credits": "-42728.13"
}
}
}
}
失败样例:
{
"error_msg": "Invalid Request.[ Request header [authentication] Failure.]",
"error_code": 400000
}
提示
[success] 这里是成功返回信息 在返回JSON数据中 result_code=OK 和 result_msg= SUCCESS 时才有 charge
- status为订单业务状态:
- 0-关闭订单
- 1-等待支付
- 2-支付成功
- 3-支付失败
- 4-正在支付
- 5-结算成功
- 6-退款成功
- 7-投诉纠纷
[error] 这里是错误返回信息 在返回错误数据中仅有 error_code 和 error_msg