适用于多业务的资金账户管理系统如何设计?
有企业客户开通了云流量服务,按实际使用量进行计费,然后再完成付款。
由于是先使用服务,后计费付款的模式,需要客户先预存资金,以确保有充足的资金能够完成付费,否则客户将没有使用权限。
客户使用的流量服务,将进行实时计费,并从账户中扣除相应款项。
在上述场景中,客户的资金发生了先暂存、后消费的变动情况。
为了准确反映资金的变动情况,确保客户账户资金余额的正确性,需要将客户账户下的资金充值和使用的过程记录下来,对资金账户进行管理。
01 资金账户管理系统是什么?
资金账户管理系统是为准确反映资金变动情况、确保客户账户资金余额正确性,提供的以账户为载体,能够管理资金的进项出项、记录账户余额变动情况,并且能够反映资金变动后结果的管理平台。
资金账户管理系统的核心功能分为两块,分别是「账户」和「资金」。
「账户」对应某个主体(可能是个人,也可能是一个企业),是其记录、整理和汇总原始数据的载体。
「资金」是钱,在发生充值、使用等业务过程时会产生资金的变动,分别是资金的进项(充值、抵扣余额退回、取消抵扣)和资金的出项(抵扣、提取、取消充值)。
「资金」包含了资金的变动和记录;「账户」会归集资金变动记录,从而能够知道某个主体的账户下的资金变动详细情况和资金累计值,例如累计充值金额、累计抵扣金额,以及当前余额。
02 为什么要做资金账户管理系统?
先看一个生活中常见的案例:
小明、小红、小王到理发店剪了个头发,需要付款 40 元。
结账的时候,前台告知目前有充值赠送的优惠活动,充 200 送 20 ,充 500 送 80 。
由于小明离这家店不是很近,没有充值,选择了现金支付 40 元;
而小红因为经常到这家店消费,选了先充值后扣费的方式,提供了个人姓名、手机号等基本资料以及支付了充值金额 200 元。
前台给了小红一张会员卡,告知其本次消费后余额还有 180(=200+20-40)元,后续到店时可以出示会员卡,或直接报手机号进行消费。
小王也选择了先充值后扣费,因为后面还考虑做烫染,所以直接充值了优惠力度更大的 500 元那一档。
前台给到小王会员卡,告知其本次消费后还有 540(=500+80-40)元。
在上述案例中,当店家收到小明支付的款项时,交易已经达成,产生了真实消费;
店家收到小红和小王支付的款项时,并没有产生真实消费,而是往小红和小王各自的账户中进行了充值,当小红和小王使用卡内余额进行扣费时,才产生了真实消费。
并且消费后,小红和小王的账户还有剩余可用的金额,可供后续继续消费。
过了半个月,小王打算来染个头发,小红也带着女儿来理发店剪头发。
结账扣款的时候,前台告知小红本次消费后余额还有 100 元。小红感到很奇怪,自己明明只有在充值那次用了40元,按理说这次扣了应该还有 140 元,怎么就只剩 100 元了呢?
——原来是之前其他客户在使用余额消费的时候,前台扣错了,扣了小红的余额。但是因为没有具体扣费记录,也不知道原本应该是扣哪个客户的账户余额。为了平息客户小红,店家为小红的账户补上了 40 元,目前余额为 140 元。
小王染发费用为 240 元,前台告知小王本次消费后余额还有 340 元。小王纳闷了,上次充值消费后还剩 540 元,这次扣了 240 ,怎么还有 340 元?
——原来是第一次小王充值消费的时候,前台比较忙,就先口头告知了小王消费后余额,后来忘了记录当次消费单的扣款。如果不是小王自己提出,就少扣了 40 元了。前台为小王的账户余额补扣了 40 元,目前余额为 300 元。
我们可以看到,当客户选择了先充值后消费的方式,客户在平台中会存在可消费、可使用的资金。
在这个过程中,如果没有对账户和资金进行合理的管理,可能出现资金管控风险。
因此,针对客户的资金,其变动过程和变动的结果,需要记录下来,进行管理,以准确反映资金的变动情况和确保客户账户资金余额的正确性。
而随着业务的发展,一个平台可能会产生越来越多不同类型的业务,需要在开展过程中应用资金账户管理系统。
例如 A 业务部门,针对 A 类客户群体提供流量服务,需要先充值后结算抵扣;
B 业务部门,需要针对 B 类客户群体在移动端 app 中提供服务,为了在 iOS 系统中能够灵活定价商品,便于业务开展,选择了让客户先通过 app 充值虚拟币,再购买具体商品的模式。
那么这时候,我们要如何从整体进行抽象提炼,设计出一个适用多业务的资金账户管理系统呢?
03 设计思路
从账户和资金这两点出发,分别对应增删改查这几个功能模块。
资金账户管理的整体介绍如下:
1. 关于账户
(1)增:创建账户
创建账户是指为某个主体建立一个新的载体,用于记录、整理和汇总原始资金数据。
创建账户的出发点是即将有业务要在该载体上发生,业务的起点是客户要充值。
如果该客户此前并没有对应账户,则需要先为客户创建账户,然后把相应的资金充值到账户中,后续客户需要使用资金时,也从该账户中扣款。
创建账户的方式包括人工创建和系统创建。
结合上文,当客户要充值时,如果客户并没有账户,需要先创建账户。
这里存在的场景分别有客户经理与客户线下达成了营收,成单后,客户经理需要在平台中为客户充值款项;客户自主在线发起充值。
在客户经理为客户创建账户并充值的场景中,客户经理在系统中输入相关客户信息和账户信息,为客户人工创建好账户;在客户自主发起充值的场景中,系统可以自动获取相关信息,由系统完成账户的自动创建。
创建账户属性包括:业务类型、账户主体、适用体系、开票方式等。
其中,业务类型是用于区分不能共用的不同业务之间的款项的标记。
例如软件类商品、课程类商品、流量计费类商品,如果在业务上,客户就是专门为后续消费某类商品而发起的资金充值,相当于资金是只能给某类商品使用的,那么需要按照业务类型进行标记区分。
适用体系是指当前账户内的资金能够使用的体系是什么,包括 iOS 和非 iOS 。
因为当客户使用的系统是 iOS 时,通过 app 充值是走的苹果内购,此方式下客户充值的款项是先给到苹果公司,再由苹果公司与我们的平台进行结算,苹果公司要分成其收入的 30% 作为平台费用,最终平台真实收到的款项只有客户支付款项的 70% 。
而其他渠道下充值,款项是直接给到平台的。这两种方式下,客户充值的资金流是不一样的,款项收到了不同商户主体下。苹果公司规定,数据不与其他系统互通。
同时,客户若后续有退款、开票之类的诉求,也是直接联系苹果公司处理的,不经由我们的平台处理。因此,通过 iOS 系统和非 iOS 系统充值的款项需要进行标记区分管理。即同一个客户同一个 app ,如果在 iOS 系统和安卓系统中分别充值了,款项是不互通的,会存在两个账户中,分别对应不同的账户适用体系。
开票方式是当客户的账户资金发生变动时,是否要给客户开票,如果要开票,要在什么时候给客户开票的标记。开票方式包括充值时开票、抵扣时开票、不开票。
由于开具发票的前提是发生了纳税义务,而在充值抵扣的业务中,确认纳税义务的发生有以下两种情况:
①充值资金时就发生了纳税义务。
例如游戏中客户充值虚拟币要购买道具。游戏公司收取款项,为玩家提供虚拟货币的服务已经发生,此时纳税义务已经发生,应当缴纳增值税。
这种情况下,是充值时就开票的。如果纳税人因兼营多个不同税率增值税项目,无法分别核算,则应缴纳的税率为多个增值税税率中的最高值。
②消费资金时才发生纳税义务。
例如一家酒店的会员卡充值,卡内余额可以用于消费不同类型的服务或商品,例如住宿、餐饮或商店内购物。
而提供不同的服务时适用的增值税税率是不同的,只有真正消费时才知道购买的是什么,确认纳税义务。
如果是抵扣时开票,因为消费后再开具发票,能分别核算,按所提供的商品或服务的适用税率或者征收率计算缴纳增值税即可。
资金变动影响开票,最小颗粒度应该是开票方式跟着资金走,但是为了管理统计上更加方便些,可以将开票方式的标记抽象出来,放在账户这一层面,结合账户业务类型标记,对同一个账户的资金变动进行统一的开票方式管理。
当账户本身进行业务类型的区分后,一个账户对应到一个业务类型,不会同时存在充值时发生纳税义务和消费时又发生纳税义务的情况。
另外,前文有提到账户充值存在不同体系的可能性,当充值账户的适用体系为 iOS 时,由于款项是先给到苹果公司,再与我们的平台结算,平台与客户没有产生直接的资金交互,所以这类账户下的资金不管是发生充值还是抵扣业务,平台都是不给客户开票的。
(2)删:账户注销
账户注销表示账户不再使用,要对账户信息进行删除销毁处理。
当客户决定不再使用我们平台的业务,确定不会再在我们平台中开展业务时,为了避免后续不必要的金融纠纷和数据信息风险,可以选择注销账户。
若需要发起账户注销,由于账户中原来存在资金流动,需要判断账户相关资金是否处理完毕,有必要提醒客户注销所带来的风险与损失。
(3)改:修改账户信息、修改账户状态
账户的修改包括修改账户信息和 修改账户状态。
修改账户信息和账户状态是指当账户的业务属性、业务状态发生变化时,为保证业务数据与系统数据的一致,需要在系统中进行相应的信息修改。
但账户关键属性一般是不允许修改的,具体可以根据实际业务进行考虑,如果实际业务中没有其他属性是可以进行修改的,这个功能可以暂缓考虑。
账户关键属性有账户主体、适用体系、业务类型、开票方式。
其中账户主体、适用体系、业务类型是在账户创建之初就明确的,不同的主体、体系、业务类型会创建对应的不同的账户,不应该发生变化;
如果是账户内的资金发生了归属对象的变化,可以通过转移资金的方式解决。
开票方式本身是由账户所属的业务类型和适用体系决定的,这两个属性不会发生改变,因此,开票方式也不存在修改的场景。
账户状态有正常、已冻结。
当账户状态为正常时,可以针对账户做的修改状态的操作为“冻结账户”,冻结后,账户将被限制,不可使用。
需要对账户进行冻结的场景及相应的处理方式有:
①客户遗失了卡,办理挂失,员工为客户进行冻结处理;
②账户发生盗刷情况,客户要求冻结账户,员工为客户进行冻结处理;
③客户账户透支部分逾期未还款,系统判断进行冻结处理;
④客户账户透支金额超过信用额度,系统判断进行冻结处理;
当账户恢复正常时,也可以为账户进行“解除冻结”处理。
(4)查:查询账户
查询账户即按指定的条件筛选出目标账户,可以查看目标账户的数量、业务属性,以及账户下资金的使用情况。
账户的业务属性有:客户名称、业务类型、适用体系、开票方式;
前文提到,账户是记录、整理和汇总原始数据的载体。账户下的资金的使用情况包括账户余额、账户收入总和以及账户支出总和。
客户经理可以查看自己负责的客户目前账户的资金余额情况,如果余额快要用完,可以去跟进营销;客户可以查看自己的账户资金余额情况,看是否需要充值。
我们查看的账户资金使用情况是一个实时的累计值,是会随时变化的。
账户余额由账户收入总和与账户支出总和之差计算得出,即:账户余额=收入总和-支出总和。
其中账户余额还分为 当前可用余额 和 当前不可用余额 。
当前不可用余额产生的场景如下:
①现金资金的提取和赠送金额的充负业务,如果还未通过审核,这部分金额会被暂时冻结,记为当前不可用余额;
②赠送金额有「有效期」的概念,即赠送的金额可以指定这部分金额的生效时间范围。如果统计时,存在赠送金额还未到生效时间,则这部分金额是未生效余额;如果存在赠送金额已经超过生效时间,但没有被使用,则这部分金额是已过期未使用。
2. 关于资金
(1)增:账户充值、退回抵扣
资金的增,即资金的进项,包括账户充值和 退回抵扣 。
账户充值是指与客户达成营收后,在平台为客户充值款项。
充值的场景包括客户经理与客户线下达成营收,成单后,客户经理需要在平台中为客户充值款项;或者是客户自主在线发起充值。
充值的资金类型包括 现金和 赠送金额。
其中赠送金额是指作为客情赠送或有充值赠送、充值返利的市场策略,给到客户的除充值部分外赠送的金额。
由于是赠送的金额,不是客户真实付款充值的,可以通过规定有效期的方式,给客户心理造成一种紧张感,敦促客户在规定时间内消费,同时尽可能降低成本。
当充值的资金类型为现金时,可以由客户经理为客户充值,也可以由客户自主发起充值。充值时如符合充值赠送的市场策略,则系统将自动为客户账户完成赠送金额的充值。
当赠送金额是在维护客情的场景下赠送给客户时,需要由客户经理在业务系统中发起直充,赠送部分金额需要经过审核人员确认才可生效。
退回抵扣是指当使用余额抵扣的订单需要退货或者退款时,抵扣部分的款项的退回。
当原订单完成退货或退款时,资金需要退回到对应的账户中;后续如果又产生了新订单,再执行扣费,从账户余额中进行扣款。
(2)删:余额抵扣、资金提取、资金充负
资金的删,即资金的出项,包括余额抵扣、资金提取和 资金充负 。
余额抵扣是指客户在购买商品或服务后,使用账户余额进行抵扣。
产生消费订单后,如客户账户中有余额,可以选择使用账户余额进行抵扣。当订单使用账户余额完成支付时,产生一条扣费流水,账户余额减少。
如果账户余额小于需支付的订单金额,可以选择先充值至充足的余额,再进行抵扣。例如当平台有充值赠送或者充值返利等促销活动时,可以提醒客户先充值,再扣款;或者是使用余额抵扣一部分订单金额,剩余部分使用其他方式完成支付。
资金提取是指客户从账户可用余额中取出款项。由于只有现金余额是通过客户真实付款产生的,赠送金额本身就是赠送给客户的,没有收取客户款项,所以资金提取只针对现金。
资金提取可能存在的场景是,客户不想继续使用或购买平台的产品了,想把剩余的资金都取出来。
当客户需要提取资金时,需要记录客户收款账号(银行账号或者是支付宝账号)和提取原因。
①为什么要记录客户收款账号?
为了便于统计和使用,了解某个主体下的资金变动情况和资金变动结果,会基于账户这个载体记录资金变动情况和汇总累计值。即资金增加后可以看到账户上增加了余额,资金减少后可以看到账户上减少余额。
账户中的资金在增加时,有很多种支付方式,现金、支付宝、微信……在资金提取的时候,也是基于账户进行的,提取的资金不对应到某次充值,无法得知当前提取的资金额在充值的时候是怎么收款的,因此也没有「原路退回」这一说,需要采集客户的收款方式,由财务线下处理款项退回给到客户。
②为什么要记录提取原因?
资金提取需要说明原因,经过审核人员确认后,再由财务人员线下处理退款,转账给客户,同时账户中减少相应资金金额。
另外,如果提取的金额在审核状态下,这部分金额将被暂时冻结,不计入可用余额,避免当提取审核通过后,发生账户余额不够提取的情况。
资金充负是指,为账户中的赠送金额余额做一个负值的充值。
可能存在的场景是,客户不想继续使用或购买平台的产品了,账户中剩余的现金提取出来后,还需要把原来赠送的金额处理掉。
如果赠送金额增加时,是通过促销策略产生的,那么在提取现金余额时,可以按充值时的约定,例如按比例对赠送金额余额进行扣减;
如果增加金额增加时,是通过直充产生的,那么当需要抹掉这部分金额时,可以为赠送金额做充负处理。
同样,资金充负需要说明原因,经过审核人员确认后,账户中减少相应资金金额。
如果充负的金额在审核状态下,这部分金额将被暂时冻结,不计入可用余额,避免当充负审核通过后,发生账户余额不够扣减的情况。
(3)改:资金状态
资金的修改指资金状态的修改。
资金的状态是跟进业务流程自动改变的。比如当资金发生提取或者充负时,还未通过审核,这部分金额会被冻结,通过审核后,这部分金额就会解除冻结,同时余额减少。
资金的修改这里不包括修改资金信息。
因为资金的信息,例如所属客户、所属账户,如果需要改变,通过资金的提取和充值即可转移;资金余额本身是一个统计值,是一个累计的结果,不存在改变的场景。
(4)查:流水明细
查询流水明细是指按指定的条件筛选出目标流水,流水是指资金变动的结果记录。可以查看目标流水中记录的数据,以了解资金的变动情况,核实确认账户中的资金余额统计是否准确。
流水明细中需要记录当前变动资金的所属客户、所属账户、资金类型、变动金额、交易类型、变动时间、关联单据、操作人、签单人。
其中,交易类型是指资金变动时对应的交易性质。分为资金进项(充值、退回抵扣)和资金出项(抵扣、资金提取、资金充负)两类。
关联单据是指资金变动时对应的记录交易情况的凭据。
不同的交易类型有其一一对应的单据,
如充值时,关联单据是充值单;退回抵扣时,关联单据是退款/退货单;
抵扣时,关联单据是使用余额抵扣的订单;资金提取时,关联单据是提取申请单;资金充负时,关联单据是充负申请单。
04 小结
资金账户管理系统的关键词即「账户」和「资金」。
其中「账户」是载体,「资金」会基于载体发生变动,由载体进行记录和归集。
从「账户」和「资金」出发,明确其增删改查功能模块对应的业务诉求,梳理设计思路。
作者:产品BBQ;公众号:产品BBQ,欢迎沟通交流~
本文作者 @产品BBQ
版权声明
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处。如若内容有涉嫌抄袭侵权/违法违规/事实不符,请点击 举报 进行投诉反馈!