JavaWEB后端支付银联,支付宝,微信对接

JavaWEB后端支付银联,支付宝,微信对接

标签(空格分隔): java


项目概述

最近项目需要后端打通支付,所以对接部分做成了一个小模块.
先说下项目要求:
后端要对接银联无跳转Token支付,支付宝wap支付,微信APP支付,前端用的是H5和ionic.后端对下单请求只拼接参数或者拼接html给前端,前端提交下单,支付逻辑则再后端进行.
其中支付宝提供了SDK,银联也提供了SDK,微信的这个SDK在后端貌似没法用,自己写了个.

银联支付流程,当然银联接口很多,流程时候设计稿相对应的
JavaWEB后端支付银联,支付宝,微信对接_第1张图片

支付宝支付流程:
JavaWEB后端支付银联,支付宝,微信对接_第2张图片

微信支付流程:和支付宝差不多,但坑多…
JavaWEB后端支付银联,支付宝,微信对接_第3张图片


项目结构

项目设计每一个支付都有Config来配置一些公共参数之类的.然后Config可以得到一个Client单例对象,请求都是有Client来发的,用户使用Trade对象,该对象把请求交给Client,并拿到结果.

所以如果你想启动这个项目,最先开始的去Config里面配置你的商户参数.具体使用可以参考test里面的demo

JavaWEB后端支付银联,支付宝,微信对接_第4张图片

调用形式如下:

    @Test
    public void testTradeWapPayRequest(){
        AlipayTrade alipayTrade = new AlipayTrade();
        Map<String,String> paraMap = new HashMap<String,String>();
        paraMap.put("out_trade_no",System.currentTimeMillis()+"");
        paraMap.put("total_amount","0.01");
        paraMap.put("subject","测试退款");
        paraMap.put("seller_id",System.currentTimeMillis()+"");
        paraMap.put("product_code","QUICK_WAP_PAY");
        alipayTrade.TradeWapPayRequest(paraMap);
    }

知道这个结构便于你二次开发.对待这些支付对接,要耐心看官方文档,不然往往停留在验签上面不经推进项目.


github地址: https://github.com/nl101531/JavaWEB

参考内容:

微信:
https://pay.weixin.qq.com/wiki/doc/api/app/app.php?chapter=9_1

支付宝:
https://doc.open.alipay.com/docs/api.htm?spm=a219a.7629065.0.0.7zbffO&apiId=1046&docType=4

你可能感兴趣的:(JavaWEB小工具,javaWEB实战)