服务商帮小微商户重新发起自动提现

场景介绍

小微商户模式下,与微信支付对接的是服务商,小微商户可能并不感知微信支付,小微商户的日常维护,是登录服务商自建的APP或者公众号,来查询提现状态等等。本API即提供重新发起自动提现能力给到服务商。
说明:
1、反映的是服务商替小微商户发起自动提现单据的结果;
2、资金账单中涉及金额的字段单位为“分”。

是否需要证书

需要。详见证书使用

请求参数

字段名

变量名

必填

类型

示例值

描述

服务商商户号

mch_id

String(32)

1900000109

微信支付分配的商户号

小微商户号

sub_mch_id

String(32)

1900000109

微信支付分配的商户号

自动提现单提现日期

date

String(32)

20180602

格式:YYYYMMDD。要查询的提现单据的日期
注意自动提现单是在交易次日汇总前一天的结算结果后生成,所以如果自动提现单日期是20180602,则对应的是20180601这天的交易。目前只支持发起最近30天的自动提现

随机字符串

nonce_str

String(32)

ibuaiVcKdpRxkhJA

随机字符串,不长于32位。推荐随机数生成算法

签名

sign

String(64)

4219DA46A027E8C86DE1BE8CD252158B74DEFAA069CDB6DEFA235FFEA2437EA2

签名,详见签名生成算法

签名类型

sign_type

String(32)

HMAC-SHA256

签名类型,目前支持HMAC-SHA256 。该字段需参与签名sign的计算。

请求示例:

<xml>
   <nonce_str> ibuaiVcKdpRxkhJA </nonce_str>
   <date>20180602</date>
   <mch_id >2480029942</mch_id>
   <sub_mch_id>2480029752</sub_mch_id>
   <sign_type> HMAC-SHA256</sign_type>
   <sign>1091442CB5E1D3B04DAC6CA9F42B50F74428727968FE2E570DE271030F16CCA8</sign>
</xml>

返回结果

字段名

变量名

必填

类型

示例值

描述

返回状态码

return_code

String(16)

FAIL/SUCCESS

SUCCESS/FAIL
此字段是通信结果标识

FAIL:接口调用通信失败,例如连接失败或者连接超时。

SUCCESS: 接口调用通信成功。具体的提现查询结果应根据result_code来判断

返回信息

return_msg

String(128)

OK

返回信息状态

当return_code为SUCCESS时,进一步返回以下字段

业务结果

result_code

string(16)

FAIL

此字段是业务标识,表示业务是否成功。目前只有SUCCESS和FAIL两种

SUCCESS: 接口调用成功。表示本次自动提现请求已经受理成功,请等待银行处理结果

FAIL:接口调用失败。请根据err_code决定具体错误类型

错误代码

err_code

String(16)

SYSTEMERROR

见错误码列表

错误代码描述

err_code_des

String(128)

参数签名错误

错误信息描述

签名类型

sign_type

String(32)

HMAC-SHA256

签名类型,目前支持HMAC-SHA256

签名

sign

String(64)

4219DA46A027E8C86DE1BE8CD252158B74DEFAA069CDB6DEFA235FFEA2437EA2

签名,详见签名生成算法

当return_code和result_code都为SUCCESS的时候,还会包含以下字段


自动提现单提现日期

date

String(32)

20180602

格式:YYYYMMDD。
注意自动提现单是在交易次日汇总前一天的结算结果后生成,所以如果自动提现单日期是20180602,则对应的是20180601这天的交易。

商户号

mch_id

String(32)

1900000109

微信支付分配的商户号

小微商户号

sub_mch_id

String(32)

1900000109

微信支付分配的商户号

提现单单据ID

withdraw_id

String(64)

10900999991802018050300326172000

如果成功创建提现单据,则表示提现单据的ID

金额

amount

Int(32)

550

分(RMB)

单据创建时间

create_time

String(32)

2018-05-11 08:00:00

时间格式为YYYY-MM-ddHH:mm:ss

随机字符

nonce_str

String(32)

ibuaiVcKdpRxkhJA

随机字符串(与请求一致)

成功示例:

<xml>
<return_code><![CDATA[SUCCESS]]></return_code>
<return_msg><![CDATA[OK]]></return_msg>
<result_code><![CDATA[SUCCESS]]></result_code>
<err_code><![CDATA[SUCCESS]]></err_code>
<err_msg><![CDATA[success]]></err_msg>
<date>20180602</date>
<mch_id><![CDATA[2480029942]]></mch_id>
<sub_mch_id><![CDATA[2480029752]]></sub_mch_id>
<withdraw_id><![CDATA[10900999991802018060200326172007]]></withdraw_id>
<amount>445</amount>
<create_time><![CDATA[2018-06-04 11:42:09]]></create_time>
<nonce_str><![CDATA[ibuaiVcKdpRxkhJA]]></nonce_str>
<sign_type><![CDATA[HMAC-SHA256]]></sign_type>
<sign><![CDATA[8ADACE9EE2A39C20F56D115794AD8D1D91B636A12346766713D741E847B77BF5]]></sign>
</xml>

错误示例:

<xml>
<return_code><![CDATA[SUCCESS]]></return_code>
<return_msg><![CDATA[OK]]></return_msg>
<result_code><![CDATA[FAIL]]></result_code>
<err_code><![CDATA[CA_ERROR]]></err_code>
<err_code_des><![CDATA[证书验证失败]]></err_code_des>
</xml>

错误码

错误码

描述

解决方案

SYSTEMERROR

微信支付系统无明确返回结果

系统繁忙。业务结果以查单为准

PARAM_ERROR

参数错误

请对照文档的请求参数说明检查参数

XML_FORMAT_ERROR

XML格式错误,获取输入信息失败

检查请求串,确认无误后重试

CA_ERROR

商户证书验证失败

到商户平台下载证书,请求带上证书后重试。

FREQUENCY_LIMITED

访问API超过限频

请降低访问频率

NO_AUTH

无接口访问权限

请联系运营人员

WITHDRAW_FAIL

提现失败,具体原因查看err_code_des

根据 err_code_des 来处理

NO_WITHDRAW_AUTH

无提现权限

联系运营人员

SUCCESS

成功

注意事项

    • XML具有可扩展性,因此返回参数可能会有新增,而且顺序可能不完全遵循此文档规范,如果在解析回包的时候发生错误,请商户联系客服确认付款情况。如果有新回包字段,会更新到此API文档中。
    • 因为错误代码字段err_code的值后续可能会增加,所以商户如果遇到回包返回新的错误码,请商户联系客服确认情况。如果有新的错误码,会更新到此API文档中。
    • 错误代码描述字段err_code_des只供人工定位问题时做参考,系统实现时请不要依赖这个字段来做自动化处理。
    • 系统暂只支持最近30天的重试请求。