第三方应用支付宝退款功能

项目中遇到支付宝退款功能!简单说一下

打开支付宝开发文档,项目中是以app支付,所以我就以app文档为参考!下载服务端的sdk(我是用java语音开发,所以下载java版资源),把对应的包引入alipay-sdk-java20180104135026.jar 和commons-logging-1.1.1.jar,然后就可以看着文档开发了,

下面直接把代码附上

	public static String refundOrder(Order order){
		String retStr = "";
		
		//实例化客户端
		AlipayClient alipayClient = new DefaultAlipayClient("https://openapi.alipay.com/gateway.do", 
				AlipayConfig.APP_ID, AlipayConfig.APP_RSA2_PRIVATE_KEY, "json", AlipayConfig.CHARSET, 
				AlipayConfig.APP_ALI_PUBLIC_KEY, "RSA2");
		
		//实例化具体API对应的request类,类名称和接口名称对应,当前调用接口名称:alipay.trade.refund
		AlipayTradeRefundRequest request = new AlipayTradeRefundRequest();//创建API对应的request类		
		//SDK已经封装掉了公共参数,这里只需要传入业务参数。以下方法为sdk的model入参方式(model和biz_content同时存在的情况下取biz_content)。
		AlipayTradeRefundModel model = new AlipayTradeRefundModel();
		model.setOutTradeNo(order.getOrderId());
		model.setTradeNo(order.getPayCode());
		model.setRefundAmount(String.valueOf(order.getPayMoney()));//全部退款-如果是部分退款需要退款单号,可详细阅读文档
		request.setBizModel(model);
		try {
		    //这里和普通的接口调用不同,使用的是sdkExecute
			AlipayTradeRefundResponse response = alipayClient.execute(request);//通过alipayClient调用API,获得对应的response类	
			retStr = response.getBody();//就是orderString 可以直接给项目业务做处理。
		} catch (AlipayApiException e) {
		        e.printStackTrace();
		}
		
		return retStr;
	}


 
得到结果业务处理

					String retStr = AliPayUtil.refundOrder(order);//1:支付宝支付
					JSONObject jsStr = JSONObject.fromObject(retStr);;
					String code = JSONObject.fromObject(jsStr.getString("alipay_trade_refund_response")).getString("code");
					String msg = JSONObject.fromObject(jsStr.getString("alipay_trade_refund_response")).getString("msg");
					if("10000".equals(code)&&"Success".equals(msg)){
						log.info("=======支付宝退款成功=======");
						//修改订单状态为已
					}else{
						log.info("=======支付宝退款失败=======错误码"+code);
						业务处理
					}
到此支付宝退款功能完全接入



  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值