复式记账与流水账——钱去哪儿了?

记账是一种记录和管理个人或家庭财务状况的方法,它可以帮助我们了解自己的收入和支出,制定合理的预算,节省开支,实现财务目标,提高生活质量。记账的好处有很多,以下是一些常见的好处:

  • 记账可以让我们清楚地知道自己的财务状况,避免盲目消费,减少不必要的开支,提高资金利用效率。
  • 记账可以帮助我们分析自己的消费习惯和偏好,找出可以改进的地方,培养良好的理财习惯,增强财务管理能力。
  • 记账可以帮助我们制定合理的预算,根据自己的收入和支出情况,合理安排资金分配,平衡收支,避免借贷或透支。
  • 记账可以帮助我们实现财务目标,无论是储蓄、投资、还债、购房、旅行、教育等,都需要有明确的计划和执行力,记账可以让我们更有动力和信心去实现自己的梦想。
  • 记账可以帮助我们提高生活质量,通过记账,我们可以更好地控制自己的财务状况,减少经济压力和焦虑,享受生活中的美好时光。

综上所述,记账是一种非常有益的方法,它可以让我们更好地管理自己的财务状况,实现自己的理想生活。如果你还没有开始记账,那么从现在开始吧!

上述开头由 Bing Chat 贡献。

当你看完这个开头,决定开始记账时,你会发现:

  • 记账可以毫无门槛,应用市场上以“记账”为关键字搜索一下,能找到上百个开箱即用的 App;
  • 记账也可以无比复杂,企业中和记账相关的岗位都不止一个,而且都是有专业证书,持证上岗的。

个人记账的简单,会遇到什么问题?企业记账的复杂,又能带来什么好处?如何既能保持个人记账的简单,又能得到企业记账的好处?本文将回答这些问题。

流水账

说到记账,大多数人凭借自觉最容易记录下来的就是流水账了,流水账可能长这样:

  • 公司发了 10,000 元工资到工资卡
  • 从工资卡取了 1,000 元现金
  • 给房东银行卡转账 2,000 元付房租
  • 还信用卡 2,000 元
  • 5,000 元存到余额宝
  • 吃饭花了 50 元
  • 打车花了 20 元
  • 买衣服花了 100 元
  • ……

这种账记起来简单,但几乎没什么用。因为记账是为了掌握财务状况,而从这种账上,几乎什么信息都获取不到。如果想知道每个月衣食住行分别花了多少钱,只能拿着计算器一笔笔去加。

稍微进阶一点,可能会想到用表格来记账,在表格里可以加一列分类,然后借助 Excel 等工具,按照分类筛选、求和,可以更方便的统计:

序号摘要收支分类金额
1发工资收入工资10,000
2取钱1,000
3房租支出2,000
4还信用卡2,000
5存余额宝5,000
6吃饭支出50
7打车支出20
8买衣服支出100

这种方式已经能解决很多问题了,因为大部分人记账的目的就是为了了解收入和支出情况,市面上很多记账的 App 实现的可能也就是类似的功能。

但记账还有个目的,是为了了解财务状况,其中很重要一点就是个人资产的分布情况。看着上面的表格,是否能知道当前有多少存款?这些存款中,有多少是现金?多少存在银行里?多少放在了余额宝里?信用卡还欠多少钱?

带着这一串问题,再回头审视前面的表格,会发现这个表格中可能漏掉了一个关键的信息:钱是收到哪里去了,又是从哪里支出去的。

为了解决这个问题,可以在表格里再加一列,暂时把它叫做“账户”。收入时,用来表示钱是收到了哪里;支出时,用来表示钱是从哪里支出去的:

序号摘要账户收支分类金额
1发工资工资卡收入工资10,000
2取钱1,000
3房租工资卡支出2,000
4还信用卡2,000
5存余额宝5,000
6吃饭现金支出50
7打车工资卡支出20
8买衣服信用卡支出100

