一、报错信息
接口名称:微信支付商家转账 -> 「发起转账」
接口地址:
- /v3/transfer/batches
- /v3/fund-app/mch-transfer/transfer-bills
错误响应:
- HTTP状态码:400 Bad Request
- 错误详情:
{
"code": "INVALID_REQUEST",
"message": "此IP地址不允许调用接口,请按开发指引设置"
}
二、问题原因
根本原因:当前发起请求服务器IP地址未添加到微信商户平台的IP白名单中
安全机制:为了防止商户API密钥、证书私钥泄露后,被陌生IP发起调用盗走资金,在使用商家转账时必须设置请求来源IP,仅在商户平台系统信息管理配置的IP可调用商家转账API。
三、快速排查
- 检查微信商户平台IP白名单配置列表是否未配置当前发起请求主机IP地址
- 检查配置商户号与调用接口商户号是否一致
- 服务器/本地主机是否存在多个出口IP,如有多个出口IP需要全部在商户平台配置白名单
- 如有「IPV6」地址,需要一并配置,不能只配置「IPV4」地址
- 本地调试时,检查当前使用宽带是否有「动态公网IP」或者「固定公网IP」
四、解决方案
商户平台IP白名单配置操作需要商户超级管理员权限
1. 获取当前出口IP
请勿用于商业用途,仅供个人测试学习之用,请遵守中国法律法规,以下IP获取方式仅适用于单机,如您使用集群存在多个IP时,需要联系您公司运维或者服务提供方获取。
curl 4.aifuwu.net
curl 6.aifuwu.net
curl ip.aifuwu.net
2.检查配置白名单商户号与调用接口商户号
请求头「Authorization」中的「mchid」需要和登陆微信支付商户平台配置IP白名单商户号保持一致。
3.在微信支付商户平台设置白名单IP
扫码登陆「微信支付商户平台」后,访问「系统信息管理」页面地址
扫码登陆「微信支付商户平台」-> 产品中心 -> 运营工具 -> 商家转账 -> 前往功能 ->安全能力-> 点击「接口IP」

点击页面右侧的「添加」按钮

在弹窗填写相关信息
「业务范围」选择第一项「商家转账到零钱、企业付款到零钱、微工卡、品牌红包、企业微信付款」
「系统类型」当前固定为「IP」,直接选择即可
「系统名称」处填写用于 API 发起转账的服务器出口 IP,如存在多个出口IP时,需要全部配置在此处,点击新增系统信息即可添加新的IP
注意:如有「IPV6」地址,需要一并配置,不能只配置「IPV4」地址
