天天看點

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

關鍵字:微信公衆平台 微信支付 Native原生支付

作者:方倍工作室

原文:http://www.cnblogs.com/txw1958/p/wxpay-native.html

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

本文分為以下三個部分:

生成Native支付URL

生成二維碼

生成Package

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

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

 生成代碼如下

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

上述代碼生成的URL如下:

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

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

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

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

當使用者掃描上述二維碼的時候,會調用Native支付URL,URL需要調用訂單資訊Package傳回給使用者,而該Package由WxPayHelper類的create_native_package()實作,調用代碼如下:

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

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

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