理想状态下,只要根据账户进行筛选,就能看到和这个账户相关的交易记录,汇总一下,就能计算出这个账户的余额了。但正如表格中所看到的,2、4、5 行的账户列是空的,因为它们既不是收入、也不是支出,也许叫做转账更合理。

转账这种交易同时涉及了两个账户,对其中一个账户是收入,另一个是支出。为了解决这个问题,可以打一个小补丁,把这笔交易记录两次,两次分别记录成不同的账户,一个记为收入、另一个记成支出,就变成了这样:

序号摘要账户收支分类金额
1发工资工资卡收入工资10,000
2取钱钱包收入转账1,000
工资卡支出转账1,000
3房租工资卡支出2,000
4还信用卡信用卡收入转账2,000
工资卡支出转账2,000
5存余额宝余额宝收入转账5,000
工资卡支出转账5,000
6吃饭现金支出50
7打车工资卡支出20
8买衣服信用卡支出100

复式记账

上一节最后的这个小补丁,其实已经带我们摸到了复式记账的大门了,因为它抓住了记账的本质。

记账中,记录一笔交易,本质上在记录什么?就是在记录钱的流向。钱是不会凭空产生和凭空消失的,它只会在交易中,从一个地方流向另一个地方。

不光是转账,所有的交易都是这样的:

  • 发工资:是从公司的银行账户中,流向了你的银行卡
  • 交房租:是从你的银行卡,流向了房东的银行卡
  • 吃饭:是从你的钱包,流向了餐厅老板的钱包
  • 打车:是从你的银行卡,流向了出租车司机的银行卡
  • 买衣服:是从你的信用卡,流向了服装店老板的银行账户

之前只关注了属于你的账户,花钱的时候,只看到了钱从你的账户里支出去,没看到钱又进到了别人的账户,所以记录成了一笔支出;收钱的时候,只看到了钱进到了你的账户,没看到没是从别人的账户出来的,所以记录成了一笔收入。只有转账时,两个账户都是你的,迫不得已,才打了个补丁把收支都记录了。但这个补丁,才是记账的本质。

理解了这个,可以调整一下上面的表格,把每笔交易中的账户都补齐:

序号摘要账户收支分类金额
1发工资工资卡收入工资10,000
公司银行账户支出工资10,000
2取钱钱包收入转账1,000
工资卡支出转账1,000
3房租房东银行账户收入2,000
工资卡支出2,000
4还信用卡信用卡收入转账2,000
工资卡支出转账2,000
5存余额宝余额宝收入转账5,000
工资卡支出转账5,000
6吃饭餐厅老板钱包收入50
现金支出50
7打车出租车司机银行账户收入20
工资卡支出20
8买衣服服装店老板银行账户收入100
信用卡支出100

这种每笔交易,都要在至少两个账户上记录的记账方法,就叫做复式记账。

为什么全世界的企业都使用复式记账,因为复式记账才是完整的反映了一笔交易中,资金从哪来又到哪去了的问题。可以说之前表格里单独记录的收入和支出,都只是记录了交易的一部分,是不完整的。

注意观察这个表格,会发现分类这一列显得很多余。之前是为了便于统计各项花销的,而如果使用复式记账的方式,账户本身就起到了分类的作用了。例如通过统计餐厅老板钱包收入了多少钱,就知道在吃饭上花了多少钱了。

说到这,你可能会有几个疑问:

  • 我每天去不同的餐厅吃饭,他们不是同一个老板,难道要分别统计吗?
  • 房东也在楼下开了家餐厅,我偶尔会去吃个早餐,这些钱也转到了房东的银行卡里了,那不是把吃饭的钱统计成房租的钱了吗?
  • 我平时上下班有时打车、有时坐地铁、有时开车,我既想知道在每一项上花了多少钱,又想知道在交通上一个花了多少钱,该怎么办?

其实这几个问题可以看作是同一个问题,都是对账户的理解的问题。对于属于你的账户,例如现金账户、银行卡账户、余额宝账户等,这是没什么歧义的。因为它们是客观存在的,也是你想关注的。

