spring-boot-pay
支付服务:支付宝,微信,银联详细 代码案例 (除银联支付可以测试以外,支付宝和微信支付测试均需要企业认证,个人无法完成测试),项目启动前请仔细阅读 注意事项 :fa-hand-o-left: 。
API接口文档
http://doc.52itstyle.com/
欢迎关注
.jpg")
以下所有支付Demo,测试通过,真实有效。
支付宝
扫码支付、电脑支付、WAP支付、APP支付服务端
微信
扫码支付(模式一二)、公众号H5支付、WAP支付
银联
电脑支付、WAP支付
SpringMvc-Dubbox-pay版本
开发环境
JDK1.7、Maven、Eclipse、SpringBoot1.5.2、spring-boot-starter-thymeleaf、Dubbox2.8.4、zookeeper3.4.6
启动说明
- 项目中RPC框架使用的是当当维护的DubboX,现在阿里已经处于维护状态中,请自行更新
- 配置Dubbo需要安装注册中心zookeeper: http://www.52itstyle.com/thread-19791-1-1.html
- 如果不想使用Dubbo和安装zookeeper,又想启动看下效果,请注释掉 Application 类中的@ImportResource({"classpath:spring-context-dubbo.xml"}),
同时由于接口扫描注解使用的是Dubbo的 com.alibaba.dubbo.config.annotation.Service; 请自行替换成spring的 org.springframework.stereotype.Service;
- 最后想测试相关支付效果,请自行配置支付宝、微信以及银联相关账号以及证书
友情提示
由于工作原因,项目正在完善中(仅供参考),随时更新日志,有疑问请留言或者加群
- JAVA爱好者④:

- JAVA爱好者①:
(满)
- JAVA爱好者②:
(满)
- JAVA爱好者③:
(满)
支付文档
地址:http://localhost:8080/springboot_pay/swagger-ui.html
配置说明:https://blog.52itstyle.com/archives/1473/

演示界面
部分功能完善中!!!




支付宝
支付宝网关名、partnerId和appId
open_api_domain = https://openapi.alipay.com/gateway.do
mcloud_api_domain = http://mcloudmonitor.com/gateway.do
此处请填写你的PID
pid =XXXXXXXXXXXXXX
此处请填写你当面付的APPID
appid =XXXXXXXXXXXXXX
RSA私钥、公钥和支付宝公钥
private_key = XXXXXXXXXXXXXX
public_key = XXXXXXXXXXXXXX
alipay_public_key = XXXXXXXXXXXXXX
当面付最大查询次数和查询间隔(毫秒)
max_query_retry = 5
query_duration = 5000
当面付最大撤销次数和撤销间隔(毫秒)
max_cancel_retry = 3
cancel_duration = 2000
交易保障线程第一次调度延迟和调度间隔(秒)
heartbeat_delay = 5
heartbeat_duration = 900
微信
服务号的应用ID
APP_ID = XXXXXXXXXXXXXX
服务号的应用密钥
APP_SECRET = XXXXXXXXXXXXXX
服务号的配置token
TOKEN = XXXXXXXXXXXXXX
商户号
MCH_ID = XXXXXXXXXXXXXX
API密钥
API_KEY = XXXXXXXXXXXXXX
签名加密方式
SIGN_TYPE = MD5
微信支付证书名称
CERT_PATH = apiclient_cert.p12
银联
注意事项
- 除银联支付可以测试以外,支付宝和微信支付测试均需要企业认证,个人无法完成测试
- 项目中的支付宝SDk需要自行去官网下载打入本地仓库或者私服,提供下载地址:http://pan.baidu.com/s/1mi5LfhI
- 微信退款证书,微信商户平台(pay.weixin.qq.com)-->账户中心-->账户设置-->API安全-->证书下载,使用apiclient_cert.p12即可
- 支付宝支付相关参数zfbinfo.properties,需要自行去阅读支付宝文档自行生成
- 微信支付相关参数wxinfo.properties,需要自行去阅读微信支付文档自行生成
- 公众平台微信支付公众号支付授权目录、扫码支付回调URL配置入口已于8月1日迁移至商户平台(pay.weixin.qq.com)。迁移后,原有配置数据不会受影
响,你可在商户平台查看和配置。带来的不便敬请谅解。
- 2018年1月8日更新:公众号开发信息、微信H5支付获取access_token接口时,必须设置IP白名单。

- 微信或者支付宝下单调用网关失败,请检查网络 ping api.mch.weixin.qq.com -c 100 或者 ping openapi.alipay.com/gateway.do -c 100
- 支付宝中的初始化配置Configs 不要随便变更,支付相关JAR调用的是Configs中的配置
- 由于项目配置了SSL,访问地址: https://ip:port/springboot_pay/ 见:SpringBoot开发案例之集成SSL证书
- 2018/01/26 以后新建应用只支持RSA2签名方式,目前已使用RSA签名方式的应用仍然可以正常调用接口,注意下自己生成密钥的签名算法,见AliPayController类。
功能日志
- 支付宝生成支付二维码Demo已经测试完成
- 支付宝手机端H5支付Demo已经测试完成
支付宝电脑支付Demo已经测试完成
微信二维码支付模式二Demo测试完成
微信公众号支付(需要添加认证网址)
银联支付电脑支付Demo测试完成
银联支付H5支付Demo测试完成
微信二维码支付模式一Demo测试完成
集成Dubbo服务,全注解提供RPC服务
集成logback日志组间
集成HTTPS证书安全服务
集成微信H5(WAP)支付
推荐阅读
那些年支付宝微信银联支付遇到的坑
微信扫码支付模式以及使用场景
JAVAWEB如何集成银联网关支付(模拟环境测试)
2017年最新javaweb整合银联在线支付DEMO
微信支付linux下java.net.UnknownHostException: api.mch.weixin.qq.com
JAVA实现微信退款报错unexpected end of file from server
支付宝扫码支付和微信扫码支付业务场景及问题记录
微信扫码支付(模式一)遇到的那些坑
微信公众号H5支付遇到的那些坑
阿里云HTTPS证书服务
SpringBoot开发案例之整合Swagger篇
作者: 小柒2012
欢迎关注: https://blog.52itstyle.com
赠书活动

奖品介绍:
获奖者可以挑选以下任意一本:
- SQL即查即用
- 阿里巴巴Java开发手册
- Android项目开发实战入门
- JavaWeb项目开发实战入门
邀请猿猿和媛媛组团参与,中奖率更高;一人中奖,全团中奖。