开发者社区> 方倍工作室> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

微信支付开发(11) Native支付

简介: 关键字:微信公众平台 微信支付 Native原生支付作者:方倍工作室原文:http://www.cnblogs.com/txw1958/p/wxpay-native.html   由于微信支付接口更新,本文档已过期,请查看新版微信支付教程。
+关注继续查看

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

 

由于微信支付接口更新,本文档已过期,请查看新版微信支付教程。地址 http://www.cnblogs.com/txw1958/category/624506.html

 

在这篇微信公众平台开发教程中,我们将介绍如何开发实现微信支付的Native功能。

本文分为以下三个部分:

  1. 生成Native支付URL
  2. 生成二维码
  3. 生成Package


一、生成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支付就形成了。

 

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
WKUIDelegate协议 - 手机网站支付转Native支付
为了节约开发成本,很多Native-H5混合App采用手机网站支付的方式去实现支付模块。但手机网站支付的网络依赖比较严重,也通常需要经过更多的验证,这种种原因导致手机网站支付的成功率比Native支付低,对商户的利益造成影响。
0 0
网站调用支付宝进行支付-Java后台调用支付宝支付
网站调用支付宝进行支付-Java后台调用支付宝支付 最近公司一个产品用到了打赏支付,其中一个是支付宝,记录一下java后台调用支付宝的过程付代码。本文讲的是使用沙箱环境(支付宝提供的一种开发专用模式,不要实际支付,可以走通整个流程)。
1183 0
java支付宝开发-02-手机网站支付
源码已上传github,欢迎专注:https://github.com/shirayner/alipay-wap 一、基础部分 1.手机网站支付产品介绍 1.1 阅读官方介绍: 手机网站支付产品介绍 1.2 看完官方的介绍之后,可以做出如下总结: 通过接入此接口,能让商家接入支付宝的支付功能。
1973 0
关于微信支付和支付宝支付java实现
目前支付宝支付和微信支付是算是目前app的标配了 支付宝支付在更新过后有了官方专门的sdk和demo,所以相对而言比较简单,而微信支付稍微复杂一点,下面的文章会附实例代码,微信支付也是参考的github上的某位大神级人物的代码。
805 0
微信支付开发(7) H5支付
关键字:微信支付 微信支付v3 H5支付 wap支付 prepay_id 作者:方倍工作室原文: http://www.cnblogs.com/txw1958/p/wxpayv3_h5.html    本文介绍微信支付下的H5支付实现流程。
2085 0
****基于H5的微信支付开发详解[转]
  这次总结一下用户在微信内打开网页时,可以调用微信支付完成下单功能的模块开发,也就是在微信内的H5页面通过jsApi接口实现支付功能。当然了,微信官网上的微信支付开发文档也讲解的很详细,并且有实现代码可供参考,有的朋友直接看文档就可以自己实现此支付接口的开发了。
1648 0
微信原生支付 Native扫码支付( V3.3.7 版本)
原文:微信原生支付 Native扫码支付( V3.3.7 版本) [尊重别人的劳动成果,转载请注明出处:一缕晨光工作室,www.wispdawn.com] 前言 辛苦研究三天,遇到各种困难,最终还是克服了,把我的理解和思路分享给需要帮助的人,如果你觉的好,请帮我分享一下,谢谢。
1205 0
x3d
开发微信支付的一点心得
由于使用了别人封装的微信公众平台SDK http://www.cnblogs.com/x3d/p/3740454.html  ,所以省去了完整理解开发手册的时间。 微信支付,即便交了保证金,你还是处理测试阶段,不能正式发布。
911 0
微信支付功能
  微信支付的使用场景正在不断延伸。除了此前已经介绍的麦当劳和 QQ 充值账号,目前已经开始有更多的公众账号和企业销售逐步接入微信支付功能。   据了解,包括“微彩票”、“微团购”、“南派三叔”、腾讯充值中心等公众账号都已经可以使用微信支付功能。
1072 0
+关注
方倍工作室
CSDN博客技术专家。已出版《微信公众平台开发最佳实践》第一版、第二版及第三版,《企业微信公众平台开发实战》等书籍。
文章
问答
文章排行榜
最热
最新
相关电子书
更多
支付宝小程序教程
立即下载
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载