需求描述
在上一家公司和目前公司均参与支付项目的开发,但因为都是中途参与,因此一直对整体业务不是很熟,所以觉得有必要从头到尾自己开发一遍。
各支付机构实际都封装有自己的sdk,可以集成之后进行很方便的开发,例如支付宝的sdk,可以让开发者把签名等很多过程都忽略掉。
但是集成支付机构sdk的缺点也很明显,那就是每接一个机构就需要集成该机构的sdk,会导致jar包不断增多。
同时,一旦支付机构的sdk进行了升级,可能自己的系统也需要跟着升级。
而且,如果支付机构的sdk出现了漏洞,由于开放下载,用的人多,相对也就有更大的安全风险。
因此,本系统自行进行签名等操作,不集成支付机构sdk。
预计功能描述
- 支付宝wap支付
- 支付宝app支付
- 支付宝扫码支付
- 微信wap支付
- 微信app支付
- 微信扫码支付
- 银联wap支付
- 快钱wap支付
- 银联在线wap支付
初始技术选型
- jdk8
- springboot2.1.2
- vue.js
- element-ui
- node.js
- lombok
- mysql
- jpa
- redis
- httpclient4.5.3
- lombok
- maven3.3.9
- git
项目历程
- 2019年1月16,初始项目创建;
- 2019年1月18,初步实现支付宝wap支付;
- 2019年1月28,引入vue.js和element-ui,增加前台商品和收银台页面;
特别说明
- 目前支付宝和微信支付均不支持个人,因此开通支付权限的账号需要营业执照之类的文件。
发起支付请求时,需要有可用的appId等,本人测试时借用了公司开发账号和privateKey,存于本地数据库,未上传。