Home > Article > Backend Development > WeChat payment development (11) Native payment, native payment_PHP tutorial
Keywords: WeChat public platform WeChat payment Native payment
Author: Fangbei Studio
Original text :http://www.cnblogs.com/txw1958/p/wxpay-native.html
In this WeChat public platform development tutorial, we will introduce how to develop the Native function of WeChat payment.
This article is divided into the following three parts:
Native (native) payment URL is a series of URLs with the prefix weixin://wxpay/bizpayurl?, followed by a series of key-value pairs that identify the merchant. The rules for Native payment URL are as follows:
weixin://wxpay/bizpayurl?sign=XXXXX&appid=XXXXXX&productid=XXXXXX×tamp=XXXXXX&noncestr=XXXXXX
The generated code is as follows
<span>1</span> <?<span>php </span><span>2</span> <span>include_once</span>("WxPayHelper.php"<span>); </span><span>3</span> <span>$wxPayHelper</span> = <span>new</span><span> WxPayHelper(); </span><span>4</span> <span>echo</span> <span>$wxPayHelper</span>->create_native_url("1234567890"<span>); </span><span>5</span> ?>
The productid is the unique ID of the product. Developers need to define and maintain their own product ID. This ID is equivalent to an order. The WeChat backend uses this ID to obtain transaction information through the POST merchant backend.
The URL generated by the above code is as follows:
weixin://wxpay/bizpayurl?appid=wxb489e8caeabcdefg<span>&noncestr</span>=BBvdr5atZ9D7s08X<span>&productid</span>=1234567890<span>&sign</span>=e15d2466a85cd62b530e2f690604e7502f67ccb5<span>×tamp</span>=1408025996
You can use a third-party interface to generate a QR code, or you can use your own code or plug-in. Here we introduce PHP QR Code.
PHP QR Code is a PHP QR code generation library that can be used to easily generate QR codes. The official website provides downloads and multiple demonstration demos. View address: http://phpqrcode.sourceforge.net /.
The syntax for generating QR codes is very simple, just fill in the URL as a parameter. Examples are as follows
<span>include</span> 'phpqrcode.php'<span>; QRcode</span>::png('http://www.cnblogs.com/txw1958/');
This generates a payment QR code.
When the user scans the above QR code, the Native payment URL will be called. The URL needs to call the order information Package and return it to the user. This Package is implemented by create_native_package() of the WxPayHelper class. The calling code is as follows:
<span> 1</span> <?<span>php </span><span> 2</span> <span>include_once</span>("WxPayHelper.php"<span>); </span><span> 3</span> <span> 4</span> <span>$commonUtil</span> = <span>new</span><span> CommonUtil(); </span><span> 5</span> <span>$wxPayHelper</span> = <span>new</span><span> WxPayHelper(); </span><span> 6</span> <span>$wxPayHelper</span>->setParameter("bank_type", "WX"<span>); </span><span> 7</span> <span>$wxPayHelper</span>->setParameter("body", "方倍工作室微信支付开发教程"<span>); </span><span> 8</span> <span>$wxPayHelper</span>->setParameter("partner", "1900000109"<span>); </span><span> 9</span> <span>$wxPayHelper</span>->setParameter("out_trade_no", <span>$commonUtil</span>-><span>create_noncestr()); </span><span>10</span> <span>$wxPayHelper</span>->setParameter("total_fee", "1"<span>); </span><span>11</span> <span>$wxPayHelper</span>->setParameter("fee_type", "1"<span>); </span><span>12</span> <span>$wxPayHelper</span>->setParameter("notify_url", "htttp://www.baidu.com"<span>); </span><span>13</span> <span>$wxPayHelper</span>->setParameter("spbill_create_ip", "127.0.0.1"<span>); </span><span>14</span> <span>$wxPayHelper</span>->setParameter("input_charset", "GBK"<span>); </span><span>15</span> <span>echo</span> <span>$wxPayHelper</span>-><span>create_native_package(); </span><span>16</span> ?>
When the user scans the QR code, he will jump directly to the product page, as shown below
Such a Native payment is formed.
Usually you need to find a third party to write the payment interface, it is more troublesome to do it yourself
Look for the official website, WeChat payment application was opened yesterday