程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> 微信支付開發(11) Native支付,native支付

微信支付開發(11) Native支付,native支付

編輯:關於PHP編程

微信支付開發(11) Native支付,native支付


關鍵字:微信公眾平台 微信支付 Native原生支付
作者:方倍工作室
原文:http://www.cnblogs.com/txw1958/p/wxpay-native.html

 

在這篇微信公眾平台開發教程中,我們將介紹如何開發實現微信支付的Native功能。

本文分為以下三個部分:


一、生成Native支付URL

Native(原生)支付URL是一系列具有weixin://wxpay/bizpayurl?前綴的URL,同時後面緊跟著一系列辨別商戶的鍵值對。Native(原生)支付URL的規則如下:

weixin://wxpay/bizpayurl?sign=XXXXX&appid=XXXXXX&productid=XXXXXX&timestamp=XXXXXX&noncestr=XXXXXX

 生成代碼如下

1 <?php
2 include_once("WxPayHelper.php");
3 $wxPayHelper = new WxPayHelper();
4 echo $wxPayHelper->create_native_url("1234567890");
5 ?>

其中productid是商品唯一id,開發人員需要定義並維護自己的商品id,這個id與一張訂單等價,微信後台憑借該id通過POST商戶後台獲取交易信息。

上述代碼生成的URL如下:

weixin://wxpay/bizpayurl?appid=wxb489e8caeabcdefg&noncestr=BBvdr5atZ9D7s08X&productid=1234567890&sign=e15d2466a85cd62b530e2f690604e7502f67ccb5&timestamp=1408025996

 

二、生成二維碼

生成二維碼可以用第三方接口,也可以使用自己的代碼或插件,這裡介紹PHP QR Code。

PHP QR Code是一個PHP二維碼生成類庫,利用它可以輕松生成二維碼,官網提供了下載和多個演示demo,查看地址:http://phpqrcode.sourceforge.net/。

其生成二維碼的語法非常簡單,直接填入URL當參數即可。范例如下

include 'phpqrcode.php'; 
QRcode::png('http://www.cnblogs.com/txw1958/');

這樣就生成了一個支付的二維碼。

 

三、生成Package

當用戶掃描上述二維碼的時候,會調用Native支付URL,URL需要調用訂單信息Package返回給用戶,而該Package由WxPayHelper類的create_native_package()實現,調用代碼如下:

 1 <?php
 2 include_once("WxPayHelper.php");
 3 
 4 $commonUtil = new CommonUtil();
 5 $wxPayHelper = new WxPayHelper();
 6 $wxPayHelper->setParameter("bank_type", "WX");
 7 $wxPayHelper->setParameter("body", "方倍工作室微信支付開發教程");
 8 $wxPayHelper->setParameter("partner", "1900000109");
 9 $wxPayHelper->setParameter("out_trade_no", $commonUtil->create_noncestr());
10 $wxPayHelper->setParameter("total_fee", "1");
11 $wxPayHelper->setParameter("fee_type", "1");
12 $wxPayHelper->setParameter("notify_url", "htttp://www.baidu.com");
13 $wxPayHelper->setParameter("spbill_create_ip", "127.0.0.1");
14 $wxPayHelper->setParameter("input_charset", "GBK");
15 echo $wxPayHelper->create_native_package();
16 ?>

當用戶掃描二維碼後,將直接跳到商品頁面,如下所示

 

這樣一個Native支付就形成了。

 


微信公眾平台開通微信支付必須要開發者模式或者與第三方合作?

這個一般都是要找第三方來寫支付接口的,自己弄比較麻煩
 

微信支付接口技術開發文檔

找官網啊,昨天微信支付開放申請了
 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved