支付宝APP退款功能开发
前期准备工作
1. 之前的支付宝APP支付的博客
- 1.1 前期获取的参数
- 1.2 配置及依赖
https://blog.csdn.net/liang1184750950/article/details/100205437
实战
1.1 请求参数及返回值
- 1.1.1 请求参数
@Data
@AllArgsConstructor
@NoArgsConstructor
public class AliPayRefundCommand {//TODO 金额改为分private String refundFee;//退款金额,不得大于订单金额 单位 元private String outTradeNo;//商户订单号,订单支付记录里面获取payRecord}
- 1.1.2 返回值
@Setter
@Getter
@NoArgsConstructor
@AllArgsConstructor
public class AliPayTradeRefundResponseDto {private String buyerLogonId;//用户登录idprivate String buyerUserId;//买家在支付宝的用户idprivate String fundChange;//本次退款是否发生了资金变化 Y 变化private Date gmtRefundPay;//退款支付时间private String openId;private String outTradeNo;private List<TradeFundBillDto> TradeFundBillDtos;private String refundFee;private String sendBackFee;private String storeName;private String tradeNo;
}
1.2 代码
public AliPayTradeRefundResponseDto refund(AliPayRefundCommand command) {AlipayTradeRefundRequest refundRequest = AliPayRequestBuilder.generateAliPayRefundRequest(command);AlipayTradeRefundResponse refundResponse = null;try {refundResponse = alipayClient.execute(refundRequest);} catch (AlipayApiException e) {e.printStackTrace();}return new AliPayTradeRefundResponseDto(refundResponse);}public static AlipayTradeRefundRequest generateAliPayRefundRequest(AliPayRefundCommand command) {AlipayTradeRefundRequest refundRequest = new AlipayTradeRefundRequest();AlipayTradeRefundModel model = new AlipayTradeRefundModel();model.setRefundAmount(command.getRefundFee());model.setOutTradeNo(command.getOutTradeNo());model.setRefundReason("退款");refundRequest.setBizModel(model);return refundRequest;}public AliPayTradeRefundResponseDto(AlipayTradeRefundResponse refundResponse) {this.setBuyerLogonId(refundResponse.getBuyerLogonId());this.setBuyerUserId(refundResponse.getBuyerUserId());this.setFundChange(refundResponse.getFundChange());this.setGmtRefundPay(refundResponse.getGmtRefundPay());this.setOpenId(refundResponse.getOpenId());this.setOutTradeNo(refundResponse.getOutTradeNo());this.setRefundFee(refundResponse.getRefundFee());this.setSendBackFee(refundResponse.getSendBackFee());this.setStoreName(refundResponse.getStoreName());this.setTradeNo(refundResponse.getTradeNo());this.setTradeFundBillDtos(refundResponse.getRefundDetailItemList() == null ? null :TradeFundBillDto.build(refundResponse));}
总结
支付宝退款功能开发相对简单明了(支付宝一贯风格),构造退款请求参数AlipayTradeRefundRequest时,注意公共参数直接在AlipayTradeRefundRequest里面set,其他的参数封装在AlipayTradeRefundModel里面,这和支付宝APP支付一样。
支付宝APP退款功能开发相关推荐
- 支付宝app支付功能-服务端的实现-python3版
支付宝app支付功能-服务端的实现-python3版 一:需求说明 二:支付宝app支付处理流程 三:所需依赖 3.1 依赖库 3.2 支付配置 3.2.1 沙箱环境配置 3.2.2 正式环境配置 四 ...
- php 支付宝订单查询_php实现支付宝APP支付功能与源码
原标题:php实现支付宝APP支付功能与源码 码农程序自学与交流微信群 微信群有,就怕你进群发一些乱七八糟的,群有群规,既然规定是技术学习交流,那就不要发广告信息,推广信息,小程序分享,刷屏刷图等!一 ...
- [科技论文写作]基于Android的支付宝APP设计与开发实现
文章目录 前言 正文 基于Android的支付宝APP设计与实现 1 选题背景 2 选题价值 2.1 理论价值 2.2 实践价值 3 文献综述 4 拟研究内容 5 拟解决关键问题 6 拟采用的研究方法 ...
- 支付宝APP支付 ---服务器开发
写过微信支付再写支付宝支付就好理解了很多.而且支付宝提供的sdk很好用,几行代码就可以了~~,写的代码还没有测试,应该问题不大,如果有错误希望各位指正. 开发之前必要的配置请参考支付宝APP支付官方文 ...
- 微信APP支付功能开发
前期准备工作 1. 微信各平台功能认识 1.1 微信开放平台: 支持移动应用,公众号的开发,创建应用并得到APPID,使你的应用支持微信支付. 1.2 微信公众平台: 微信小程序,服务号,订阅号的开发 ...
- 50兆 svg 文件超过_用svg+css3实现支付宝App波浪功能
在使用支付宝的时候,我发现了一个很有意思的功能--波浪效果,于是我钻研了一下午,觉得这玩意还真是挺有意思,大致是svg+css3来实现 于是我就简单仿写了一个波浪特效 照例,直接上功能,不多解释 知乎 ...
- php 微信支付退款接口开发,微信支付退款功能开发
第一次做微信的退款处理,特此标记一下 准备 appId 微信分配的公众账号ID(企业号corpid即为此appId) mch_id 微信支付分配的商户号 pay_secret 商户平台设置的秘钥:微信 ...
- java支付宝对账功能开发_java后台实现支付宝对账功能
完成支付宝支付.查询的接口之后,我们应该还需要定时与支付宝进行对账,以确保商户系统的订单信息是正确的,想知道支付宝支付.查询接口实现过程的亲们,可移步到上一篇有详细过程. 现在我们来讲一下支付宝对账的 ...
- 记一次支付宝支付的功能开发
背景: 公司需要增加一项支付宝PC端的收款功能 解决: 使用的支付宝官方文档中的电脑网站支付->统一收单下单并支付,当然,我们的支付宝账号需要开通该产品.官方API连接:https://open ...
- Java支付宝APP支付-验证异步通知消息
上一章已经讲述了支付宝如何生成支付订单,这一章讲述一下支付宝生成订单之后,异步通知接口的开发. 这里先讲一下啥叫支付宝异步通知:对于App支付产生的交易,支付宝会根据原始支付API中传入的异步通知地址 ...
最新文章
- 鲁迅先生就ERP实施问题答记者问
- 【运营干货】段子手打死也不会告诉广告主的事:一篇新媒体文案如何才能引发用户分享?...
- 【机器学习】Facets:评估机器学习数据集质量利器 (来自Google、可交互、可可视化)...
- 前端学习(1971)vue之电商管理系统电商系统之完成参数的添加操作
- maccmsv10 苹果cms10 站群扩展 自用版
- 在带有OR条件的LEFT JOIN中使用索引(Using index in LEFT JOIN with OR condition)
- effective_transformer
- 配电室智能监控系统设计及实现分析-Susie 周
- 拼多多显示内部服务器错误是怎么回事,拼多多提现出现错误怎么办?拼多多提现常见问题...
- 做了多年开发的你发现自己的水平一直上不去,一篇文章教你如何提高开发水平的方法
- FINAUNCE金融业增速反弹信贷投放创新高
- 评量子论的两本科普书籍
- 顶尖电子秤ls6恢复出厂_顶尖LS6(X)条码秤调试教程
- 将一个给定的整数插到原本有序的整数序列中,使结果序列仍然有序。
- 专业系统开发流程有多少步骤?如何进行系统开发?
- 从零开始的DIY智能家居--自己在家手搓一套人脸识别智慧猫眼系统
- 嵌入式蓝牙软件开发中的资源
- 深圳聚惠企业 2017年春节假期通告!!!
- 网易两份凉拌面「面经」
- 汉芯一号诞生记 zz
热门文章
- pd.to_datetime函数函数获取相应时间维度指标(isocalendar函数用法)
- 7个月吐血整理!Android面试相关文章及Github学习资料(标星3.2K)
- 配置babel-plugin-import报错的深坑
- 情商高的人所看透的四种人生真相
- Layui多文件上传,java后台(servlet实现)
- maven报错cannot reconnect
- 利用Python实现自动投票以及自动爬虫IP代理
- 1553B 协议详解
- 趋势判研:基于Web3.0的智能生态体——保险科技生态建设...
- python爬取招聘网站视频教程_Python爬取拉钩招聘网