使用 laravel + easyWechat 做微信公众号支付

准备

1.微信服务号  相应的  appId  和 appsecret

使用 laravel + easyWechat 做微信公众号支付_第1张图片

2.微信支付商户号 的 (商户号的id)  mch_id   (商户支付的密钥)  key

 
  

商户的key要到微信支付商户平台上查看

使用 laravel + easyWechat 做微信公众号支付_第2张图片

开始开发

1.laravel 安装 laravel/wechat

     参考地址 https://github.com/overtrue/laravel-wechat

     

   composer require "overtrue/laravel-wechat:~4.0"

       同时要注意 laravel 的   csrf_token 机制   

使用 laravel + easyWechat 做微信公众号支付_第3张图片

 $officialAccount = EasyWeChat::officialAccount(); // 公众号实例
  $work = EasyWeChat::work(); // 企业微信实例
  $payment = EasyWeChat::payment(); // 微信支付实例
  $openPlatform = EasyWeChat::openPlatform(); // 开放平台实例
  $miniProgram = EasyWeChat::miniProgram(); // 小程序实例

这此实例的参数是自动从   config/wechat.php 配置文件中自动获取的,当然也可以自已指定

  

使用 laravel + easyWechat 做微信公众号支付_第4张图片

 

config/wechat.php 文件的格式如下图

使用 laravel + easyWechat 做微信公众号支付_第5张图片

相应的在env文件中写入  appid appsecret  mch_id   key  和 token

使用 laravel + easyWechat 做微信公众号支付_第6张图片

 

前端发起点击支付,发起支付请求使用 laravel + easyWechat 做微信公众号支付_第7张图片

 

页面的代码  ajax请求 wechat/prepay  地址,后台返加的config中有 调起支付所须的参数

使用 laravel + easyWechat 做微信公众号支付_第8张图片

后台的wechat/pay的代码如下,

使用 laravel + easyWechat 做微信公众号支付_第9张图片

这里的config就是前端的所有参数的数组

这样就调起微信支付了

须要注意的是,微信对支付的目录是有规定的,必须在打定的目录下的路径才可以调用

如:在微信商户平台配置 的支付路径是   www.xxx.com/wechat/payment/    (注意结尾要有  “/”)

那么我们的支付代码的路径就应该是 这个路径下的 子路径   如:www.xxx.com/wechat/payment/orderpay    www.xxx.com/wechat/payment/mondypay  等都可以

但是 www.xxx.com/wechat/payment   www.xxx.com/wechat/payment/orderpay/sunpay  等都是不可以的

 

现在微信的支付路径配置转到了商户平台上,自已去配置一下

 

 

 

 

 

你可能感兴趣的:(使用 laravel + easyWechat 做微信公众号支付)