微信小程序实现微信企业付款到零钱功能的流程

官方文档地址:点击跳转

企业付款为企业提供付款至用户零钱的能力,支持通过API接口付款,或通过微信支付商户平台(pay.weixin.qq.com)网页操作付款。

使用条件

  1、商户号(或同主体其他非服务商商户号)已入驻90日

  2、商户号(或同主体其他非服务商商户号)有30天连续正常交易

  3、 登录微信支付商户平台-产品中心,开通企业付款。

开通

付款资金

企业付款到零钱资金使用商户号余额资金。

根据商户号的账户开通情况,实际出款账户有做区别:

  1. ◆ 默认情况下,企业付款到零钱使用商户号基本户(或余额账户)余额。如商户号已开通运营账户,则企业付款到零钱使用运营账户内的资金。
  2. ◆ 基本户(或上述其他出款账户)的资金来源,可能是交易结算款项(仅基本户),或给账户充值的资金。当出款账户余额不足时,付款将因余额不足而付款失败。

 

付款规则

付款方式

◆ 支持API接口或网页操作,付款至目标用户。

收款用户身份指定

◆ 通过APPID+OPENID指定收款用户。

◆ APPID需要为申请商户号时的APPID,或者与商户号有绑定关系。

◆ OPENID的获取方式,可参照:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140839

付款额度

◆ 不支持给非实名用户打款

◆ 给同一个实名用户付款,单笔单日限额5000/5000元

◆ 一个商户同一日付款总额限额10万元

注意:以上规则中的限额5000、10万由于计算规则与风控策略的关系,不是完全精确值,金额仅做参考,请不要依赖此金额做系统处理,应以接口实际返回和查询结果为准,请知晓。

收款用户身份校验

◆ 针对付款的目标用户,提供可校验真实姓名的功能

查询付款情况

◆ 已付款的记录,企业可通过企业付款查询查看相应数据,或者查询商户号资金流水。

付款频次

◆ 默认每天最多可向同一个用户付款10次,可以在商户平台--API安全进行设置

其他注意事项

◆ 付款金额必须小于或等于商户当前可用余额的金额;

 

 

接口介绍

