zoukankan      html  css  js  c++  java
  • 支付宝退款接口及反回参数

    支付宝退款接口:

    参考:https://docs.open.alipay.com/api_1/alipay.trade.refund/    官方文档

    直接上代码:

        

    /**
         * 支付宝的退款接口
         * @param orderId 商户的订单号
         * @param tradeNo 支付宝的交易流水号
         * @param totalAmount 退款金额
         * @return
         */
        public static Map alipayCreateOrderRefund(String orderId,String tradeNo,String totalAmount) {
            Map map = new LinkedHashMap();
    
            AlipayClient alipayClient = new DefaultAlipayClient(AlipayConfig. aliPayUrl,
                    AlipayConfig.appId, AlipayConfig.developerSpoon,
                    "json", AlipayConfig.input_charset, AlipayConfig.aliPaySpoon, "RSA2");
            AlipayTradeRefundRequest request = new AlipayTradeRefundRequest();
    
            AlipayTradeRefundModel model= new AlipayTradeRefundModel();
            model.setOutTradeNo(orderId);//订单支付时传入的商户订单号
            model.setTradeNo(tradeNo);//支付宝交易号
            model.setRefundAmount(totalAmount);//refund_amount    需要退款的金额,该金额不能大于订单金额,单位为元
    
            request.setBizModel(model);//请求参数
    
            AlipayTradeRefundResponse  response=null;
            try {
                response = alipayClient.execute(request);
                System.out.println(JSONObject.fromObject(response).toString());
                Map tuiMap=JSONObject.fromObject(response);
    
            }catch ( AlipayApiException e){
                String massage = "alipay.trade.refund退款接口:订单签名错误";
                System.out.println(massage);
            }
            if(response.isSuccess()){
                System.out.println("调用成功");
                map.put("status", 0);//订单退款  status:0 成功 1:失败
                logger.info("支付宝:支付订单支付结果查询:订单out_trade_no----"+orderId+"---订单退款成功!");
            } else {
                System.out.println("调用失败");
                map.put("status",1);//订单退款  status:0 成功 1:失败
                logger.info("支付宝:支付订单支付结果查询:订单out_trade_no----"+orderId+"---订单退款失败!");
            }
            return map;
        }

    退款成功的参数例如以下:

    退款成功:
    {
        "body":"{"alipay_trade_refund_response":{"code":"10000","msg":"Success","buyer_logon_id":"185******13","buyer_user_id":"2088422483503995","fund_change":"N","gmt_refund_pay":"2019-08-13 17:48:25","out_trade_no":"12337925","refund_fee":"0.01","send_back_fee":"0.00","trade_no":"2019081322001403990517324158"},"sign":"dNhUcD9THBOpAigyklYLyaNqUOEv2IpxENZLshgG4dzQkKa04GvVU1a9dqib98osDOEYAnGf1RNzm1QZvvw/9ybVCWMkQK0C/No+Tv13+7DZ2DfSqmtG+JsEugQM4lHJfsVm/QUIU9kprPOeuKJAoAw+fLVXaSgFT+hsnatHUpR0F+3ail/jpQDfonneMfJanMuAxbfA2LVlxHVpIaoC73yyHK0WEQNrSwnp0pTEO30uqnLi4EehiV+Wo8bSdGr9ilzAEmq1bcDsNQuftE+4TU/I4J5KyhjAJos4SbOU+98fQylwSqdG16Od3lDEuusedPq5bz1yoW+mDW0peU5i+g=="}",
        "buyerLogonId":"185******13",
        "buyerUserId":"2088422483503995",
        "code":"10000",
        "errorCode":"10000",
        "fundChange":"N",
        "gmtRefundPay":{
            "date":13,
            "day":2,
            "hours":17,
            "minutes":48,
            "month":7,
            "seconds":25,
            "time":1565689705000,
            "timezoneOffset":-480,
            "year":119
        },
        "msg":"Success",
        "openId":"",
        "outTradeNo":"12337925",
        "params":{
            "biz_content":"{"out_trade_no":"12337925","refund_amount":"0.01","trade_no":"2019081322001403990517324158"}"
        },
        "presentRefundBuyerAmount":"",
        "presentRefundDiscountAmount":"",
        "presentRefundMdiscountAmount":"",
        "refundCurrency":"",
        "refundDetailItemList":[
    
        ],
        "refundFee":"0.01",
        "sendBackFee":"0.00",
        "storeName":"",
        "subCode":"",
        "subMsg":"",
        "success":true,
        "tradeNo":"2019081322001403990517324158"
    }

    根据自己的业务进行解析就行了,然后处理订单就行

  • 相关阅读:
    linux下LD_PRELOAD的用处
    三个通用的脚本,处理MySQL WorkBench导出表的JSON数据进SQLITE3
    ubuntu 18.04下,KMS_6.9.1服务器启动后,客户端连接一段时间因为libnice而crash的问题修复
    Daliy Algorithm(线段树&组合数学) -- day 53
    Daliy Algorithm(链表&搜索&剪枝) -- day 52
    Daliy Algorithm(二分&前缀和) -- day 51
    每日算法
    动态规划--01背包模型
    每日算法
    每日算法
  • 原文地址:https://www.cnblogs.com/wyf-love-dch/p/11347575.html
Copyright © 2011-2022 走看看