Springboot集成支付宝沙箱支付(补充版本)退款功能

本文介绍了如何在Springboot应用中集成支付宝沙箱环境进行支付,并着重补充了退款功能的实现。通过添加退款接口和业务逻辑,确保只有在订单支付7天后才能发起退款请求。同时,更新了订单表结构以记录退款时间,并在退款成功后更新订单状态。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

基础搭建
Springboot集成支付宝沙箱支付Easy版

Easy版SDK文档
示例DEMO

正式版本的SDK
  1. 通用版SDK文档
    通用版SDK文档

  2. maven依赖

<!-- https://mvnrepository.com/artifact/com.alipay.sdk/alipay-sdk-java -->
<dependency>
    <groupId>com.alipay.sdk</groupId>
    <artifactId>alipay-sdk-java</artifactId>
    <version>4.22.110.ALL</version>
</dependency>

<!-- fastjson -->
<dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>fastjson</artifactId>
    <version>1.2.78</version>
</dependency>
  1. AlipayConfig.java配置类中,只需要获取配置alipay的参数即可
import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;

/**
 * 支付宝配置类
 * @author fangqi174956
 */

@Data
@Component
@ConfigurationProperties(prefix = "alipay")
public class AliPayConfig {
   
   
    // AppId,例如:2019091767145019
    private String appId;
    // 应用私钥
    private String merchantPrivateKey;
    // 支付宝公钥
    private String alipayPublicKey;
    // 支付类接口异步通知接收服务地址
    private String notifyUrl;
}

4.支付宝参数实体类AliPay.java中,配置属性

package com.qingge.springboot.entity;

import lombok.Data;

/**
 * 支付实体类
 * @author fangqi174956
 */

@Data
public class AliPay {
   
   

    private String subject;
    private String tradeNo;
    private String totalAmount;
    /** 要退款的订单交易流水号 */
    private String aliPayTradeNo;
}

4.配置接口 ,在AliPayController.java中配置以下接口

  • 支付接口 ‘/alipay/pay’ ,
  • 支付成功回调 ‘/alipay/notify’
  • 退款接口 ‘/alipay/returnPay’

import cn.hutool.core.date.DateUnit;
import cn.hutool.core.date.DateUtil;
import com.alibaba.fastjson.JSONObject;
import com.alipay.api.AlipayApiException;
import com.alipay.api.AlipayClient;
import com.alipay.api.internal.util.AlipaySignature;
import com.alipay.api.request.AlipayTradePagePayRequest;
import com.alipay.api.request.AlipayTradeRefundRequest;
import com.alipay.api.response.AlipayTradeRefundResponse;
import com.qingge.springboot.config.AliPayConfig;
import com.alipay.api.DefaultAlipayClient;
import com.qingge.springboot.common.Result;
import com.qingge.springboot.entity.AliPay;
import com.qingge.springboot.entity.Orders;
import com.qingge.springboot.service.IOrdersService;
import org.slf4j.Logger;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值