交易系统:退款单模型设计详解

大家好,我是汤师爷~

和退款单作为整个交易逆向系统的核心,支撑着售后管理环节。

售后域核心概念模型

交易系统:退款单模型设计详解

1、退款单

退款单是记录和跟踪退款处理过程的核心业务单据,包含以下关键信息:

  • 租户ID:标识所属商户或组织
  • 退款单ID:退款单的唯一标识
  • 原订单ID:关联的原始订单
  • 业务类型:仅退款、退货退款等
  • 退款类型:如全额退款、部分退款、按商品退款等
  • 创建时间:退款单生成的时间
  • 退款状态:反映当前售后处理阶段
  • 退款原因:记录具体退款原因,如不想要了、商品破损等
  • 退款金额:需要退还的具体金额
  • 退款手续费:退还的手续费

2、退款资金信息

退款资金信息包含了退款处理过程中的关键支付数据,包含以下关键字段::

  • 支付单号:用于关联原支付记录
  • 渠道退款单号:支付渠道生成的退款凭证号
  • 退款状态:反映当前退款处理的进度,如待处理、处理中、已完成等
  • 退款金额:本次需要退还的具体金额数值
  • 退款账户:接收退款的目标账户,如用户余额、微信、支付宝等账户。

3、退款明细

退款明细记录了每笔退款交易中具体商品的退款信息,包含以下关键字段:

  • 退款明细ID:每条退款明细记录的唯一标识
  • 商品ID:退款商品的唯一标识
  • SKU_ID:具体的商品规格的唯一标识
  • 商品退货数量:本次退回的商品数量
  • 商品退款金额:该商品的实际退款金额

退款单状态机

1、仅退款状态机

仅退款状态机描述了用户申请仅退款时,退款申请单的处理流程和状态转换。核心状态包括待审核、待买家处理、售后完成和售后关闭。各状态之间的转换流程如图所示。

交易系统:退款单模型设计详解

2、退货退款状态机

退货退款状态机描述了用户申请退货退款时,退款申请单的处理流程和状态转换。核心状态包括待审核、待退货、待收货、售后完成、待买家处理和售后关闭。各状态之间的转换流程如图所示。

交易系统:退款单模型设计详解

本文已收录于,我的技术网站:tangshiye.cn 里面有,算法Leetcode详解,面试八股文、BAT面试真题、简历模版、架构设计,等经验分享。

文章整理自互联网,只做测试使用。发布者:Lomu,转转请注明出处:https://www.it1024doc.com/4891.html

(0)
LomuLomu
上一篇 2024 年 12 月 30 日 上午8:51
下一篇 2024 年 12 月 30 日 上午9:52

相关推荐

  • 【永久激活】IDEA 2024.1.2 激活破解详细指南,附激活码+工具,亲测可用

    IntelliJ IDEA 是一款功能强大的 Java 集成开发环境,被誉为最优秀的 Java 开发工具之一。本文将介绍通过脚本免费激活 IDEA 和 JetBrains 全家桶工具的方法,支持 2021 年及以上版本,包括最新版本。 一、下载并安装 IDEA 首先,前往 JetBrains 官网下载最新版本的 IntelliJ IDEA。安装过程简单,按照…

    未分类 2024 年 7 月 8 日
    3.4K00
  • JavaScript获取URL参数常见的4种方法

    🚀 个人简介:某大型国企资深软件开发工程师,信息系统项目管理师、CSDN优质创作者、阿里云专家博主,华为云云享专家,分享前端后端相关技术与工作常见问题~ 💟 作 者:码喽的自我修养🥰 📝 专 栏:JavaScript深入研究 🎉 🌈 创作不易,如果能帮助到带大家,欢迎 收藏+关注 哦💕 在前端开发中,处理URL参数是一个常见的任务,尤其是在没有框架支持的情况…

    2025 年 1 月 6 日
    49300
  • 使用Java高效检索Elasticsearch索引完整数据集的方法

    Java实现Elasticsearch全量数据检索方案 应用场景分析 常规查询机制 Java实现全量数据获取 技术总结 应用场景分析 Elasticsearch在设计时为了优化查询性能,默认配置下对未指定分页参数的查询请求仅返回前10条记录。但在实际业务中,我们经常需要获取符合特定条件的完整数据集。虽然可以通过设置较大的size参数临时解决问题,但随着数据规…

    2025 年 5 月 12 日
    31500
  • python SQLAlchemy ORM——从零开始学习 01 安装库

    01基础库 1-1安装 依赖库:sqlalchemy “`python pip install sqlalchemy #直接安装即可 “` 1-2导入使用 这里讲解思路【个人的理解】,具体写其实就是这个框架: 导入必要的接口【有创建engine以及declarative_base】 通过create_engine接口创建engine,根据翻译可以翻译成引…

    2025 年 1 月 11 日
    67100
  • 阿里一面:那我把线程池coreSize配置成0会怎样?

    写在前面 设想一下,在我们的项目中存在一个边缘的业务流程,它并不频繁地被触发。在设计线程池时,我回想起了线程池的常见配置原则。为了最大限度地节省资源,我将核心线程数(corePoolSize)设置为0。这样的配置是否能够顺利执行任务呢? 线程池配置原则回顾 在任务提交时,线程池会根据以下策略进行处理: 如果线程池中的线程数少于核心线程数,则创建一个新线程来执…

    2024 年 12 月 26 日
    63100

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信