但对于属于别人的账户,你是没办法知道它客观上存在几个账户的,也没必要关注这些,你要关注的是这个账户是用于什么意图。

例如公司可能有多个银行账户,你不可能知道具体有哪些账户,也不必知道,你只知道这都是用来给你发工资的账户。而反过来,即便公司都是从同一个银行账户发出来的工资,但你可能想要知道基本工资、提成、分红、年终奖分别赚了多少钱,那么也可以人为的把它们分成多个账户。而且为了便于统计,账户也不一定是平铺的,你可以给它们分级,一级账户、二级账户等等。例如:“交通-出租车”、“交通-地铁”、“交通-加油”。

总之,账户的划分,是为你服务的,你事后想从什么角度去统计,就按什么维度去划分。包括属于你的客观存在的账户也是这样,例如支付宝的余额和余额宝、微信的零钱和零钱通、各种银行的活期余额和各种宝(可以直接用于交易无需提现的),在使用上和统计上,对你来说是没什么区别的。那么即便它们是客观存在的两个不同的账户,你也可以把它们看作是同一个。

回到这个表格,除了分类,收支这一列也显得有点多余,而且还不方便统计。例如要统计某个账户的余额时,还要人为的把收入和支出分开计算然后做差。其实本质上就是钱流入、流出的问题,完全可以用正负号解决。对于流入的(收入)记作正号,流出的(支出)记作负号,不光可以省一列,还方便统计了。

删掉分类和收支这两列,每一笔交易占用的两行中,变化的就只有账户和金额两列了,为了更精简,可以把账户这一列转换成行,最终这个表格可以转换成这样:

序号摘要工资卡现金账户余额宝信用卡公司发薪账户收房租的账户收餐费的账户收路费的账户收服装费的账户
1发工资10,000-10,000
2取钱-1,0001,000
3交房租-2,0002,000
4还信用卡-2,0002,000
5存余额宝-5,0005,000
6吃饭-5050
7打车-100100
8买衣服-3,0003,000
合计09504,900-1000-10,0002,000501003,000

注意看上面的表格,会发现对每一行求和必然等于 0。因为这个数字代表了资金的流动,如果不等于零,就说明有一部分钱凭空出现或消失了。

对表格的每一列求和,根据这个账户的含义不同,就能得到存款、负债、支出或收入,例如:

  • 现金账户求和结果是 950,说明有 950 元流向了现金账户,如果之前现金账户的余额是 0,那么现在现金账户的余额就是 950 元;
  • 信用卡求和的结果是 -1,000,说明从信用卡账户流出了 1,000 元,如果之前信用卡账户的余额是 0,那么现在信用卡的余额就是 -1,000 元,说明欠银行 1,000 元需要还;
  • 公司发薪账户求和的结果是 -10,000 元,说明从发薪账户流出了 10,000 元,因为这是属于别人(公司)的账户,说明从别人那里流出了 10,000 元到你的账户里,所以你收入了 10,000 元;
  • 收路费的账户求和的结果是 100 元,说明向这个账户流入了 100 元,因为这是属于别人的账户,说明有 100 元从你的账户流向了别人,所以你在路费上花了 100 元。

如果只想统计一段时期的收入或支出,例如一个月或一年,只需要筛选出这一年的交易进行求和即可。

看到这里,你已经学会了复式记账的基本原理了。你可能会说,就这么简单?没错,复式记账就是这么简单。

把复式记账看作是一种记账的理念更合适一些,它并不是一个具体的方法。例如本节的这两个表格,就可以算作是复式记账,因为它们确实符合复式记账的原理。但显然不会有任何一个企业的账本长这样。

企业使用的记账方法叫借贷记账法,是复式记账的一种。这种记账方法就复杂了很多,它明确规定了各种记账符号、规则、各种术语等。把本节的表格拿给另一个人看,不给他解释五分钟,估计他很难看懂。而企业的账本可不光是用来给自己看,还要按照这个交税,还要经得起审计的。所以一定要有一套严谨的规则。举个简单的例子,作为个人记账的话,账户怎么分完全看心情,但在企业中可不是这样,是有明确的会计科目要求的。如果不是这样,企业买套房,给股东看时,说这套房是投资,每年升值 20%,你们快来给我投资。给税务部门看的时候,说我这套房是经营成本,每年亏损几个亿,年年不用交税。

