记录一个模板项目:微信支付Java

微信支付模板项目

项目开发时遇到的一个场景,业余时间用模板项目的方式记录一下。

项目介绍

  1. 本项目是一个微信支付的模板项目,使用java做为后端服务,实现Native的微信支付。
  2. 项目使用了SpringBoot框架,集成了Swagger接口文档,方便调试。
  3. 项目中只写了三个接口:获取支付二维码、查询订单、退款。

项目只实现了Native支付的部分功能。

Native支付的完整流程

官方文档描述的比较清楚,我这里也做一下介绍,Native支付的完整流程:

  1. 商户下单获取订单的二维码链接code_url,将code_url转换为二维码图片展示给用户。
  2. 用户使用微信"扫一扫"进行扫码(不支持通过相册识别或长按识别二维码的方式完成支付)。
  3. 扫码进入到微信的支付确认界面,用户可在该页面确认收款方和金额。
  4. 用户确认订单收款方和金额无误后,点击"立即支付"会出现验密界面(验证密码或指纹等),同时在该页面也可选择支付方式(零钱或银行卡等)。
  5. 验密付款成功后,微信会展示支付成功页面。
  6. 支付成功后,用户在微信支付-我的账单-账单明细中查看账单。

技术栈、组件包、文档

配置说明

application.properties 前五行微信支付相关配置需要自行配置

包含:商户号、商户API证书序列号、商户API证书私钥、APIv3密钥、APPID

获取商户号

商户号是商户在微信支付的唯一标识,用于在微信支付系统中区分商户的身份。 如果没有微信商户,可以注册微信支付商户 pay.weixin.qq.com/index.php/a... 登录微信支付平台,进入账户中心可以查看商户号。(登陆账号)

获取商户API证书、证书序列号

官方提供了完整的文档:pay.weixin.qq.com/doc/v3/merc... 获取到证书后,将apiclient_key.pem放入到项目的resources文件夹下。

APIv3 密钥

官方提供了完整的文档:pay.weixin.qq.com/doc/v3/merc...

获取APPID

通过微信支付商户平台关联APPID。 支持已通过微信认证的服务号、政府或媒体类订阅号、小程序、企业微信、移动应用。 官方文档:kf.qq.com/faq/181105J...

项目启动

bash 复制代码
git clone [email protected]:guoshunfa/template-wechat-pay-java.git

调整application.properties配置

其他

后续会继续完善其他支付方式的接口。(我有项目场景或者项目有100star的话)

相关推荐
IT_陈寒8 小时前
一键生成活动页面的智能体开发实践:从策划到分发的全自动化解决方案
人工智能·程序员
Always_July11 小时前
每个程序员都应该知道的一些最基本的事情是什么?
程序员
DyLatte11 小时前
逃离大厂1000天,我过的还好吗?
程序员
摆烂工程师13 小时前
o3-pro 发布上线了!成本降了80%,温柔的奇点(Team用户也可用)
人工智能·算法·程序员
redreamSo14 小时前
AI Daily | AI日报:尹良升:SGLang 助力大模型部署; OpenAI深夜连发,开源延期引猜测; OpenAI发布o3-pro,奥特曼展望AI
程序员·aigc·资讯
程序员鱼皮16 小时前
学 Java 还是 Go 语言?这事儿很简单!
java·后端·计算机·程序员·开发·编程经验·自学编程
alicelovesu17 小时前
全栈开发者的“精神分裂”:当你的本地环境需要同时运行PHP、Node.js和Python
数据库·程序员
硬核隔壁老王17 小时前
从零开始搭建RAG系统系列(十):RAG系统性能优化技巧-生成模块优化 (Optimizing Generator)
人工智能·程序员·llm
硬核隔壁老王17 小时前
从零开始搭建RAG系统系列(九):RAG系统性能优化技巧-检索模块优化 (Optimizing Retriever)
人工智能·程序员·llm
LLM大模型17 小时前
LangChain篇-消息管理与聊天历史存储
人工智能·程序员·llm