微信开发交流群:148540125
欢迎留言、转发
首先来看看微信支付都提供哪些支付方式如下图 官方文档
微信支付-支付方式.png
刷卡支付
由于没有设备暂不出相关文章(可以提供设备支持的请联系我)
APP支付
需要在微信开放平台申请开发应用,没有申请的相关质料如果有机会后面会讲到
公众号支付
已实现 项目源码
扫码支付
已实现 项目源码
还提供了几个支付工具
微信支付-支付工具.png
代金券或立减优惠
待完成
现金红包
已实现 项目源码
企业付款
已实现 项目源码
开源项目中如何实现公众号支付
项目下载启动运行参考之前写的文章 项目导入IDE并启动运行
1.设置公众号支付参数
登录商户平台 https://pay. 第一登录是需要下载安全控件 安装完成启动浏览器即可输入密码。
有人要问,账号密码从何而来? 问这个问题的人一般是没有做微信认证或者说你负责的微信公众号的微信认证不是你亲力亲为的。
商户平台登录的账号密码是在微信认证审核成功之后微信团队会以邮件的方式发送到你的邮箱
微信支付-公众号支付参数.png
其中商户号为:
微信支付-商户号.png
密钥设置
微信支付-商户密钥.png
2.配置支付授权目录
注意:
1、目前支付目录可以配置三个、测试授权目录一个
2、域名必须备案
3、授权目录只需要定位到Controller
开源项目 中设置的授权目录为http://域名[/项目名称]/jssdk
支付测试:http://域名[/项目名称]/jssdk/customer
/**
* 对整个Controller或者其中的方法添加JSSDK签名验证拦截器
*/
@Before(JSSDKInterceptor.class)
public class JSSDKController extends Controller{
public void index(){
render("share.jsp");
}
//公众号支付、分享、分享成功添加积分
public void customer(){
render("customer.jsp");
}
public void pic(){
render("pic.jsp");
}
}
其中 JSSDK的使用之前有讲过 如何使用JSSDK
微信支付-公众号支付
由于开启了调试模式,加载出此页面之前会提示JSSDK签名是否成功,成功之后输入金额点击提交就会调用JavaScript 中 wxpay 方法ajax去统一下单生成预付订单 输入密码支付完成支付
具体实现代码 统一下单生成预付订单 中的 index()
微信分享
3.支付成功回调
默认的通知地址: String notify_url = PropKit.get("domain")+"/pay/pay_notify";
具体实现代码 支付成功回调 中的 pay_notify()