但这些都不重要,理解了本节介绍的这些内容,你就具备使用复式记账的思想,去管理自己的财务的能力了。

本节介绍的例子,只是为了说明复式记账的原理,还不能真正体现复式记账的强大之处。下面通过几个典型的场景,来领略一下复式记账的魅力。

几个典型场景

信用卡

用信用卡买了一件 100 元的衣服,吃了一顿 200 元的饭。记账如下:

序号摘要信用卡吃饭衣服
1买衣服-100100
2吃饭-200200
合计-300200100

最后一行合计的数字的含义是:

  • 欠银行 300 元
  • 在吃饭上花了 200 元
  • 在买衣服上花了 100 元

工资发了 1,000 元,然后还了信用卡的 300 元:

序号摘要借记卡信用卡工资吃饭衣服
1买衣服-100100
2吃饭-200200
3发工资1,000-1,000
4还信用卡-300300
合计7000-1,000200100

最后一行合计的几个数字的含义是:

  • 银行卡里还剩 700 元
  • 信用卡还清不欠钱了
  • 总收入 1,000 元
  • 吃饭花了 200 元
  • 买衣服花了 100 元

后三列都是属于别人的账户,求和是 -700,意思是从别人的账户中流出了 700 元(到你的账户中),也就是净收入是 700 元。

前两列都是属于你的账户,求和是 700,意思是(从别人的账户)流入了 700 元到你的账户,也就是净资产增加了 700 元。

报销

公司安排出差,住宿、交通、吃饭分别花了 1,000、2,000、3,000 元,这些都是因公产生的费用,出差结束后公司会报销。出差的周末,你花 50 元打车去当地的景点转了一圈,门票花了 100 元,还买了 200 元的纪念品。记账如下:

序号摘要待报销信用卡交通门票纪念品
1出差垫付路费1,000-1,000
2出差垫付餐费2,000-2,000
3出差垫付住宿费3,000-3,000
4打车去景区-5050
5景区门票-100100
6买纪念品-200200
合计6,000-6,35050100200

注意看前三行,钱从信用卡流出没问题,但它们并没有分别流向住宿、交通、吃饭账户中,而是都流向了“待报销”这个账户。这是因为这些钱并不算你的消费,只是你帮公司垫付的,公司将来是要还给你的。这相当于公司在向你借钱,这个账户是一个债权账户。

后三列是属于别人的账户,求和是 350,说明消费了 350 元。这是合理的,因为替公司垫付的那 350 元不属于消费。

前两列是属于你的账户,求和是 -350,说明净资产少了 350 元。虽然信用卡减少了 6,350 元,但其中有 6,000 元是流向了待报销账户,待报销账户还是你的资产,只是换了种形式存在了。吃饭、打车的那些票据,就是报销凭证。可以理解一部分钱从银行卡上的数字形式,转变成了报销凭证这种形式存在,将来你可以用这些报销凭证去找公司换回银行卡上的数字。

回到公司后,凭借发票找公司的财务把本次出差的费用报销后:

序号摘要银行卡待报销信用卡交通门票纪念品
1出差垫付路费1,000-1,000
2出差垫付餐费2,000-2,000
3出差垫付住宿费3,000-3,000
4打车去景区-5050
5景区门票-100100
6买纪念品-200200
7报销6,000-6,000
合计6,0000-6,35050100200

报销相当于从待报销这个账户流出了价值 6,000 元的报销凭证,变成钱流入了银行卡这个账户。所以报销这件事,本质上就是资产以不同的形式在你的不同的账户之间流转。

AA

你和你朋友出去玩都是 AA 的。某天你和张三、李四一起出去玩。花了 240 元吃了个饭,你付的钱。吃完饭又花 300 元看了个电影,张三付的钱。记账如下:

