去年11月,苏州一家做精密五金件的工厂,财务经理老周在月度经营会上摊开一张利润表:当月营收820万,毛利率21.3%,净利67万。老板看了一眼,脸色却不太好看——账上能动的钱,只剩不到40万。
利润表是赚的,银行账户是瘪的。这个矛盾,老周跟了三个月,越跟越觉得不对劲。
一笔“已回款”的应收账款
老周翻出10月的一张销售订单。客户是合作四年的老客户,合同账期写的是60天,金额146万。系统里这笔单子状态显示“已回款”,但银行流水里迟迟找不到对应进账。
问销售,销售说客户已经付了。问出纳,出纳说没收到。两边对不上,老周自己去查,才发现客户分了三笔打款,其中两笔合计98万走的承兑汇票,到期日是次年3月。系统里录入的时候,销售直接勾了“已回款”,没标注票据类型。
利润表上确认了收入,应收账款也销掉了,但实际可用的现金,要再等四个月。
这不是个例。老周后来做了一次全量排查,发现过去半年里,有17笔订单存在类似情况,涉及金额430多万。承兑汇票、供应链金融凭证、甚至客户以货抵账——这些在系统里统统被记成了“已回款”。
问题出在“回款”这两个字的定义上
大多数中小工厂的ERP系统里,“回款”只有一个状态:已回或未回。但现实中的回款至少有四种形态:现款、承兑汇票、抵账物资、以及客户口头承诺的“下周付”。这四种形态对现金流的实际影响,差别巨大。
现款当天到账,承兑汇票要等三到六个月,抵账物资还得再变现。但在系统里,它们长一个样。
老周算过一笔账:如果把承兑汇票的到期日纳入现金流预测,他们工厂有将近两个月的资金缺口是可以提前预判的。但过去三年,这个缺口每次都是“突然”出现的。
财务和业务之间的信息断层
销售关心的是“这单签了没有”,财务关心的是“钱到了没有”。两个部门用的是一套系统,但录入的颗粒度完全不同。
销售在客户那里收到一张承兑汇票,拍照发给出纳,出纳手工登记在Excel里。ERP系统里的回款状态,还是销售凭记忆勾选的。一张票据从收到到录入,平均延迟4.7天。这4.7天里,财务做的资金计划全是错的。
改变从一张票据开始
老周后来做了一件事:把“回款”拆成了五个状态——现款已到账、承兑已收票、承兑已贴现、抵账已入库、口头承诺未落地。每个状态对应不同的现金可用系数。
现款系数1.0,承兑收票系数0.6,口头承诺系数0。销售在系统里录入回款时,必须选状态、填票据号、填到期日。不填,单子提交不了。
这个改动上线第一个月,财务做的次月资金预测准确率从原来的不到60%提到了87%。老板再也没在经营会上问过“钱去哪了”。
说真的,很多工厂的现金流问题,不是赚得不够,是账上的“回款”和口袋里的钱,根本不是一回事。把这两个概念分清楚,比多接两个订单管用。

