微信支付开发(11) Native支付
2014-08-19 23:51
253 查看
关键字:微信公众平台 微信支付 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×tamp=XXXXXX&noncestr=XXXXXX
生成代码如下
其中productid是商品唯一id,开发人员需要定义并维护自己的商品id,这个id与一张订单等价,微信后台凭借该id通过POST商户后台获取交易信息。
上述代码生成的URL如下:
PHP QR Code是一个PHP二维码生成类库,利用它可以轻松生成二维码,官网提供了下载和多个演示demo,查看地址:http://phpqrcode.sourceforge.net/。
其生成二维码的语法非常简单,直接填入URL当参数即可。范例如下
这样就生成了一个支付的二维码。
当用户扫描二维码后,将直接跳到商品页面,如下所示
这样一个Native支付就形成了。
作者:方倍工作室
原文:http://www.cnblogs.com/txw1958/p/wxpay-native.html
在这篇微信公众平台开发教程中,我们将介绍如何开发实现微信支付的Native功能。
本文分为以下三个部分:
生成Native支付URL
生成二维码
生成Package
一、生成Native支付URL
Native(原生)支付URL是一系列具有weixin://wxpay/bizpayurl?前缀的URL,同时后面紧跟着一系列辨别商户的键值对。Native(原生)支付URL的规则如下:weixin://wxpay/bizpayurl?sign=XXXXX&appid=XXXXXX&productid=XXXXXX×tamp=XXXXXX&noncestr=XXXXXX
生成代码如下
<?php include_once("WxPayHelper.php"); $wxPayHelper = new WxPayHelper(); echo $wxPayHelper->create_native_url("1234567890"); ?>
其中productid是商品唯一id,开发人员需要定义并维护自己的商品id,这个id与一张订单等价,微信后台凭借该id通过POST商户后台获取交易信息。
上述代码生成的URL如下:
weixin://wxpay/bizpayurl?appid=wxb489e8caeabcdefg&noncestr=BBvdr5atZ9D7s08X&productid=1234567890&sign=e15d2466a85cd62b530e2f690604e7502f67ccb5×tamp=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()实现,调用代码如下:<?php include_once("WxPayHelper.php"); $commonUtil = new CommonUtil(); $wxPayHelper = new WxPayHelper(); $wxPayHelper->setParameter("bank_type", "WX"); $wxPayHelper->setParameter("body", "方倍工作室微信支付开发教程"); $wxPayHelper->setParameter("partner", "1900000109"); $wxPayHelper->setParameter("out_trade_no", $commonUtil->create_noncestr()); $wxPayHelper->setParameter("total_fee", "1"); $wxPayHelper->setParameter("fee_type", "1"); $wxPayHelper->setParameter("notify_url", "htttp://www.baidu.com"); $wxPayHelper->setParameter("spbill_create_ip", "127.0.0.1"); $wxPayHelper->setParameter("input_charset", "GBK"); echo $wxPayHelper->create_native_package(); ?>
当用户扫描二维码后,将直接跳到商品页面,如下所示
这样一个Native支付就形成了。
相关文章推荐
- 微信支付开发(11) Native支付
- 微信支付开发(11) Native支付
- 微信支付开发(11) Native支付
- 微信支付v2开发(11) Native支付
- 微信支付开发(11) Native支付
- 微信支付v2开发(11) Native支付
- 微信支付开发查询退款-公众号支付开发-视频教程11
- 微信支付开发动态链接Native支付
- 微信支付开发(4) 动态链接Native支付
- 微信支付开发动态链接Native支付实例代码
- 微信支付二维码native原生支付开发模式一
- 微信支付二维码native原生支付开发模式一
- 微信沙箱退款查询接口demo实例,微信公众号支付退款查询api,微信沙盒1004用例-公众号/APP/扫码支付退款查询——微信支付沙箱开发11
- 分享微信扫码支付开发遇到问题及解决方案-附Ecshop微信支付插件
- 微信支付开发(1) JS API支付
- 微信二维码支付native原生支付开发模式二
- 分享微信扫码支付开发遇到问题及解决方案-附Ecshop微信支付插件
- 微信支付之扫码支付开发:我遇到的坑及解决办法(附:Ecshop 微信支付插件)
- 微信支付开发(1) JS API支付
- 微信支付app支付3.0接口开发