回调通知注意事项
1、notify_url****填写注意事项
● notify_url需要填写商户自己系统的真实地址,不能填写接口文档或demo上的示例地址。
● notify_url必须是以https://或http://开头的完整全路径地址,并且确保url中的域名和IP是外网可以访问的,不能填写localhost、127.0.0.1、192.168.x.x等本地或内网IP。
● notify_url不能携带参数。
● 常见错误举例:
错误描述 | 错误示例 |
---|---|
url中只有域名,缺少具体的路径 | http://www.weixin.qq.com |
url不是以https://或http://开头,缺少域名或IP | ./PayNotify.aspx |
url中填写了本地或者内网IP | http://127.0.0.1/pay/notify.php |
填写了不是url格式的字符串 | xxxxxxx,1234567,test |
2、****返回报文格式规范
● 返回报文必须是xml格式,字段名需与接口文档说明的一致,报文前后和各字段标签中间不能包含特殊字符。
● 常见错误举例:
错误描述 | 错误示例 |
---|---|
返回内容为空或者非xml格式字符串 | ok,success,支付成功 |
返回的xml格式报文中间有其他字符 | |
返回的是json格式 | {"return_code":"SUCCESS";"return_msg":"OK"} |
返回的是整个页面的html代码 |
3、****回调处理逻辑注意事项
● notify_url的代码处理逻辑不能做登录态校验。
● 商户系统收到支付结果通知,需要在5秒内返回应答报文,否则微信支付认为通知失败,后续会重复发送通知。
● 同样的通知可能会多次发送给商户系统,商户系统必须能够正确处理重复的通知。如果已处理过,直接给微信支付返回成功。
● 商户侧对微信支付回调IP有防火墙策略限制的,需要对以下IP段开通白名单:
上海电信出口网段:101.226.103.0/25
上海联通出口网段:140.207.54.0/25
上海CAP出口网段:121.51.58.128/25(新增)
深圳电信出口网段:183.3.234.0/25
深圳联通出口网段:58.251.80.0/25
深圳CAP出口网段:121.51.30.128/25(新增)
香港出口网段:203.205.219.128/25
*注意:上海CAP、深圳CAP的出口为新增,商户侧需要新开防火墙
最后修改时间: 2 年前