专栏首页一点博客微信扫码支付简介

微信扫码支付简介

微信扫码支付简介

微信扫码支付申请

微信扫码支付是商户系统按微信支付协议生成支付二维码,用户再用微信“扫一扫”完成支付的模式。该模式适用于PC网站支付、实体店单品或订单支付、媒体广告支付等场景。

申请步骤:(了解)

第一步:注册公众号(类型须为:服务号)

请根据营业执照类型选择以下主体注册:个体工商户| 企业/公司| 政府| 媒体| 其他类型。

第二步:认证公众号

公众号认证后才可申请微信支付,认证费:300元/次。

第三步:提交资料申请微信支付

登录公众平台,点击左侧菜单【微信支付】,开始填写资料等待审核,审核时间为1-5个工作日内。

第四步:开户成功,登录商户平台进行验证

资料审核通过后,请登录联系人邮箱查收商户号和密码,并登录商户平台填写财付通备付金打的小额资金数额,完成账户验证。

第五步:在线签署协议

本协议为线上电子协议,签署后方可进行交易及资金结算,签署完立即生效。

本课程已经提供好“传智播客”的微信支付账号,学员无需申请。

开发文档

微信支付接口调用的整体思路:

按API要求组装参数,以XML方式发送(POST)给微信支付接口(URL),微信支付接口也是以XML方式给予响应。程序根据返回的结果(其中包括支付URL)生成二维码或判断订单状态。

在线微信支付开发文档:

https://pay.weixin.qq.com/wiki/doc/api/index.html

如果你不能联网,请查阅讲义配套资源 (资源\配套软件\微信扫码支付\开发文档)

我们在本章课程中会用到”统一下单”和”查询订单”两组API

1. appid:微信公众账号或开放平台APP的唯一标识

2. mch_id:商户号 (配置文件中的partner)

3. partnerkey:商户密钥

4. sign:数字签名, 根据微信官方提供的密钥和一套算法生成的一个加密信息, 就是为了保证交易的安全性

微信支付SDK

微信支付提供了SDK, 大家下载后打开源码,install到本地仓库。

课程配套的本地仓库已经提供jar包,所以安装SDK步骤省略。

使用微信支付SDK,在maven工程中引入依赖

<dependency> <groupId>com.github.wxpay</groupId> <artifactId>wxpay-sdk</artifactId> <version>0.0.3</version> </dependency>

我们主要会用到微信支付SDK的以下功能:

(1)获取随机字符串

WXPayUtil.generateNonceStr()

(2)MAP转换为XML字符串(自动添加签名)

WXPayUtil.generateSignedXml(param, partnerkey)

(3)XML字符串转换为MAP

WXPayUtil.xmlToMap(result)

HttpClient工具类

HttpClient是Apache Jakarta Common下的子项目,用来提供高效的、最新的、功能丰富的支持HTTP协议的客户端编程工具包,并且它支持HTTP协议最新的版本和建议。HttpClient已经应用在很多的项目中,比如Apache Jakarta上很著名的另外两个开源项目Cactus和HTMLUnit都使用了HttpClient。

HttpClient通俗的讲就是模拟了浏览器的行为,如果我们需要在后端向某一地址提交数据获取结果,就可以使用HttpClient.

关于HttpClient(原生)具体的使用不属于我们本章的学习内容,我们这里这里为了简化HttpClient的使用,提供了工具类HttpClient(对原生HttpClient进行了封装)

HttpClient工具类使用的步骤

HttpClient client=new HttpClient(请求的url地址); client.setHttps(true);//是否是https协议 client.setXmlParam(xmlParam);//发送的xml数据 client.post();//执行post请求 String result = client.getContent(); //获取结果

工程搭建与准备工作

(1)建立支付服务接口模块pinyougou-pay-interface (jar)

(2)建立支付服务实现模块pinyougou-pay-service (war) 依赖pinyougou-pay-interface 和pinyougou-common 、 spring dubbox 相关依赖 、微信SDK (因为不需要连接数据库所以不用引用dao工程)

