微信公众号支付开发-php
一、使用背景
1、在微信公众号内,打开H5商城网站,调用微信支付控件完成支付。
2、解决测试服跟正式服同用一个公众号进行公众号支付开发
注意:微信公众号支付与H5支付的区别在于:微信公众号支付是在微信浏览器中调用微信支付控件;H5支付是在非微信浏览器中调用微信支付控件。
二、准备工作
微信公众号支付需要在微信公众平台和商户平台完成以下配置,并获取相关开发配置数据。
1、公众平台上的APPID、APPsecret
2、商户平台下载证书、商户号、商户支付秘钥。
3、在商户平台进行业务配置:支付授权目录、设置JS安全接口域名。
1)支付授权目录:链接包括http或者https,以'/'结尾。
注意:该目录为发起支付下单的链接地址去除最后一个斜杠后面内容的部分。举例如下:
http://www.baidu.com/hello/elke/ekeke/pay/pay_sn/12333 那么该目录则是:http://www.baidu.com/hello/elke/ekeke/pay/pay_sn/
该例子中,pay_sn是参数名称,12333是参数值,因此该目录只需要最后一个斜杠之前的部分。在开发过程中,该链接中可能存在很多参数,比如:http://www.baidu.com/hello/elke/ekeke/pay/pay_sn/12333/order_sn/2445/state/4 对于这样的链接,参数部分是在变化的,不可能写死在支付授权目录中。那么对于这样的链接,建议使用问哈传参,改为http://www.baidu.com/hello/elke/ekeke/pay?pay_sn=12333&order_sn=2445&state=4 那么对于这个链接,支付目录则为http://www.baidu.com/hello/elke/ekeke/
此时一定要注意官方文档上说链接中不包括#号后面的部分,实际上也不包括问哈后面的部分
2)设置JS接口安全域名
位置:微信支付——>公共号设置——>功能设置——>JS接口安全域名
说明:设置JS接口安全域名后,公众号开发者可在该域名下调用微信开放的JS接口。
三、开发步骤
注意:如果是在测试环境的公众号与正式环境的公众号不同,测试环境的公众号又