1.对于担保交易(下单接口请求参数中上送了担保交易标识并置true),用户支付成功后,商户可调用此接口来进行担保完成操作。
2.本接口属于后台模式对接,商户后台技术人员可以发起http get/post请求,Content-Type设置为application/x-www-form-urlencoded,字符编码格式使用UTF-8
3.测试环境接口地址:https://dhjt-uat.chinaums.com/queryService/UmsWebPayPlugins
4.生产环境接口地址:https://生产域名/queryService/UmsWebPayPlugins
5.签名逻辑跟支付下单接口一样,如有不清楚的地方可以与大华捷通对接技术人员咨询
6.接口同步返回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 |
msgType | 消息类型 | 字符串 | 10 | 是 | 固定值:secureComplete |
requestTimestamp | 报文请求时间 | 字符串 | 19 | 是 | 格式yyyy-MM-dd HH:mm:ss |
msgId | 消息ID | 字符串 | 10 | 是 | 固定值:跟下单支付时一致4217 |
merOrderId | 商户订单号 | 字符串 | 6..32 | 是 | 支付下单接口传入的支付订单号 |
instMid | 业务类型 | 字符串 | 15 | 是 | 固定值:H5DEFAULT |
mid | 商户号 | 字符串 | 15 | 是 | |
tid | 终端号 | 字符串 | 8 | 是 | |
completedAmount | 担保完成金额,单位分 | 数字 | 10 | 是 | |
signType | 签名算法 | 字符串 | 10 | 否 | 支持SM3(推荐),SHA256,不传默认SM3 |
sign | 签名 | 字符串 | 64 | 是 | 签名规则(鼠标单击查看说明) |
参数名称 | 参数说明 | 参数类型 | 长度 | 是否必须 | 备注 |
---|---|---|---|---|---|
version | 版本号 | 字符串 | 10 | 是 | 固定值:20191031 |
errCode | 平台错误码 | 字符串 | 64 | 是 | 取值参考下面说明 |
errMsg | 版本号 | 字符串 | 255/td> | 是 | |
responseTimestamp | 报文响应时间 | 字符串 | 19 | 是 | 格式yyyy-MM-dd HH:mm:ss |
msgType | 消息类型 | 字符串 | 1..64 | 是 | 原样返回 |
instMid | 业务类型 | 字符串 | 15 | 是 | APPDEFAULT |
secureStatus | 担保交易状态 | 字符串 | 否 | 取值参考下面说明 | |
merOrderId | 商户订单号 | 字符串 | 6..32 | 否 | |
mid | 商户号 | 字符串 | 15 | 是 | |
tid | 终端号 | 字符串 | 8 | 是 | |
completedAmount | 担保完成金额,单位分 | 数字 | 10 | 否 | |
totalAmount | 支付总金额,单位分 | 数字 | 10 | 否 | |
signType | 签名算法 | 字符串 | 10 | 否 | |
sign | 签名 | 字符串 | 64 | 是 | 签名规则(鼠标单击查看说明) |
取值 | 描述 | 原因和应对措施 | 系统失败 |
---|---|---|---|
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 | 无效的应答报文 | 支付渠道方的应答报文有问题,比如验签失败、报文格式错误等。 | 是 |
取值 | 描述 | 备注 |
---|---|---|
Alipay 1.0 | 支付宝1.0协议 | 比较少用 |
Alipay 2.0 | 支付宝2.0协议 | 比较少用 |
WXPay | 微信 | |
YQB | 壹钱包 | |
QMF | 全民付远程快捷 | |
UnionPay | 银联钱包 | |
BaiDu | 百度钱包 | |
JD | 京东钱包 | |
SF | 顺丰顺手付 |
取值 | 描述 | 备注 |
---|---|---|
UNKNOWN | 不明确的交易状态 | 需要调退款查询接口确认退款结果 |
SUCCESS | 退款成功 | |
FAIL | 退款失败 | |
PROCESSING | 退款处理中 | 需要调退款查询接口确认退款结果 |