序号摘要信用卡张三李四吃饭看电影
1吃饭-240808080
2看电影-100100
合计-240-208080100

第一笔交易,你花了 240 元,这 240 元是从信用卡流出的。但因为你和朋友是要 AA 的,所以这其中只有 80 元是流向了吃饭,另外 160 元分别流向了张三和李四,是你暂时帮他们垫付的,后面他会还给你,就像刚才公司垫付的例子一样。

第二笔交易,虽然是张三花的钱,但其中有 100 元是你的钱流向了电影院,只不过这一百元暂时没有从你的钱包中流出,而是张三帮你垫付的,将来你也会还给他。

表格中张三列求和是 -20,说明张三有 20 块钱流向了你这里,你要还给他;李四列求和是 80,说明你有 80 块钱流向了李四,李四需要还给你。还钱后:

序号摘要钱包信用卡张三李四吃饭看电影
1吃饭-240808080
2看电影-100100
3AA6020-80
合计60-2400080100

发工资

你的工资单如下:

  • 工资:10,000 元
  • 奖金:2,000 元
  • 医疗保险:100 元
  • 其他社保:400 元
  • 住房公积金:1,000 元
  • 个人所得税:2,100 元
  • 实发工资:8,400 元

这里简单说明一下,按照目前社保和公积金的政策,医疗保险个人缴纳的部分,会发到医保个人账户,在门诊和住院时可以用,属于看得见摸的着的。养老保险也有个人账户,但这个账户只能等到退休的时候被动的等着发,属于看得见摸不着的。住房公积金公司和个人缴纳相同的比例,全部存在个人的公积金账户,买房、还房贷、租房都可以提取,也属于看得见摸的着的。其他保险没有个人账户的概念。

记账的目的是为了管理财务状况的,所以像医保、公积金这种看得见摸得着的账户,就要能体现出来。而像养老保险这种只能看不能用的,列出来也没什么意义。所以这笔工资最终可以这样记录:

序号摘要工资卡公积金账户医保个人账户工资奖金公司缴公积金社保个税
1发工资8,4002,000100-10,000-2,000-1,0004002,100

税前工资就是工资和奖金两列共 12,000 元。税后工资通常指工资卡里收到的,可以完全自由支配的钱,也就是 8,400 元。

但前三列都是属于你的账户,都是属于你的资产,求和是 10,500 元。只不过公积金和医保账户中的资产都有使用条件,一个是只有买房的时候才能用,一个是生病了才能用。

从你的角度,你从公司获得的收入也不止 12,000 元,还应包括 1,000 元的公积金。而如果从公司的角度,公司支出的就更多了,还要包含社保中公司缴纳的部分。

这笔交易涉及了这么多个账户,非常完美的体现了复式记账的优势。首先这是流水账根本就记录不出来的,其次是这个记录反映了发工资这笔交易背后的本质。

房贷

首付三十万,贷款七十万,买了一套一百万的房子:

序号摘要银行卡房子房贷本金
1买房-300,0001,000,000-700,000

从你的银行卡流出了三十万,又从银行的贷款中流出了七十万,共计一百万,流入了房子。

怎么理解“房子”这个账户?

你可以把它当作是属于你的账户,钱换了一种形式存在了房子里。那么这三个账户都是你的,求和是 0,就是在这笔交易中,你没有消费,你的净资产也没有变化。只不过从原来的三十万流动资产,换成了一百万的固定资产和七十万的负债。

也可以把它当作是属于别人的账户,是开发商的银行账户。那么在这笔交易中,你就消费了一百万。这其中有三十万是你自己的资产,还有七十万是从银行借的。

资产和消费很多时候并没有一条清晰的界限,更多取决于价值和受益时间。

同样是买了件衣服,你花一百块钱买了件衣服,你说这玩意能穿 10 年,好像说不过去。你说穿到明年二手的还能卖 80 块钱,好像也不现实,而且为了这么点钱去记录好像也犯不上。这种情况最好就算作消费。而如果你花一百万买了件某球星穿过的、非常有纪念意义的衣服。你不太可能把这件衣服穿两年就扔了,而是会收藏起来。也许某一天可能还能以更高的价格卖出去呢。这种情况显然算作资产更合适一些。

