GOCMS 微信支付功能开发

相关手册

微信支付官方手册

https://pay.weixin.qq.com/docs/merchant/products/jsapi-payment/introduction.html

微信支付商家注册及产品开通

1. 请登录  https://pay.wechatpay.cn/  注册成为商家( 按照流程一步步完成注册并通过审核 )。
2. 成为商家后,登录微信支付官网,点击 产品大中心 按钮。
3. 选择对应的产品,点击打开详情,然后点击 申请开通 按钮,开通并配置对应产品。

证书准备 ( 关键 )

请严格按照官方指引完成 应用配置、证书配置工作!

官方文档 :

https://pay.weixin.qq.com/docs/merchant/products/native-payment/preparation.html

使用证书工具最终获取类型下面的证书文件

此文档内容需登录 + 付费后才能查看!

我们将证书文件部署到 GO 项目,如 :

此文档内容需登录 + 付费后才能查看!

微信支付官方 SDK

微信支付官方提供了 go 语言对应的 SDK,基于此 SDK 我们可以快速地实现微信支付功能。

sdk 仓库 :

https://github.com/wechatpay-apiv3/wechatpay-go

Native 支付完整流程( 其他产品类似 )

1. 生成订单

生成订单功能属于项目功能,只是为支付提供基础数据,详见 GOCMS 订单创建:

此文档内容需登录 + 付费后才能查看!

2. 创建 微信支付 预付款数据

2.1 完善微信支付配置 /GOCMS核心包/configs/shop.go,供 2.2 步使用 :

此文档内容需登录 + 付费后才能查看!

2.2 创建预支付数据( 在微信支付平台 )

源码文件 : /GOCMS核心包/controllers/front/pay/pay.go

此文档内容需登录 + 付费后才能查看!

3. 付款后异步通知

客户完成付款后,微信支付会向我们指定的服务器地址发送支付数据,异步地址在 2.1 处配置( 也需要在开通微信支付产品时在微信支付官方系统内配置,如 : Native支付回调链接 )。

我们的服务器接收到付款数据,对数据进行验证,验证后进行更新订单状态、发送支付成功通知等等后续操作。

源码 : /GOCMS核心包/controllers/front/pay/payBack.go

请打开 gocms 内对应的异步通知处理源码,参考、改进,完善符合自己要求的异步通知处理逻辑。