微信公众号支付

最重要:公众号必须有支付权限  具体如何查看请百度
先配置一下 否则开发很蛋疼 楼主这几天都在蛋疼中

1.在公众号中获取 appid, mch_id, key, AppSecret这四个参数
2.设置支付目录    如果支付地址是http://域名/api/pay     支付目录就是:http://域名/api/
3.ip白名单配置(获取access_token)  当前发起需要access_token的服务器ip
    1.登录公众平台 进入开发->基本配置页面 
    2.点击配置进入白名单设置页   (40001 access_token is invalid or not latest hint 要全局缓存否则另一台服务器获取到老服务器的access_token就是失效)
4.设置回调域名   就是数据回调的域名(去掉http://和https://)
5.需要用户在需要测试支付公众号的openid(生成签名需要)
6.网页授权域名:微信公众号自己服务后端的域名 
7.JS接口安全域名:JS发起请求的服务器的域名(去掉http://和https://)
8.授权回调页面域名 需要下载一个文件放到当前的web服务器的根目录下使用通过域名+文件名能够访问去掉(http://和https://)
所有的域名都要ICP备案
开发流程:
    1)获取用户权限(只要能获取openid,做不做都没有关系)
    2)调用统一下单接口获取预支付id
    3)H5调起微信支付的内置JS
    4)支付完成之后,微信回调信息的处理
现在开始具体步骤了
1)生成统一下单接口,获取预支付prepay_id 主要参数
       appid = 微信公众号应用id   微信公众号后台获取
       mch_id = 微信支付商户号    微信公众号后台获取
       body = 商品描述(最好用英文字符串会少掉很多问题)
       trade_type = 交易类型  这里楼主使用的是JSAPI(公众号支付)
       nonce_str = 随机字符串 可以使用UUID32去掉其中的“-”
       notify_url = 回调通知地址(微信订单异步回调地址,校验订单是否正确)
       out_trade_no = 商户订单号(商户自己生成的订单号)
       totai_fee = 订单总金额
       openid = 用户在该公众号下的openid
       sign = 签名(https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=4_3)
       key = 秘钥(微信商户平台(pay.weixin.qq.com)-->账户设置-->AP

待续。。。。。。

你可能感兴趣的:(微信支付)