房子无论从哪个角度来看,都是算作资产更合适一些。

这笔房贷的利率是 4%,贷款期限 30 年,还了两个月房贷之后:

序号摘要银行卡房子房贷本金房贷利息
1买房-300,0001,000,000-700,000
2还房贷-3,3421,0092,333
3还房贷-3,3421,0122,330
合计-306,6841,000,000-697,9794,663

虽然每个月换房贷花了三千多块钱,但这三千多是分成两部分的,其中两千多是流向了属于别人的账户,不再属于你了,是消费掉了;还有一千多是流向了本金,是在属于你的账户之间流动,你的净资产没有变化。这很关键,如果想要提前还款,是针对本金提前还款的;如果想要卖房,也是要先把本金这部分提前换上;如果 LPR 利率调整,也是针对本金这部分重新计算利率。

对前三列求和,会发现净资产在变少,变少的就是支付利息的那部分。

租房

你新租了一个房子,房租两千块钱一个月,押一付三,你一次性付给房东八千元,第一种方式可以这样记录:

序号摘要银行卡押金房租
1租房-8,0002,0006,000

大多数情况都是这么记账的。但这次不太一样,这次提前付了三个月的房租。如果事后统计每个月的支出时,会发现这个月支出特别高,而其他月份支出则特别少。这确实反映了你银行卡的钱的变动情况,但并没有反映你真实的消费情况。

对于这种情况,可以使用一个特殊的账户,把钱分摊到后面的每个月中:

序号摘要银行卡押金预付款房租
1租房-8,0002,0006,000
2扣第一个月房租-2,0002,000
3扣第二个月房租-2,0002,000
4扣第三个月房租-2,0002,000
合计-8,0002,00006,000

可以理解在交房租的时候,这笔钱并不是直接花掉用来交房租了,而是在房东那办了张卡,就像公交卡、饭卡一样。这笔钱还是你的,只不过换了个地方。真正的消费是发生在每个月交房租的时候,拿着这张卡去房东那刷 2,000 块钱用于交房租。

买车

花十一万块钱买了辆车:

序号摘要信用卡
1买车-110,000110,000

按照刚才买房的经验,车应该算作是资产更合适。因为一辆车能开很多年,而且大部分人在车不开了的时候,会选择将车卖掉而不是扔掉。

但车又和房子不完全一样,房子在使用过程中,价值几乎是不变的。但车每多开一年,价值都会变低一些。

假设这辆车能开 10 年,10 年后这辆车还能卖 1 万元,那么相当于这辆车每年折旧 1 万元,两年后:

序号摘要信用卡车折旧
1买车-110,000110,000
2第一年折旧-10,00010,000
3第二年折旧-10,00010,000
合计-110,00090,00020,000

两年后,这辆车还价值 9 万元。净资产少了 2 万元,用于折旧了。

其实和房租的例子类似,也相当于把用车的成本均匀的分摊到后面的每一年了。


通过这些例子,相信你已经能感受到复式记账的魅力了。本文是 复式记账系列文章 的第一篇,主要目的是带你了解复式记账的原理,和体会复式记账的优势。看完这篇文章之后,也许你还会有很多问题,例如:

  • 借贷记账法中的借和贷是什么含义?与本文用的表格有什么关系?为什么储蓄卡叫借记卡、信用卡叫贷记卡?
  • 本文给出的都是一些零散的例子,如果我想看到一些系统的报表,例如每个月收支情况、个人资产分布情况该怎么办?
  • 本文都是以表格为例介绍的复式记账,实际操作总不能拿 Excel 来记吧?
  • 现在出国留学、旅行的人越来越多了,涉及到多个币种该如何记账?如何处理汇率问题?
  • 投资应该怎么记?

这些问题都将在后续的文章中一一回答。