发起商家转账
更新时间:2024.12.04发起商家转账接口。商户可以通过该接口同时向多个用户微信零钱进行转账操作。请求消息中应包含商家批次单号、转账名称、appid、转账总金额、转账总笔数、转账openid、收款用户姓名等信息。注意受理成功将返回批次单号,此时并不代表转账成功,请通过查单接口查询单据的付款状态
|
接口说明
支持商户:【普通商户】
请求方式:【POST】/v3/transfer/batches
请求域名:【主域名】https://api.mch.weixin.qq.com 使用该域名将访问就近的接入点
【备域名】https://api2.mch.weixin.qq.com 使用该域名将访问异地的接入点 ,指引点击查看
请求参数
Header HTTP头参数
Authorization 必填 string
请参考签名认证生成认证信息
Accept 必填 string
请设置为application/json
Content-Type 必填 string
请设置为application/json
Wechatpay-Serial 必填 string
请求参数中的敏感字段,需要使用微信支付公钥加密(推荐),请参考获取微信支付公钥ID说明以及微信支付公钥加密敏感信息指引,也可以使用微信支付平台证书公钥加密,参考获取平台证书序列号、平台证书加密敏感信息指引
body 包体参数
appid 必填 string(32)
【商户appid】申请商户号的appid或商户号绑定的appid(企业号corpid即为此appid)
out_batch_no 必填 string(32)
【商家批次单号】商户系统内部的商家批次单号,要求此参数只能由数字、大小写字母组成,在商户系统内部唯一
batch_name 必填 string(32)
【批次名称】该笔批量转账的名称
batch_remark 必填 string(32)
【批次备注】转账说明,UTF8编码,最多允许32个字符
total_amount 必填 integer
【转账总金额】转账金额单位为“分”。转账总金额必须与批次内所有明细转账金额之和保持一致,否则无法发起转账操作
total_num 必填 integer
【转账总笔数】一个转账批次单最多发起一千笔转账。转账总笔数必须与批次内所有明细之和保持一致,否则无法发起转账操作
transfer_detail_list 必填 array[TransferDetailInput]
【转账明细列表】发起批量转账的明细列表,最多一千笔
属性 | |
transfer_scene_id 选填 string(36)
【转账场景ID】该批次转账使用的转账场景,如不填写则使用商家的默认场景,如无默认场景可为空,可前往“商家转账到零钱-前往功能”中申请。
如:1001-现金营销
notify_url 选填 string(256)
【通知地址】异步接收微信支付结果通知的回调地址,通知url必须为公网可访问的url,必须为https,不能携带参数。
请求示例
应答参数
|
out_batch_no 必填 string(32)
【商家批次单号】商户系统内部的商家批次单号,在商户系统内部唯一
batch_id 必填 string(64)
【微信批次单号】微信批次单号,微信商家转账系统返回的唯一标识
create_time 必填 string(32)
【批次创建时间】批次受理成功时返回,按照使用rfc3339所定义的格式,格式为YYYY-MM-DDThh:mm:ss+TIMEZONE
batch_status 选填 string
【批次状态】ACCEPTED:已受理。批次已受理成功,即将进入转账中。若发起30分钟后仍处于该状态,可能原因是商户账户余额不足等。在24小时内充值充足资金将继续执行转账,请再次查单确认状态。
PROCESSING:转账中。已开始处理批次内的转账明细单
FINISHED:已完成。批次内的所有转账明细单都已处理完成
CLOSED:已关闭。可查询具体的批次关闭原因确认
应答示例
错误码
公共错误码
状态码 | 错误码 | 描述 | 解决方案 |
---|---|---|---|
400 | PARAM_ERROR | 参数错误 | 请根据错误提示正确传入参数 |
400 | INVALID_REQUEST | HTTP 请求不符合微信支付 APIv3 接口规则 | 请参阅 接口规则 |
401 | SIGN_ERROR | 验证不通过 | 请参阅 签名常见问题 |
500 | SYSTEM_ERROR | 系统异常,请稍后重试 | 请稍后重试 |
业务错误码
状态码 | 错误码 | 描述 | 解决方案 |
---|---|---|---|
400 | INVALID_REQUEST | 请求参数符合参数格式,但不符合业务规则 | 根据错误提示,传入正确参数 |
400 | INVALID_REQUEST | 创建订单冲突,请勿并发调用 | 根据错误提示调整调用策略 |
400 | INVALID_REQUEST | 对应单号已超出重试期,请查单确认后决定是否换单请求 | 根据错误提示调整调用策略 |
400 | INVALID_REQUEST | 此IP地址不允许调用该接口 | 请在商户平台-商家转账产品详情-转账发起方式-API发起-接口安全 中配置发起转账的IP地址 |
400 | INVALID_REQUEST | API通道未开启 | 请在商户平台-商家转账产品设置中配置API发起转账 |
400 | INVALID_REQUEST | 产品权限异常 | 请在商户平台-商家转账产品设置中开通产品权限 |
400 | INVALID_REQUEST | 超出商户单日转账额度,请核实产品设置是否准确 | 请在商户平台-商家转账产品设置中配置转账日限额 |
400 | INVALID_REQUEST | 你尚未获取该转账场景 | 请在商户平台-商家转账产品设置中申请该场景 |
400 | INVALID_REQUEST | 未配置收款用户列表 | 请前往商户平台-商家转账到零钱-转账场景中添加 |
400 | PARAM_ERROR | 单批次明细笔数不合法,最高支持1000笔明细用 | 根据错误提示调整策略 |
401 | APPID_MCHID_NOT_MATCH | 商户号和AppID没有绑定关系 | 商户号和AppID没有绑定关系 |
403 | ACCOUNTERROR | 商户账户付款受限 | 可前往商户平台-违约记录获取解除功能限制指引 |
403 | NO_AUTH | 商户信息不合法 | 登录商户平台核对,传入正确信息 |
403 | NOT_ENOUGH | 资金不足 | 商户账户资金不足,请充值后原单重试,请勿更换商家转账批次单号 |
429 | FREQUENCY_LIMITED | 频率超限 | 该笔请求未受理,请降低频率后原单重试,请勿更换商家转账批次单号 |
500 | SYSTEM_ERROR | 系统错误 | 请勿更换商家转账批次单号,请使用相同参数再次调用API。否则可能造成资金损失 |