2014年3月4日晚,腾讯宣布微信支付接口结束内测,将向所有通过认证的服务号开放。具体信息包括:
1.微信公布微信支付申请流程:
(1)首先需要申请成为服务号,并在申请微信认证后;
(2)填写商户基本资料、业务基本资料、财务审核资料。
(3)通过审核进入开发流程,通过开发接口文档的指引,完成开发。
(4)开发完成后,即开通微信支付能力。
2014年09月13日,为了给更多的用户提供微信支付电商平台,微信服务号申请微信支付功能将不再收取2万元保证金,开店门槛将降低。
保 证金的取消无疑是对微信支付门槛的大大降低。未来一段时间内或将有大批商户开始申请接入微信支付,2014年7月底微信官方公布微信公众账号超过580 万,每天新增1.5万,据业内人士分析,这一数据年底有望破1000万,将超过淘宝800万的卖家数目。微信降低支付门槛,更多的淘宝卖家和新型创业者将 会大量涌微信公众平台,势必会迎来更多的企业用户注册。

注:目前逐渐放开部分订阅号的微信支付申请权限,还没有完全放开,所以在这里还只是针对服务号!

第一步、下载微信官方PHP微信支付demo包

下载地址:http://mp.weixin.qq.com/wiki/7/aaa137b55fb2e0456bf8dd9148dd613f.html

第二步、操作步骤

将下载的demo包里边的WxPayPubHelper文件夹拷贝到Thinkphp框架下的Library下的Vendor下的Wxpay文件夹下,如下图

fe01ce2a7fbac8fafaed.jpg

配置WxPay.pub.config.php

247451634e6ce9ce76ab-1024x736.jpg

操作中引入WxPayPubHelper

Vendor('Wxpay.WxPayPubHelper.WxPayPubHelper');


dec2546bfd783642109a.jpg



//微信支付打包

    public function new_pay(){         Vendor('Wxpay.WxPayPubHelper.WxPayPubHelper');         $jsApi = new \JsApi_pub();         //=========步骤1:网页授权获取用户openid============         //通过code获得openid         if (!isset($_GET['code']))         {             //触发微信返回code码             $url = $jsApi->createOauthUrlForCode(\WxPayConf_pub::JS_API_CALL_URL);             Header("Location: $url");         }else         {             //获取code码,以获取openid         $code = $_GET['code'];             $jsApi->setCode($code);             $openid = $jsApi->getOpenId();         }         //=========步骤2:使用统一支付接口,获取prepay_id============         //使用统一支付接口         $unifiedOrder = new \UnifiedOrder_pub();         $unifiedOrder->setParameter("openid","$openid");//商品描述         $unifiedOrder->setParameter("body","贡献一分钱");//商品描述         //自定义订单号,此处仅作举例         $timeStamp = time();         $out_trade_no = \WxPayConf_pub::APPID."$timeStamp";         $unifiedOrder->setParameter("out_trade_no","$out_trade_no");//商户订单号         $unifiedOrder->setParameter("total_fee","1");//总金额         $unifiedOrder->setParameter("notify_url",\WxPayConf_pub::NOTIFY_URL);//通知地址         $unifiedOrder->setParameter("trade_type","JSAPI");//交易类型         $prepay_id = $unifiedOrder->getPrepayId();         //=========步骤3:使用jsapi调起支付============         $jsApi->setPrepayId($prepay_id);         $jsApiParameters = $jsApi->getParameters();         //dump($jsApiParameters);         $this->assign("jsApiParameters",$jsApiParameters);         $this->display();         }

前台页面new_pay.html内容

    function onBridgeReady(){
   WeixinJSBridge.invoke(
       'getBrandWCPayRequest',
      <?php echo $jsApiParameters; ?>,
       function(res){     
           if(res.err_msg == "get_brand_wcpay_request:ok" ) {}
       }
   );
}
if (typeof WeixinJSBridge == "undefined"){
   if( document.addEventListener ){
       document.addEventListener('WeixinJSBridgeReady', onBridgeReady, false);
   }else if (document.attachEvent){
       document.attachEvent('WeixinJSBridgeReady', onBridgeReady);
       document.attachEvent('onWeixinJSBridgeReady', onBridgeReady);
   }
}else{
   onBridgeReady();
}

    


注:这里是网页初始化就调用支付,你自己可以更改和定义,这里就不多说了!至此,thinkphp接入微信支付就成功了!赶快试试吧!

版权声明:若无特殊注明,本文皆为( yueshuo )原创,转载请保留文章出处。