结算模块设计

简介: 支付系统和结算系统关系很密切,在钱收到自己的账户里面,不可能就放在那里不管了,在用户用完产品之后,大家要对对账,看看用户用了我们的什么服务,有哪些要收费的项目,用户需要付那些钱,钱有没有付清楚,钱有没有算错,等用户觉得这些收费没错,确认账单了。

支付系统和结算系统关系很密切,在钱收到自己的账户里面,不可能就放在那里不管了,在用户用完产品之后,大家要对对账,看看用户用了我们的什么服务,有哪些要收费的项目,用户需要付那些钱,钱有没有付清楚,钱有没有算错,等用户觉得这些收费没错,确认账单了。

大家进行结算,这些结算的数据,后面可供财务制作报表,当然财务有另外一套逻辑,但是起码要提供结算的数据。

这里给出一个结算模块关键部分的参考设计

设计

需要保存的内容

账单
账单历史
账单细节
结算单
结算单历史
发票
除了正常的收费之外还有其他的结算项目,那么再增加一些其他的收费信息表

详细的数据

账单:

  • 订单id
  • 应收
  • 实收
  • 价格类型(有时候由于不同的规则,计算应收的方式不同)
  • 会员id
  • 是否确认(账单要展示给用户看,需要用户确认,或者自己人工确认,定时任务确认)
  • 账单确认时间
  • 确认账单来源
  • 结算单id(有账单,一般最终都会进行结算)
  • 结算类型(收费种类不一样,有时候一些结算的方式也进行归类)

账单明细:

  • 收费项目,收费项目的编码,收费项目的名称
  • 订单id
  • 会员id
  • 结算类型
  • 账单id(因为是账单的细节,所以这些细节都会对应到某一个账单上)
  • 结算单id(冗余字段,为了找到对应的结算单)
  • 单价(因为是明细,总有一些收费的基本信息)
  • 数量
  • 减免金额(有的时候,想少收点钱,可以减掉一些钱)
  • 减免类型
  • 应收
  • 实收
  • 排序号
  • 关联id(有时候因为某些收费种类,需要有关联的信息)
  • 关联时间
  • 来源id(有时候要发现账单弄错了,或者需要进行调账,记录上一笔账单的来源)

结算单:

  • 结算单id
  • 结算单号
  • 订单id
  • 结算次数
  • 会员id
  • 结算类型
  • 应收
  • 实收
  • 欠款
  • 退款
  • 各种收款方式的收费金额(微信支付,支付宝支付,银行卡支付,余额支付,押金抵扣,优惠券抵扣),真正收到我们的账户里面的钱
  • 返现积分
  • 一些基本费用类型应收(产品使用费,服务费)
  • 是否冻结(结算单冻结之后不能再操作)
  • 冻结时间
  • 结算时间

开票信息:

  • 订单id
  • 产品可开票金额
  • 服务费可开票金额
  • 产品已开票金额
  • 服务费已开票金额
  • 是否确认

一些注意点

账单什么时候结算?

  1. 确认账单24h之后,定时任务
  2. 订单状态变成完成之后
  3. 后台手动,生成结算单按钮

结算单什么时候冻结?

  1. 首次结算立刻冻结
  2. 定时任务15天进行冻结(二次结算单,非首次结算都叫做二次结算)
  3. 手工冻结

如果已经冻结的结算单,我们再次进行调账的时候,会生成新的结算单,二次结算单一般不会直接冻结,再二次结算单冻结之前,每次进行账单的调整直接更新数据库数据即可,但是最好有个历史数据表,记录每一次数据的更改。

账单在超过一定的时间之后不能进行调整,时间可通过配置中心控制。

最后

本设计仅供参考

相关文章
|
2月前
|
供应链 监控 安全
云 HIS 系统的药品库存管理功能的特性
云HIS系统在药品库存管理方面引入了实时监控、智能预警、高效采购、精确追溯等多项新特性,提升了管理效率和准确性。系统支持多终端访问,实现自动化流程,并确保合规性和数据安全,同时还可与供应链集成,优化库存结构,提供全方位的药品管理解决方案。
云 HIS 系统的药品库存管理功能的特性
|
4月前
|
存储 算法 安全
现货合约跟单交易所系统开发(方案)源码逻辑规则
在网络上,每隔一段时间就会生成一个块。该块等效于网络记录簿,该记录簿用于记录一段时间内发生的相关信息。记录已满时,将生成一个新记录。一旦记录了信息,记录簿将通知所有参与者并更新每个人的记录簿。
|
6月前
|
安全
合约跟单/一键跟单系统开发流程步骤丨功能详细丨案例设计丨源码指南
Contract tracking system (also known as one click tracking system) is a system that allows investors to automatically follow excellent traders or strategies for trading. The following are the main functions and steps for developing a contract tracking/one click tracking system
|
6月前
|
JavaScript 前端开发 Java
基于JavaEE的通用超市结算系统的设计与实现
基于JavaEE的通用超市结算系统的设计与实现
秒合约/合约交易/合约跟单项目系统开发程序功能/规则玩法/逻辑方案/需求步骤/源码说明
Contract trading is a financial derivative trading method that is based on contracts and does not involve actual asset delivery. In contract trading, both parties sign a contract, agreeing to deliver or settle at a certain point in the future according to agreed terms.
|
存储 监控 供应链
聊聊「订单」业务的设计与实现
订单业务一直都是系统研发中的核心模块,订单的产生过程,与系统中的很多模块都会高度关联,比如账户体系、支付中心、运营管理等,即便单看订单本身,也足够的复杂;
11677 3
聊聊「订单」业务的设计与实现
|
缓存 监控 负载均衡
现货合约跟单量化系统对接交易所API开发接口文档规则
现货合约跟单量化系统对接交易所API开发接口文档规则
|
人工智能 算法 机器人
现货量化+合约交易+合约跟单系统开发(案例开发)/策略详细/逻辑方案/项目源码
 量化交易需要以大量的数据作为基础,通过对大量数据的分析,来做出理性的判断,预测未来价格的走势,量化交易从狭义上来说就是指程序化的交易,自动下单。从广义上来说,就是指系统性的交易,量化交易可以简单理解为机器人交易,用计算机算法来交易。
|
消息中间件 JavaScript 小程序
通用支付系统设计
通用支付系统设计
|
前端开发 微服务
微服务项目:尚融宝(59)(核心业务流程:提现和还款(2))
微服务项目:尚融宝(59)(核心业务流程:提现和还款(2))
微服务项目:尚融宝(59)(核心业务流程:提现和还款(2))