银联商务大华捷通综合支付H5支付结果查询接口

1.支付完成,因通讯故障、服务器故障、通知处理失败等原因,造成商户最终没有收到支付结果通知或收到支付通知没有处理成功,商户不确定该笔支付后台处理结果,可以发起查询,查询该笔交易订单的支付结果。
2.商户再试定时任务轮训查询接口时一定要注意频率。
3.查询接口属于后台模式对接,商户后台技术人员可以发起http get/post请求,Content-Type设置为application/x-www-form-urlencoded,字符编码格式使用UTF-8
4.测试环境接口地址:https://dhjt-uat.chinaums.com/queryService/UmsWebPayPlugins
5.生产环境接口地址:https://生产域名/queryService/UmsWebPayPlugins
6.签名逻辑跟支付下单接口一样,如有不清楚的地方可以与大华捷通对接技术人员咨询
7.请求参数使用URLEncode进行URL编码后再进行传递,防止出现乱码问题
8.查询结果同步返回JSON格式的字符串,验证签名规则如下:
(1).将JSON字符串转成JSON对象,获取全部参数,处理sign参数外,其他参数参数值全部放入集合M(参数sign不要放入集合M中)
(2).遍历集合M,取出全部的参数key,将参数key字典序排列,根据排序后的参数key获取对应的value,将非空的参数key和参数value用"="拼接,多个参数之间用"&"拼接。
(3).最后再拼接签名秘钥,组成一个待前面的字符串A
(4).使用相应的签名算法,对字符串A进行签名,得到本地签名结果字符串B
(5).忽略大小写对比字符串B与sign参数值是否相等
支付结果查询接口请求参数
参数名称 参数说明 参数类型 长度 是否必须 备注
version 版本号 字符串 10 固定值:20191031
merOrderId 商户订单号 字符串 6..32 支付下单接口传入的支付订单号
requestTimestamp 报文请求时间 字符串 19 格式yyyy-MM-dd HH:mm:ss
mid 商户号 字符串 15
tid 终端号 字符串 8
billDate 订单下单日期 字符串 10 格式:yyyy-MM-dd(鼠标单击查看说明)
instMid 业务类型 字符串 1..32 固定值:H5EFAULT
msgType 消息类型 字符串 10 固定值:query
signType 签名算法 字符串 10 支持SM3(推荐),SHA256,不传默认SM3
sign 签名 字符串 64 签名规则(鼠标单击查看说明)
支付结果查询接口响应参数
参数名称 参数说明 参数类型 长度 是否必须 备注
version 版本号 字符串 10 固定值:20191031
errCode 平台错误码 字符串 64 取值参考下面说明
errMsg 版本号 字符串 255/td>
responseTimestamp 报文响应时间 字符串 19 格式yyyy-MM-dd HH:mm:ss
seqId 平台流水号,类似检索参考号 字符串 32
settleRefId 清分ID 字符串 32 如果来源方传了bankRefId就等于bankRefId,否则等于seqId
refId 检索参考号 字符串 32
status 交易状态 字符串 32 查看下面说明
targetOrderId 第三方订单号 字符串 100
targetSys 目标平台代码 字符串 100 查看下面说明
targetStatus 目标平台的状态 字符串 100
buyerId 买家ID 字符串 100
targetMid 支付渠道商户号 字符串 100 各渠道情况不同,酌情转换
bankCardNo 银行卡号 字符串 100
bankInfo 银行信息 字符串 100
billFunds 支付渠道列表 字符串 100
billFundsDesc 支付渠道描述 字符串 100
buyerPayAmount 买家付款的金额 数字,单位:分 10 支付宝会有
buyerUsername 买家用户名 字符串 100
couponAmount 网付计算的优惠金额 数字,单位:分 10
invoiceAmount 给用户开具发票的金额 数字,单位:分 10
totalAmount 订单金额 数字,单位:分 10
payTime 支付时间 字符串 19 格式yyyy-MM-dd HH:mm:ss
receiptAmount 商户实收金额 数字,单位:分 10 支付宝会有
settleDate 结算日期 字符串 10 格式yyyy-MM-dd
subBuyerId 子买家ID,比如微信的subOpenId 字符串 30
billDate 订单下单日期 字符串 10 格式:yyyy-MM-dd
queryId 银联商务大华捷通系统流水号 字符串 30
msgType 消息类型 字符串 1..64 原样返回
merOrderId 商户订单号 字符串 6..32 原样返回
mid 商户号 字符串 15 原样返回
tid 终端号 字符串 8 原样返回
employeeNo 操作员工号 字符串 30 原样返回
attachedData 商户附加数据 字符串 200 原样返回
originalAmount 订单原始金额,单位分 数字 10 原样返回
totalAmount 支付总金额,单位分 数字 10 原样返回
platformAmount 平台商户分账金额 数字 10 原样返回
subOrders 分账明细 字符串 10 原样返回
signType 签名算法 字符串 10 原样返回
extend1 扩展字段1 字符串 50 原样返回
extend2 扩展字段2 字符串 50 原样返回
extend3 扩展字段3 字符串 50 原样返回
extend4 扩展字段4 字符串 50 原样返回
sign 签名 字符串 64 签名规则(鼠标单击查看说明)
errCode取值说明
取值 描述 原因和应对措施 系统失败
SUCCESS 成功
INTERNAL_ERROR 内部错误 系统错误,请联系技术支持
BAD_REQUEST 请求报文有错 报文格式或字段值有误,请对照文档检查。
NO_SERVICE 没有能处理请求msgtype的服务 msgType错误,请检查文档,msgType是否拼写正确
POSITION_LACK 头寸不足 头寸不足
TIMEOUT 处理超时 处理超时,很可能是微信和支付宝的网络请求没应答,建议重试或者撤销交易
NO_ORDER 找不到请求的原始订单 对应的mid+merOrderId不正确,无法找到原交易,请检查merOrderId是否跟原交易一致。
OPERATION_NOT_ALLOWED 当前不允许此操作 订单已经关闭,不能执行退货等操作
TARGET_FAIL 支付宝方支付失败,如请求没有成功,或者请求成功,但是没有正确处理。 支付宝或者微信方业务失败,请根据返回信息确定具体原因。
DUP_ORDER 重复的订单请求 支付请求的merOrderId重复,请检查终端是否做过复位操作,导致流水号等重复。
NET_ERROR 跟支付包通讯出问题,包括请求发送异常,报文应答不是200,请求被取消,应答超时等。 通讯问题,联系运行检查网络情况。
NO_MERCHANT 找不到请求指定的商户 请求报文的mid在网付前置无法找到相关的配置,请确认终端的商户号是否正确在网付前置配置,是否经过转商户处理。
ORDER_PROCESSING 订单正在处理中,不允许并发操作。 当前订单的上一次操作没有完成,订单处于锁定状态,请等待一分钟后再试。
INACTIVE_MERCHANT 商户被置为inactive状态 交易商户在网付前置被冻结。
ABNORMAL_REQUEST_TIME 请求时间异常 请求终端或者平台的系统时间不正常,请检查系统时间。
TXN_DISCARDED 请求开始处理时间延迟过大,交易被丢弃。 系统负载过大,交易被丢弃,请联系运行。
BAD_SIGN 签名错误 报文签名错误,请联系技术指导签名算法。
INVALID_MSGSRC 商户来源错误 系统配置有问题,请联系技术。
INVALID_ORDER 订单信息异常 该订单支付时有异常,缺少关键数据,请先做一笔订单查询,补充关键数据后再次进行退货等操作。
NO_CROSS_DAY_TRADING 不允许跨日交易 可能某些渠道不支持跨日撤销,建议做退货。
DENIED_IP 不允许此IP交易 IP不在白名单中,请联系管理员确认。
INVLID_MERCHANT_CONFIG 错误的商户配置 商户配置参数有问题,请联系业务人员检查商户配置参数。
INVALID_RESPONSE 无效的应答报文 支付渠道方的应答报文有问题,比如验签失败、报文格式错误等。
targetSys取值说明
取值 描述
Alipay 1.0 支付宝1.0协议
Alipay 2.0 支付宝2.0协议
WXPay 微信
YQB 壹钱包
QMF 全民付远程快捷
UnionPay 银联钱包
BaiDu 百度钱包
JD 京东钱包
SF 顺丰顺手付
refundStatus取值说明
取值 描述
UNKNOWN 不明确的交易状态,需要调退款查询接口确认退款结果
SUCCESS 退款成功
FAIL 退款失败
PROCESSING 退款处理中,需要调退款查询接口确认退款结果
status取值说明
取值 描述
NEW_ORDER 新订单
UNKNOWN 不明确的交易状态
TRADE_CLOSED 关闭的交易,不允许进行任何操作
WAIT_BUYER_PAY 交易创建,等待买家付款
TRADE_SUCCESS 支付成功
TRADE_REFUND 订单转入退货流程,可能是部分也可能是全部