代收下单
接口网关
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 | 同步跳转地址: 为空或者不传则不跳转 |
样例:
{
"amount": 15000,
"mchid": 100000,
"out_trade_no": "23092024181832904",
"subject": "pay_test",
"channel": "vnpay_napas_vietqr",
"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附加参数说明
- cashier_type:不强制要求。该参数可以指定收银台支付方式,0为不指定,1为quick点击快捷支付,2为qr二维码扫码支付,3为bank银行卡转账支付
{
"cashier_type": 2,
}
返回结果
字段名 | 变量名 | 类型 | 必填 | 示例值 | 说明 |
---|---|---|---|---|---|
错误码 | result_code | string | TRUE | OK | 结果码. OK:成功,其他:失败 |
返回消息 | result_msg | string | TRUE | SUCCESS | 提示信息. SUCCESS:成功 |
数据对象 | charge | object | TRUE | 返回支付对象(请看下方具体数据) |
成功样例:
{
"result_code": "OK",
"result_msg": "SUCCESS",
"charge": {
"channel": "vnpay_napas_vietqr",
"out_trade_no": "23092024181832904",
"client_ip": "127.0.0.1",
"amount": "15000",
"currency": "VND",
"subject": "pay_test",
"body": "pay_test",
"extparam": [],
"credential": {
"order_amount": "15000",
"pay_amount": "15000",
"out_trade_no": "03e1afadd4dee63f69e111804b09d400",
"merch_name": "demo",
"pay_channel": "vnpay_napas_vietqr",
"viet_qr": "00020101021238540010A00000072701240006970422011042196868680208QRIBFTTA53037045405150005802VN62210817Transfer 03e1afad63042170",
"bank_name": "Ngân hàng TMCP Quân đội",
"bank_code": 970422,
"bank_account": "4219686868",
"account_name": "CTY TNHH MTV TM TOAN HUNG PHAT",
"cashier_url": "http://gopay.local/cashier/napas_vietqr/data/MTA3NjAwMg==",
"time": 1727087015,
"merchant_wallet": {
"uid": 100000,
"total_limit_credits": "-1000000000.00",
"total_security_deposit_credits": "0.00",
"total_unsettled_credits": "101356.33",
"total_hold_credits": "0.00",
"total_commission_credits": "229.47",
"total_available_credits": "-22728.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