微信服务商发起微信支付给出的官方文档以及SDK不够详细,导至我们走了一些弯路,把他分享出来,我这边主要是用PHP开发,所以未加说的话示例都是PHP代码
本文只正对微信服务商情况下使用
(1)第一个区别是openid,微信官方文档里直接传的openid,服务商模式需要传sub_openid,获取的方式参照https://pay.weixin.qq.com/wiki/doc/api/jsapi_sl.php?chapter=9_1就不说明了,总之获取所需都是子商户即特约商户的appid,appsecret。
(2)需要在传入页面多传一个sub_mch_id参数。
(3)将调用的类中判断openid那里的代码注释掉,不然永远进不到下一步。
(4)在服务商的微信支付商户后台设置授权目录,而不是像普通商户那样在公众平台后台来设置。
(5)将openid传给sub_open_id 这个是跟商户模式下不一样的
这里特别说明下子商户也有appid和mchid,服务商也有appid和mchid,这2个很容易被混淆,在服务商模式下发起支付时,所用的appid和mchi为服务商的,sub_open_id和sub_mch_id为子商户的,同时不需要传openid,这样就可以发起服务商模式支付。
参照文档:http://www.cnblogs.com/linkbiz/p/5790105.html
发表评论