作为日常支付业务,微信的接入逐渐进入了大家的视野。今天以PC端接入微信支付的基本流程来说明。
先看图
这个序例图比较复杂,涵盖了当前微信支持的H5,PC扫码等。其实都是大同小异。
简单来说,如下图
微信里面提到的扫码支付,就同上。一般来说,扫码支付是有两种模式的。一种就是先根据productid,调用微信接口,它会返回一个微信的二维码,当用户扫码之后,调用你在微信扫码支付的回调地址,再发起一次统一下单请求。用户打开微信后支付。这一段,在模式二的情况下省略成一步了。
动手码代码:
准备工作
A 微信SDK调用封装,https://github.com/foxinmy/weixin4j(作者是湖南人),整个SDK封装还不错。能大大简化我们入门的开发。
B 二维码显示 用来显示微信生成的二维码,https://github.com/Mrironcc/jquery-qrcode-master
1 封装业务参数,生成二维码
2 微信二维码
3 调用jquery的qrcode
对应的二维码
3 回调的处理
这段逻辑有一个比较重要的签名验证,实际就是验证这个回调请求是不是微信发起的。如果非篡改,则告诉微信成功。
以上代码块,部分可以在https://github.com/foxinmy/weixin4j的项目里面找到。其它,是经过整理的。比较适合入门的一篇文章。
本文没有涉及其它如订单查询(这个其实在扫码支付的时候,一定会用到的。异步查询订单状态,定位用户扫码支付后的页面),订单关闭,退款等辅助流程。