在调试微信支付v3接口的时候, 报如下错误:
返回参数中return_msg打印出的内容是:
商户号mch_id与appid不匹配
源代码:
$notify = new NativePay(); $input = new WxPayUnifiedOrder(); $input->SetBody("test"); $input->SetAttach("test"); $input->SetOut_trade_no("sdkphp123456789" . date("YmdHis")); $input->SetTotal_fee("1"); $input->SetTime_start(date("YmdHis")); $input->SetTime_expire(date("YmdHis", time() + 600)); $input->SetGoods_tag("test"); $input->SetNotify_url(" $input->SetTrade_type("MWEB"); $input->SetProduct_id("123456789"); $result = $notify->GetPayUrl($input); dd($result); // 这个dd方法如果您是用laravel这种垃圾桶框架就懂的, 和tp的dump()类似
代码返回:
array(2) { ["return_code"] => string(4) "FAIL" ["return_msg"] => string(44) "appid和mch_id不匹配,请检查后再试" }
传这个参数干嘛? 别问, 腾讯规定就是啦~ 听说微信支付接口又又又又出新要求了?
即便腾讯的产品经理尝试去在各个令人匪夷所思的地方陈列关键的功能, 或许写腾讯官方文档的作者们喝了二两陈年假酒导致提笔忘大纲, 我们还是可以在各三方博客里搜集到方法: 微信支付商户号产品中心界面给商户号绑定了一个订阅号appid, 结果发现如图的样子
看到屏幕中出现的灰色小字提示, 无论是开发者还是运营者,都想表示俩字——好烦
可输入已通过微信认证的服务号、政府或媒体类订阅号、小程序、企业微信、移动应用、网站应用。
微信支付规定AppID对普通开发者而言就是公众号(必须是服务号)的AppID
根据新版的接入指引文档(https://kf.qq.com/faq/181105JJNbmm181105eUZfee.html)所展示的内容看,如果微信支付想传参appid, 如果是普通开发者, 就要去找一个服务号形式的公众号, 言外之意, 再去每年交300大洋去解决这个问题。再去微信支付商户号管理界面中的“产品中心”里粘贴公众号的AppID来绑定。
开始交钱吧亲们~?