付款
更新时间:2024.11.13接口介绍
业务流程 | 接口 | 简介 |
---|---|---|
付款 | 付款 | 用于向微信用户个人付款 |
|
接口调用请求说明
请求Url | https://api.mch.weixin.qq.com/mmpaymkttransfers/promotion/transfers |
---|---|
是否需要证书 | 是(证书及使用说明详见商户证书) |
请求方式 | POST |
签名方式 | MD5 |
接口调用频率限制 | 100/s |
超时时间(同笔订单最短重试时间) | 1s |
请求参数
字段名 | 变量名 | 必填 | 示例值 | 类型 | 描述 |
---|---|---|---|---|---|
商户账号appid | mch_appid | 是 | wx8888888888888888 | String(128) | 申请商户号的appid或商户号绑定的appid |
商户号 | mchid | 是 | 1900000109 | String(32) | 微信支付分配的商户号 |
设备号 | device_info | 否 | 013467007045764 | String(32) | 微信支付分配的终端设备号 |
随机字符串 | nonce_str | 是 | 5K8264ILTKCH16CQ2502SI8ZNMTM67VS | String(32) | 随机字符串,不长于32位 |
签名 | sign | 是 | C380BEC2BFD727A4B6845133519F3AD6 | String(32) | 签名,详见签名算法 |
商户订单号 | partner_trade_no | 是 | 10000098201411111234567890 | String(32) | 商户订单号,需保持唯一性 |
用户openid | openid | 是 | oxTWIuGaIt6gTKsQRLau2M0yL16E | String(64) | openid是微信用户在公众账号下的唯一用户标识(appid不同,则获取到的openid就不同),可用于永久标记一个用户。 |
校验用户姓名选项 | check_name | 是 | FORCE_CHECK | String(16) | NO_CHECK:不校验真实姓名 |
收款用户姓名 | re_user_name | 否 | 王小王 | String(64) | 收款用户真实姓名。 |
金额 | amount | 是 | 10099 | int | 付款金额,单位为分 |
付款备注 | desc | 是 | 理赔 | String(100) | 付款备注,必填。 |
Ip地址 | spbill_create_ip | 否 | 192.168.0.1 | String(32) | 该IP同在商户平台设置的IP白名单中的IP没有关联,该IP可传用户端或者服务端的IP。 |
付款场景 | scene | 否 | BRAND_REDPACKET | String(64) | BRAND_REDPACKET:品牌红包, |
品牌ID | brand_id | 否 | 1234 | int | 品牌在微信支付的唯一标识。仅在付款场景为品牌红包时必填。 |
消息模板ID | finder_template_id | 否 | 1243100000000000 | String(128) | 品牌所配置的消息模板的唯一标识。仅在付款场景为品牌红包时必填。 |
请求示例:
返回参数
字段名 | 变量名 | 必填 | 示例值 | 类型 | 描述 |
---|---|---|---|---|---|
返回状态码 | return_code | 是 | SUCCESS | String(16) | SUCCESS/FAIL |
返回信息 | return_msg | 否 | 签名失败 | String(128) | 返回信息,如非空,为错误原因 |
以下字段在return_code为SUCCESS的时候有返回
字段名 | 变量名 | 必填 | 示例值 | 类型 | 描述 |
---|---|---|---|---|---|
商户appid | mch_appid | 是 | wx8888888888888888 | String(128) | 申请商户号的appid或商户号绑定的appid(号corpid即为此appId) |
商户号 | mchid | 是 | 1900000109 | String(32) | 微信支付分配的商户号 |
设备号 | device_info | 否 | 013467007045764 | String(32) | 微信支付分配的终端设备号, |
随机字符串 | nonce_str | 是 | 5K8264ILTKCH16CQ2502SI8ZNMTM67VS | String(32) | 随机字符串,不长于32位 |
业务结果 | result_code | 是 | SUCCESS | String(16) | SUCCESS/FAIL,注意:当状态为FAIL时,存在业务结果未明确的情况。如果状态为FAIL,请务必关注错误代码(err_code字段),通过查询接口确认此次付款的结果。 |
错误代码 | err_code | 否 | SYSTEMERROR | String(32) | 错误码信息,注意:出现未明确的错误码时(SYSTEMERROR等),请务必用原商户订单号重试,或通过查询接口确认此次付款的结果。 |
错误代码描述 | err_code_des | 否 | 系统错误 | String(128) | 结果信息描述 |
以下字段在return_code 和result_code都为SUCCESS的时候有返回
字段名 | 变量名 | 必填 | 示例值 | 类型 | 描述 |
---|---|---|---|---|---|
商户订单号 | partner_trade_no | 是 | 1217752501201407033233368018 | String(32) | 商户订单号,需保持历史全局唯一性(只能是字母或者数字,不能包含有其它字符) |
微信付款单号 | payment_no | 是 | 1007752501201407033233368018 | String(64) | 付款成功,返回的微信付款单号 |
付款成功时间 | payment_time | 是 | 2015-05-19 15:26:59 | String(32) | 付款成功时间 |
成功示例:
错误示例:
错误码
错误代码 | 描述 | 原因 | 解决方案 |
---|---|---|---|
NO_AUTH | 没有该接口权限 |
| 请根据具体的错误返回描述做对应处理,如返回描述不够明确,请参考此处的错误原因做排查。 |
AMOUNT_LIMIT | 金额超限 |
| 目前最低付款金额为1元,最高10万元,请确认是否付款金额超限。 |
PARAM_ERROR | 参数错误 |
| 请参照原因检查您的请求参数是否正确。 |
PARAM_ERROR | 转账备注设置失败 | 付款备注设置失败 | 请调整对应文案后重新再试。 |
OPENID_ERROR | Openid错误 | Openid格式错误或者不属于商家公众账号 | Openid与appid是有一一映射关系的,请确保正确使用。 |
SEND_FAILED | 付款错误 | 付款错误,请查单确认付款结果 | 请查单确认付款结果,以查单结果为准。 |
NOTENOUGH | 余额不足 | 您的付款账号余额不足或资金未到账 | 如果要继续付款必须使用原商户订单号重试。 |
SYSTEMERROR | 系统繁忙,请稍后再试。 | 微信内部接口调用发生错误 | 请先调用查询接口,查看此次付款结果,如结果为不明确状态(如订单号不存在),请务必使用原商户订单号进行重试。 |
NAME_MISMATCH | 姓名校验出错 | 收款人身份校验不通过 | 如果要继续付款必须使用原商户订单号重试。 |
SIGN_ERROR | 签名错误 | 校验签名错误 | 请检查您的请求参数和签名密钥KEY是否正确,如果要继续付款必须使用原商户订单号重试。 |
XML_ERROR | Post内容出错 | 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 | 该用户今日付款次数超过限制,如有需要请进入【微信支付商户平台-产品中心-付款到零钱-产品设置】进行修改 | 该用户今日付款次数超过限制,如有需要请进入【微信支付商户平台-产品中心-付款到零钱-产品设置】进行修改 | 向用户付款的次数超限了,请参考接口使用条件,如果要继续付款必须使用原商户订单号重试。 |
RECV_ACCOUNT_NOT_ALLOWED | 收款账户不在收款账户列表 | 收款账户不在收款账户列表 | 请登陆商户平台,查看产品中心付款到零钱的产品配置 |
PAY_CHANNEL_NOT_ALLOWED | 本商户号未配置API发起能力 | 本商户号未配置API发起能力 | 请登陆商户平台,查看产品中心付款到零钱的产品配置 |
SEND_MONEY_LIMIT | 已达到今日商户付款额度上限 | 请提高商户付款额度,或明日再试 | 如果要继续付款必须使用原商户订单号重试 |
RECEIVED_MONEY_LIMIT | 已达到今日付款给此用户额度上限 | 请提高用户收款额度,或明日再试 | 如果要继续付款必须使用原商户订单号重试 |
PARAM_ERROR | 付款商户号无法使用该品牌信息 | 付款商户号不是该品牌的品牌主商户号或门店收款商户号 | 使用品牌的品牌主商户号或门店收款商户号进行付款 |
NO_AUTH | 付款商户号无品牌红包产品权限 | 付款商户号没有品牌红包产品权限 | 付款商户号开通品牌红包产品权限后再进行付款 |
PARAM_ERROR | 品牌信息查询失败,请确认品牌状态有效 | 品牌已被注销或状态无效 | 确认品牌信息有效后重试 |
PARAM_ERROR | 品牌和视频号没有绑定关系 | 品牌和视频号没有绑定或已解绑 | 确认品牌和视频号仍然是绑定状态后重试 |
PARAM_ERROR | 品牌下未查到对应品牌红包消息模板 | 品牌和品牌红包消息模板没有对应关系 | 确认品牌和消息模版的对应关系后重试 |
PARAM_ERROR | 品牌红包消息模板已被删除 | 品牌红包消息模板已被删除 | 传入未被删除的消息模版 |
EXCEED_PAYEE_ACCOUNT_LIMIT | 用户账户收款受限 | 收款用户身份信息待完善 | 请联系用户完善其在微信支付的身份信息以继续收款 |
PAYER_ACCOUNT_ABNORMAL | 商户账户付款受限 | 商户号被处罚、冻结 | 可前往“商户平台>账户中心>违约记录”或“商家助手小程序>风险处理”了解更多详情,解除功能限制指引 |
PAYEE_ACCOUNT_ABNORMAL | 用户账户收款异常 | 收款用户身份信息待完善 | 请引导用户完善其在微信支付的身份信息以继续收款 |
PAYMENT_IN_PROGRESS | 该笔付款正在处理中 | 该笔付款正在处理中 | 请稍后查询付款结果 |