海量编程文章、技术教程与实战案例

网站首页 > 技术文章 正文

手把手教你写一套提现系统

yimeika 2025-05-26 01:58:16 技术文章 6 ℃

大家好,我是大龄码农,今天一起聊聊如何通过能力分层和配置化实现一套提现系统,欢迎一起探讨、指正。

为什么需要提现系统

在企业没有将付款线上化时,需要财务在银行后台对用户进行付款,一般流程如下:

1.申请:业务人员手机收款银行卡并填写付款申请单。

2.审批:业务领导对申请单进行审批签字,同意后业务人员将申请单给到财务付款。

3.调拨:财务拿到付款单后,在归集资金银行后台往付款银行卡里转入资金。

4.付款:资金转入后,在付款银行后台给用户打款。

5.反馈:打款完成后,财务通知业务付款结果。

这个流程有两个问题:一是浪费人力,如果是C端用户的提现,那靠人力基本无法实现。二是数据没有系统化,统计和维护困难。所以,需要一套提现系统,将资金付款线上化。

提现系统的领域边界

提现系统和付款系统,其流程基本一致,最大不同的是提现系统需要扣用户的虚拟资产,付款则直接对外出款(例如:订单退款)。

提现系统则适用于用户将平台的虚拟资产转移到真实银行卡的过程。

提现系统包含哪些模块

提现系统一般有两个模块,提现管理和付款管理。

提现管理:记录的是业务单据,可能会涉及个税的计算;如果是TOB或资金较高的的提现,会涉及审批。

付款管理:记录的资金单据,如果公司运营较为复杂,会有分子公司,则会涉及调拨。

提现系统的领域模型

提现申请单(或提现单)为业务单据,付款单为资金单据,有些渠道付款会批量进行,则需要增加批次付款单。

这里设计三处规则:提现规则(决定能否提现)、付款规则(决定如何付款)、调拨规则(企业内部资金处理)。

提现系统的分层能力

两个大领域:提现领域和付款领域。

提现领域专用于提现业务场景,其状态机一般可以为:

付款领域则为公共领域,提现付款为其付款场景之一,其他的诸如订单退款、货品付款合并到打款系统作为另外一个付款场景,其状态机一般可以为:

最近发表
标签列表