业务流程接口简介
付款企业付款用于企业向微信用户个人付款 
目前支持向指定微信用户的openid付款。(获取openid参见微信公众平台开发者文档: 网页授权获取用户基本信息

注意事项:

◆ 当返回错误码为“SYSTEMERROR”时,请不要更换商户订单号,一定要使用原商户订单号重试,否则可能造成重复支付等资金风险。

◆ XML具有可扩展性,因此返回参数可能会有新增,而且顺序可能不完全遵循此文档规范,如果在解析回包的时候发生错误,请商户务必不要换单重试,请商户联系客服确认付款情况。如果有新回包字段,会更新到此API文档中。

◆ 因为错误代码字段err_code的值后续可能会增加,所以商户如果遇到回包返回新的错误码,请商户务必不要换单重试,请商户联系客服确认付款情况。如果有新的错误码,会更新到此API文档中。

◆ 错误代码描述字段err_code_des只供人工定位问题时做参考,系统实现时请不要依赖这个字段来做自动化处理。

接口地址

接口链接:https://api.mch.weixin.qq.com/mmpaymkttransfers/promotion/transfers

是否需要证书

请求需要双向证书。 详见证书使用

请求参数

字段名变量名必填示例值类型描述
商户账号appidmch_appidwx8888888888888888String(128)申请商户号的appid或商户号绑定的appid
商户号mchid1900000109String(32)微信支付分配的商户号
设备号device_info013467007045764String(32)微信支付分配的终端设备号
随机字符串nonce_str5K8264ILTKCH16CQ2502SI8ZNMTM67VSString(32)随机字符串,不长于32位
签名signC380BEC2BFD727A4B6845133519F3AD6String(32)签名,详见签名算法
商户订单号partner_trade_no10000098201411111234567890String(32)商户订单号,需保持唯一性
(只能是字母或者数字,不能包含有其他字符)
用户openidopenidoxTWIuGaIt6gTKsQRLau2M0yL16EString(64)商户appid下,某用户的openid
校验用户姓名选项check_nameFORCE_CHECKString(16)NO_CHECK:不校验真实姓名 
FORCE_CHECK:强校验真实姓名
收款用户姓名re_user_name王小王String(64)收款用户真实姓名。 
如果check_name设置为FORCE_CHECK,则必填用户真实姓名
金额amount10099int企业付款金额,单位为分
企业付款备注desc理赔String(100)企业付款备注,必填。注意:备注中的敏感词会被转成字符*
Ip地址spbill_create_ip192.168.0.1String(32)该IP同在商户平台设置的IP白名单中的IP没有关联,该IP可传用户端或者服务端的IP。

请求示例:

<xml>

<mch_appid>wxe062425f740c30d8</mch_appid>

<mchid>10000098</mchid>

<nonce_str>3PG2J4ILTKCH16CQ2502SI8ZNMTM67VS</nonce_str>

<partner_trade_no>100000982014120919616</partner_trade_no>

<openid>ohO4Gt7wVPxIT1A9GjFaMYMiZY1s</openid>

<check_name>FORCE_CHECK</check_name>

<re_user_name>张三</re_user_name>

<amount>100</amount>

<desc>节日快乐!</desc>

<spbill_create_ip>10.2.3.10</spbill_create_ip>

<sign>C97BDBACF37622775366F38B629F45E3</sign>

</xml>

返回参数

字段名变量名必填示例值类型描述
返回状态码return_codeSUCCESSString(16)SUCCESS/FAIL
此字段是通信标识,非交易标识,交易是否成功需要查看result_code来判断
返回信息return_msg签名失败String(128)返回信息,如非空,为错误原因 
签名失败 
参数格式校验错误

以下字段在return_code为SUCCESS的时候有返回

字段名变量名必填示例值类型描述
商户appidmch_appidwx8888888888888888String(128)申请商户号的appid或商户号绑定的appid(企业号corpid即为此appId)
商户号mchid1900000109String(32)微信支付分配的商户号
设备号device_info013467007045764String(32)微信支付分配的终端设备号,
随机字符串nonce_str5K8264ILTKCH16CQ2502SI8ZNMTM67VSString(32)随机字符串,不长于32位
业务结果result_codeSUCCESSString(16)SUCCESS/FAIL,注意:当状态为FAIL时,存在业务结果未明确的情况。如果如果状态为FAIL,请务必关注错误代码(err_code字段),通过查询查询接口确认此次付款的结果。
错误代码err_codeSYSTEMERRORString(32)错误码信息,注意:出现未明确的错误码时(SYSTEMERROR等),请务必用原商户订单号重试,或通过查询接口确认此次付款的结果。
错误代码描述err_code_des系统错误String(128)结果信息描述

以下字段在return_code 和result_code都为SUCCESS的时候有返回

成功示例:

<xml>

<return_code><![CDATA[SUCCESS]]></return_code>

<return_msg><![CDATA[]]></return_msg>

<mch_appid><![CDATA[wxec38b8ff840bd989]]></mch_appid>

<mchid><![CDATA[10013274]]></mchid>

<device_info><![CDATA[]]></device_info>

<nonce_str><![CDATA[lxuDzMnRjpcXzxLx0q]]></nonce_str>

<result_code><![CDATA[SUCCESS]]></result_code>

<partner_trade_no><![CDATA[10013574201505191526582441]]></partner_trade_no>

<payment_no><![CDATA[1000018301201505190181489473]]></payment_no>

<payment_time><![CDATA[2015-05-19 15:26:59]]></payment_time>

</xml>

错误示例:

<xml>

<return_code><![CDATA[FAIL]]></return_code>

<return_msg><![CDATA[系统繁忙,请稍后再试.]]></return_msg>

<result_code><![CDATA[FAIL]]></result_code>

<err_code><![CDATA[SYSTEMERROR]]></err_code>

<err_code_des><![CDATA[系统繁忙,请稍后再试.]]></err_code_des>

</xml>

错误码

错误代码描述原因解决方案
NO_AUTH没有该接口权限

1. 用户账号被冻结,无法付款

2. 产品权限没有开通或者被风控冻结

3. 此IP地址不允许调用接口,如有需要请登录微信支付商户平台更改配置

请根据具体的错误返回描述做对应处理,如返回描述不够明确,请参考此处的错误原因做排查。

AMOUNT_LIMIT

金额超限

1. 被微信风控拦截,最低单笔付款限额调整为5元。

2. 低于最低单笔付款限额或者高于最高单笔付款限额

目前最低付款金额为1元,最高10万元,请确认是否付款金额超限。

PARAM_ERROR参数错误

1. 请求参数校验错误

2. 字符中包含非utf8字符

3. 商户号和appid没有绑定关系

请参照原因检查您的请求参数是否正确。

OPENID_ERROROpenid错误Openid格式错误或者不属于商家公众账号

Openid与appid是有一一映射关系的,请确保正确使用。

SEND_FAILED付款错误

付款错误,请查单确认付款结果

请查单确认付款结果,以查单结果为准。

NOTENOUGH余额不足

您的付款帐号余额不足或资金未到账

如果要继续付款必须使用原商户订单号重试。

SYSTEMERROR系统繁忙,请稍后再试。

微信内部接口调用发生错误

请先调用查询接口,查看此次付款结果,如结果为不明确状态(如订单号不存在),请务必使用原商户订单号进行重试。

NAME_MISMATCH姓名校验出错

付款人身份校验不通过

如果要继续付款必须使用原商户订单号重试。

SIGN_ERROR签名错误

校验签名错误

请检查您的请求参数和签名密钥KEY是否正确,如果要继续付款必须使用原商户订单号重试。

XML_ERRORPost内容出错

Post请求数据不是合法的xml格式内容

格式问题,请检查请求格式是否正确。

FATAL_ERROR两次请求参数不一致

两次请求商户单号一样,但是参数不一致

重入必须保证所有参数值都不变。

FREQ_LIMIT超过频率限制,请稍后再试。

接口请求频率超时接口限制

调用接口过于频繁,请稍后再试,如果要继续付款必须使用原商户订单号重试。

MONEY_LIMIT已经达到今日付款总额上限/已达到付款给此用户额度上限

请关注接口的付款限额条件

付款额度已经超限,请参考接口使用条件,如果要继续付款必须使用原商户订单号重试。

CA_ERROR商户API证书校验出错请求没带商户API证书或者带上了错误的商户API证书您使用的调用证书有误,请确认是否使用了正确的证书,可以前往商户平台重新下载,证书需与商户号对应,如果要继续付款必须使用原商户订单号重试。
V2_ACCOUNT_SIMPLE_BAN无法给非实名用户付款用户微信支付账户未知名,无法付款

不支持给非实名用户付款,如果要继续付款必须使用原商户订单号重试。

PARAM_IS_NOT_UTF8请求参数中包含非utf8编码字符

接口规范要求所有请求参数都必须为utf8编码

微信接口使用编码是UTF-8,请确认,如果要继续付款必须使用原商户订单号重试。

SENDNUM_LIMIT

该用户今日付款次数超过限制,如有需要请登录微信支付商户平台更改API安全配置

该用户今日付款次数超过限制,如有需要请登录微信支付商户平台更改API安全配置

向用户付款的次数超限了,请参考接口使用条件,如果要继续付款必须使用原商户订单号重试。

RECV_ACCOUNT_NOT_ALLOWED

收款账户不在收款账户列表

收款账户不在收款账户列表

请登陆商户平台,查看产品中心企业付款到零钱的产品配置

PAY_CHANNEL_NOT_ALLOWED

本商户号未配置API发起能力 

本商户号未配置API发起能力 

请登陆商户平台,查看产品中心企业付款到零钱的产品配置

相关推荐
©️2020 CSDN 皮肤主题: 成长之路 设计师:Amelia_0503 返回首页
实付 49.90元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值