本文阐述如何从零开始接入小程序支付,尤为适合没有微信支付接入经验的开发者。php
1. 申请微信支付html
小程序认证之后,能够在小程序后台,微信支付菜单栏,申请微信支付。前端
填写企业信息和对公帐户,微信支付会打一笔随机金额到对公帐户,输入金额完成验证后,在线签署协议,这样整个微信支付的申请流程完成了。算法
微信支付申请完,会发送微信支付商户号,商户平台用户名密码等信息到注册者邮箱。小程序
2. 准备工做微信小程序
2.1 配置小程序密钥api
在小程序后台设置页,点击生成,管理员验证二维码后,会随机生成 AppSecret。请妥善保管好 Appsecret,不要明文存储于服务器,AppSecret 用于和微信服务器交互。好比获取用户的 openid 接口就须要用到。安全
2.2 设置密钥和下载证书服务器
用申请微信支付得到的用户名和密码,登陆商户平台 (pay.weixin.qq.com),在帐户中心,API 安全中下载证书和设置密钥。微信
密钥是 32 位,设置之后须要妥善保管,由于没法查看密钥,全部微信支付相关的接口都会使用这个密钥加密。
2.3 配置 Https 服务器
小程序的前端是使用微信提供的框架开发,可是后台依然是开发者本身的服务器。小程序发起的是 https 请求,意味着小程序开发者必须配置 https 服务器。
配置 https 服务器以前,先要获取证书,证书能够向相关机构购买,腾讯云目前能够向用户提供免费的证书。
证书安装指引在这里查看:
https://www.qcloud.com/doc/pr...
3. 微信支付流程
微信支付有多种支付方式,包括刷卡支付,公众号支付,扫码支付,APP 支付,在这里微信支付的全部接口:https://pay.weixin.qq.com/wik...
小程序是在微信里调起支付的,实际上是公众号支付。关于公众号支付的详细文档可在这里查看:https://pay.weixin.qq.com/wik...
全部公众号支付相关的连接均可以在此连接找到,开发者首先须要大概了解这些接口。
小程序公众号支付的主要流程以下(本图只考虑了正常流程,异常流程参考公众号支付文档):
3.1 关于 openid
上述流程中请求 openid,用的是小程序最新 api 中的接口,开发者能够查看小程序的登陆接口。
开发者从第三方服务器得到的 openid,在统一下单的接口里面须要使用到。
3.2 关于小程序调起微信支付
上述流程中的小程序调起微信支付,用的是小程序微信支付接口 wx.requestPayment,该接口的详细描述能够查看小程序的微信支付 API。
这个接口中的 package 和 timeStamp 参数是从开发者的第三方服务器返回的,package 是第三方服务器从统一下单接口回复中得到。
接口中其余的参数,appId,noceStr,signType 以及 paySign 则由小程序这边存储或者计算而得。
其中 paySign 是签名,签名算法文档在这里:
https://pay.weixin.qq.com/wik...
整个公众号支付的主要流程基本都是在第三方服务器上实现,开发者须要熟读公众号支付文档,了解消息交互流程以及每一个接口。
这里并无描述正常微信支付必不可少的一些功能:异常处理,查询订单,发起退款,下载对帐单等等。
「H5程序俱乐部」是一个专一微信小程序学习交流,相关外包/招聘需求信息发布的微信公众号。
「H5程序俱乐部」微信号:wxappclub 或者 微信扫一扫关注