<dependency> <groupId>com.github.wxpay</groupId> <artifactId>wxpay-sdk</artifactId> <version>0.0.3</version> </dependency>

添加tomcat插件,运行端口为9000

添加spring配置文件 ,参见其它服务工程

(3)在pinyougou-common工程中添加工具类HttpClient.java ,并添加依赖

<dependency> <groupId>org.apache.httpcomponents</groupId> <artifactId>httpclient</artifactId> </dependency>

添加配置文件weixinpay.properties

appid=wx8397f8696b538317 partner=1473426802 partnerkey=8A627A4578ACE384017C997F12D68B23 notifyurl=http://a31ef7db.ngrok.io/WeChatPay/WeChatPayNotify

appid: 微信公众账号或开放平台APP的唯一标识

partner:财付通平台的商户账号

partnerkey:财付通平台的商户密钥

notifyurl: 回调地址

(4)pinyougou-cart-web依赖工程pinyougou-pay-service

(5)将二维码插件QRious 拷贝到pinyougou-cart-web 的plugins目录中

本文分享自微信公众号 - 一点博客(xiaochen_182),作者:晨彬

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-01-18

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • JAVA设计模式详解

    设计模式有两种分类方法,即根据模式的目的来分和根据模式的作用的范围来分。 根据目的来分 根据模式是用来完成什么工作来划分,这种方式可分为创建型模式、...

    一点博客
  • SpringMVC-易于同其它View框架无缝集成

    Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面。Spring 框架提供了构建 ...

    一点博客
  • Linux-免费开源的操作系统

    Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行...

    一点博客
  • “轻OA+”开放API,直击七匹狼、鸿星尔克等企业应用管理痛点

    2017 年企业微信线下行业沙龙活动正式启动,首场鞋服专场登陆厦门,产品团队解读了企业微信的产品生态及开放能力,与企业用户共同探讨如何通过搭建高效的沟通管理平台...

    BestSDK
  • BBAT跨越楚河边界挑战传统软件商 企业微信争夺战一触即发

    曾几何时有人大喊狼来了,互联网公司的野蛮扩张,让传统软件公司感到了压力和恐慌,因为一旦互联网公司跨越企业边界,传统软件厂商面临将不仅仅是血流成河,也有可能是生死...

    人称T客
  • 行业 |企业为什么要开发小程序?

    腾讯发布了2018年度第二季度及中期综合业绩,微信和WeChat的合并月活跃账户数达到10.58亿,比去年同期增长9.9%。微信小程序的日活接近2亿,同时小程序...

    中微信通
  • 手把手教你开发人工智能微信小程序(1):Hello WeChat!

    每个开始学习编程的程序员,大约是从“Hello World!”开始的吧。就这样一个简简单单在屏幕上输出“Hello World!”字样的程序,帮助我们进入编程世...

    云水木石
  • 云蚁电商小程序解决方案

    随着移动互联网格局的形成,企业触达客户的渠道也基本形成,现在的小程序也是基于微信平台,是一个超高频次的应用,规模效应显著,开发小程序这条道路获客更加快捷、成本也...

    云蚁cloudant
  • 【晓头条】公众号可群发小程序卡片 / 企业微信推出「名片夹」小程序 / 腾讯与故宫合作推出创新实验室

    12 月 1 日,全国首个长江索道乘车码在山城重庆正式启用上线,乘客只需通过微信小程序中的「腾讯乘车码」,将二维码靠近索道入口的闸机,0.2 秒内即可入闸。

    知晓君
  • 从0到10亿,微信后台架构及基础设施设计与实践!

    本文根据许家滔老师在2018年10月17日【第十届中国系统架构师大会(SACC2018)】现场演讲内容整理而成。 回顾微信发展历程

    数据和云

扫码关注云+社区

领取腾讯云代金券