微信支付接口收不到支付通知原因
微信支付是集成在微信客户端的支付功能,用户可以通过手机完成快速的支付流程。
本文主要介绍在开发过程中,用户下单支付完成后,统一下单API中提交的参数notify_url连接无法接收到微信通知的处理,前提是您的这个连接网址可以正常打开。
操作方法
- 01
首先确定您已经配置好微信支付,用户已经能通过您的微信公众号付款,只是付款成功后您配置的通知接口收不到成功的通知消息,然后再往下读。
- 02
这次说明使用微信支付接口PHP版本的,配置文件在WxPay.pub.config.php中,NOTIFY_URL 配置的连接就是您微信平台服务器接收通知消息的接口文件。
- 03
针对上面配置说明下,不管你用哪种场景方式支付,扫码、JSAPI、APP等都需要提供一个通知接口,以便您的平台收到成功消息后实现自动充值或购买操作。
- 04
官方有说明,平台给您的接口发送通知是30分钟内8次,如果收不到您就不能实现自动充值等功能,很是麻烦,需要手动去商户平台对账操作,但这个接口具体要求我看遍了官方文档也没有详细的说明。
- 05
关键步骤:我用的是thinkphp为框架开发的微信公众号平台,所以开始接口地址我配置的是:http://www.xxxxxx.com/index.php?s=s=/addon/chongzhi/chongzhiOK/token/xxxxx.html 这种带参数的地址,这个地址在外面是可以正常打开访问的,但就是支付成功后收不到微信发来的通知。后来我把地址更换为:http://www.xxxxxx.com/huitiao.php 就能正常接收通知了,才发现微信支付通知接口地址不允许带有任何参数的。
- 06
实用技能:但是我用的是thinkphp框架,总不能再写个单独接收文件吧,还要引用操作数据库什么的,多不方便,我需要在框架下操作,那么好办,我直接在服务器上做了个rewrite,哈哈,当通知接口是www.xxx.com/huitiao.php时我rewrite了,其实还是访问我的 http://www.xxxxxx.com/index.php?s=s=/addon/chongzhi/chongzhiOK/token/xxxxx.html ,这样既能接收通知,也能正常使用功能了。