Alipay의 환불 인터페이스 :
참조 : HTTPS는 공식 문서를 //docs.open.alipay.com/api_1/alipay.trade.refund/
직접 코드에 :
/ ** * Alipay의 환불 인터페이스 * 파라미터 : ORDERID 상인 주문 번호 * @param tradeNo Alipay의 거래 일련 번호 * 파라미터 : totalAmount 환불 금액 * @return * / 공공 정적 지도 alipayCreateOrderRefund (문자열 OrderID를, tradeNo 문자열, 문자열 totalAmount) { 지도의지도 = 새로운 새 의 LinkedHashMap (); alipayClient alipayClient = 새로운 새 . DefaultAlipayClient (AlipayConfig aliPayUrl, AlipayConfig.appId, AlipayConfig.developerSpoon, "JSON"AlipayConfig.input_charset, AlipayConfig.aliPaySpoon "RSA2" ); 요청 AlipayTradeRefundRequest = 새로운 새로운 AlipayTradeRefundRequest (); AlipayTradeRefundModel 모델 = 새로운 새로운 AlipayTradeRefundModel (); model.setOutTradeNo (OrderID를); // 수주는 상인 주문 번호 지불하는 경우 model.setTradeNo (tradeNo를); // Alipay의 트랜잭션 번호 model.setRefundAmount ( totalAmount) // REFUND_AMOUNT 필요한 환불 금액이 양은 주문 금액 단위 원보다 크지 ; request.setBizModel (모델) // 요청 파라미터 AlipayTradeRefundResponse 응답 = 널 ; 은 try { 응답 =alipayClient.execute (요청) 에서 System.out.println (JSONObject.fromObject (대응)로 .toString ()); 지도 tuiMap = JSONObject.fromObject (대응); } 캐치 (AlipayApiException E) { 문자열 마사지 = "alipay.trade. 환불 환불 인터페이스 : 주문 서명 오류 " ; 에서 System.out.println (마사지); } 경우 (response.isSuccess은 ()) { 에서 System.out.println이 ( "호출이 성공 " ); map.put ( "상태 ", 0 ); // 주문 환불 상태 : 0 성공 1 : 실패 logger.info ( "Alipay의 : 쿼리의 결과 지불 지불 주문 : 주문 ---- out_trade_no"+ ORDERID + "! --- 주문 성공을 반환합니다" ); }(가) 다른 { 에서 System.out.println이 ( "호출에 실패" ); map.put ( "상태", 1); // 주문 환불 상태 : 0 성공 1 : 실패 logger.info ( "Alipay의 : 쿼리의 결과를 지불 지불 주문 : 주문 out_trade_no ---- "+ ORDERID +"--- 주문 환불 실패! " ); } 반환 지도; }
다음과 같은 성공 매개 변수를 환불 :
退款成功: { "몸": "{"alipay_trade_refund_response ": {"코드 ":"10000 ","MSG ":"성공 ","buyer_logon_id ":"185 ****** 13 ","buyer_user_id " "2088422483503995", "fund_change": "N", "gmt_refund_pay": "2019년 8월 13일 17시 48분 25초", "out_trade_no": "12337925", "refund_fee" "0.01", "send_back_fee" "0.00", "trade_no": "2,019,081,322,001,403,990,517,324,158"}, "기호" "dNhUcD9THBOpAigyklYLyaNqUOEv2IpxENZLshgG4dzQkKa04GvVU1a9dqib98osDOEYAnGf1RNzm1QZvvw / 9ybVCWMkQK0C / NO TV135 + + + 7DZ2DfSqmtG JsEugQM4lHJfsVm / QUIU9kprPOeuKJAoAw fLVXaSgFT + + + hsnatHUpR0F 3ail / jpQDfonneMfJanMuAxbfA2LVlxHVpIaoC73yyHK0WEQNrSwnp0pTEO30uqnLi4EehiV + Wo8bSdGr9ilzAEmq1bcDsNQuftE 4TU + / + I4J5KyhjAJos4SbOU 98fQylwSqdG16Od3lDEuusedPq5bz1yoW mDW0peU5i + D +} == "" , ""buyerLogonId "185 ***** * "13 , " "buyerUserId :"2088422483503995 ""코드": "10000" , "errorCode를": "10000" , "fundChange": "N" , "gmtRefundPay" { "날짜"13 , "일"2 , "시간"17 , "분" : 48 , "달": 7 , "초": 25 , "시간": 1565689705000 , "timezoneoffset의"- 480 , "년": 119 }, "MSG": "성공" , "오픈 ID": "", "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이" "" , "서브 코드 '' ' , "subMsg": "" , "성공" 사실 , "tradeNo": "2,019,081,322,001,403,990,517,324,158" }
라인에 자신의 사업에 따라 해결 한 후 행에 주문을 처리 할 수