关闭
公众号二维码

# 四、上报接口对接

# 上报接口场景说明

交易上报付款码上报 接口集成二选一,具体集成根据商户适合场景。

交易上报: 针对非刷脸支付交易,接口根据商户号(子商户号)和生成的商户订单号作为请求上报。

付款码上报: 针对微信付款码支付交易,而无法获取到商户号和订单号的可以通过此接口做交易上报。

# 接入步骤

1、确保网络符合微信刷脸支付sdk依赖的网络环境,若涉及代理可参考代理设置
2、APP版本:交易上报接口需1.12及以上版本;付款码上报接口需2.11及以上版本
3、推荐使用付款码上报接口,若无法获取付款码,可使用交易上报接口
4、具体接口使用详见接口介绍和实践指引
5、调用上报成功后请联系[微信]进行验收

注:调用上报接口,请确保SDK是正常初始化成功的;接口调用时序需在非刷脸交易成功后调用上报接口

# 1. 付款码上报接口

# 付款码上报(reportPaycode)

接口作用: 设备获取到微信付款码,而无法获取到商户号和订单号的可以通过此接口做交易上报

支持版本: 1.25及以上

请求参数
除公共参数外,

参数 必填 类型 说明
auth_code string 微信支付18位付款码

返回参数

参数 必填 类型 说明
return_code string 错误码。公共定义见公共错误码
return_msg string(128) 对错误码的描述

调用示例

// reportOrder
const char* req = "{\"cmd\":\"reportPaycode\",\"auth_code\":\"120061098828009406\",\"version\":\"1\",\"now\":1540909503}";
char *resp;
unsigned int len;
int ret = wxpayCallFaceService(req, strlen(req), &resp, &len);

if (ret == 0) {
    printf("resp: %s len: %u\n", resp, len);
    wxpayReleaseResponse(&resp);
}
/*
 * resp: {"return_code":"SUCCESS","return_msg":"SUCCESS"} len: 48
 */

# 2. 交易上报接口

# 交易上报(reportOrder)

接口作用: 设备产生的非刷脸支付交易,都必须调用此接口上报交易信息,建议每笔非刷脸支付交易发生后,都调用该接口。

支持版本: 1.12及以上

请求参数
除公共参数外,

参数 必填 类型 说明
mch_id string 商户号。(若是服务商模式,则填服务商商户号)
sub_mch_id string 子商户号。(服务商模式填写,其它不填)
out_trade_no string 商户订单号。

返回参数

参数 必填 类型 说明
return_code string 错误码。公共定义见公共错误码
return_msg string(128) 对错误码的描述

调用示例

// reportOrder
const char* req = "{\"cmd\":\"reportOrder\",\"mch_id\":\"1281087510\",\"out_trade_no\":\"1030222503UXn64r\",\"version\":\"1\",\"now\":1540909503}";
char *resp;
unsigned int len;
int ret = wxpayCallFaceService(req, strlen(req), &resp, &len);

if (ret == 0) {
    printf("resp: %s len: %u\n", resp, len);
    wxpayReleaseResponse(&resp);
}
/*
 * resp: {"return_code":"SUCCESS","return_msg":"SUCCESS"} len: 48
 */

# 常见上报不成功问题

Q1: 同一个程序逻辑,有些设备可以上报成功,有些设备却不行?
A1: 和设备没有关系,主要是设备自身是否能连同外网,是否有内网防火墙拦截,iot长连接是否初始化成功等,商户调度的只是简单的人脸SDK接口,理论上刷脸通的话,上报接口就是通的

Q2: 上报接口,重复上报了会有问题吗?或者没交易成功的上报了会怎么样?
A2:重复上报和没交易成功上报只会影响统计,实际商户侧上报的数量会远大于微信侧核实的上报数量

Q3: 非刷脸支付的mch_id和sub_mch_id和扫脸支付的是同一个么?上报时是否可以直接使用扫脸支付的这两个参数?
A3:是同一个,使用刷脸的mch_id和sub_mch_id即可

Q4: 付款码交易上报接口是否只能针对微信付款码?
A4: 需使用设备获取到微信付款码

上次更新: 6/2/2022, 11:28:11 AM