👋 大家好,我是十三。
导言:付款前的“最后一道防线”
在上一篇文章中,我们成功将一批“口红礼盒”收货入库,并通过“暂估入账”在财务上确认了这笔资产。现在,万事俱备,供应商的发票也寄到了财务部。
发票,就是供应商发来的正式“账单”,白纸黑字写着我们应该付多少钱。那么问题来了:既然账单都来了,我们能直接按上面的金额付款吗?
答案是:绝对不能!
在任何一家管理规范的公司,收到发票到真正付款之间,都横亘着一道至关重要的防火墙。它就是我们今天要深入探讨的主题,也是整个采购流程中最重要的风控节点——发票校验,及其核心灵魂 三单匹配。
什么是发票校验 (Invoice Verification)?
想象一下,如果没有校验,可能会发生什么:
- 采购员和供应商私下改了价格,公司为高价买了单。
- 仓库明明只收了98箱货,供应商却开了100箱的发票。
- 一笔订单被重复付款两次。
这些都是真金白银的损失。发票校验就是为了杜绝这类问题而存在的。
业务定义:发票校验是在财务安排付款之前,对供应商发票的真实性、准确性和合规性进行的最终审核。它确保我们付的每一分钱,都有据可依、准确无误。
校验的核心内容:
- 合规性检查:发票本身是否合规,比如发票号、开票日期、税率、公司抬头等信息是否正确。
- 业务一致性检查:发票上的商品、数量、金额,是否与我们实际发生的采购业务完全一致。而这项检查的灵魂,就是“三单匹配”。
核心灵魂:三单匹配 (Three-Way Matching)
三单匹配是业财一体化中最经典、最核心的控制逻辑。它像一个精密的“锁”,需要三把钥匙同时对上才能打开,这三把钥匙就是:
采购订单 (PO):我们承诺要买什么,以及按什么价格买。入库单 (GRN):我们实际收到了什么,收了多少。供应商发票 (Invoice):供应商说我们该付多少钱。
匹配逻辑(以口红礼盒为例): 系统会将这三份单据的关键信息进行自动比对:
| 匹配项 | 采购订单 (PO) | 入库单 (GRN) | 供应商发票 (Invoice) | 匹配目的 |
|---|---|---|---|---|
| 品项 (SKU) | “XX品牌口红礼盒A款” | “XX品牌口红礼盒A款” | “XX品牌口红礼盒A款” | 确保买、收、票是同一种东西 |
| 数量 | 100 套 | 100 套 | 100 套 | 确保按实际收货数量付款,不多付一分钱 |
| 单价 | 200 元/套 | - (入库单通常不关心价格) | 200 元/套 | 确保付款价格是我们当初谈好的价格 |
只有当这三份单据的“品、量、价”完全匹配时,系统才会认为这张发票是“干净”的,可以进入后续的付款流程。
系统匹配流程:
graph TD;
A[财务收到供应商发票] --> B[在ERP系统中录入发票信息];
B --> C{系统自动执行三单匹配};
C -- 匹配成功 --> D[发票状态变为“校验通过”];
D --> E((生成应付账款,等待付款));
C -- 匹配失败 --> F[发票进入“异常列表”];
F --> G[通知相关人员(采购/仓管)处理];
差异处理:当三把“钥匙”对不上时
在实际业务中,三单完全匹配是理想状态,出现差异才是常态。
场景一:数量差异
问题:发票开票数量是 100 套,但系统里的入库单显示只收了 98 套。 处理:系统会立刻冻结这笔发票的付款。财务人员需要通知采购员和仓库管理员。他们需要核实:是不是有 2 套货还在运输途中?还是仓库点数时出了错?或者供应商发错了货?问题查清并处理(如补发、按98套重新开票)后,才能继续流程。
场景二:价格差异
问题:采购订单上的单价是 200 元/套,但发票上的单价是 205 元/套。 处理:同样冻结。财务需要通知采购员。采购员必须解释价格为何变动:是原材料涨价供应商临时调价,并且经过了审批?还是供应商单方面涨价?如果是未经批准的涨价,这笔钱绝不能付。
容差 (Tolerance) 的智慧
如果每一分钱的差异都要人工介入,效率会非常低下。因此,系统通常会引入容差的概念。
例如,我们可以配置一个价格容差(如 1% 或 5 元),一个数量容差(如 0.5%)。当差异在容差范围内时,系统就自动通过,无需人工干预,大大提升了财务处理效率。
总结:守住钱袋子的“看门人”
回顾一下,从收到发票到确认付款资格,我们经历了一个严谨的校验过程:
- 发票校验:是付款前的必要审核,确保合规性和准确性。
- 三单匹配:是发票校验的核心,通过比对 PO、GRN 和发票,确保业务与账单的一致性。
- 差异处理:是匹配失败后的协同机制,确保每一个问题都得到解决。
三单匹配是业财一体化的中枢神经,它将采购、仓储的业务执行结果,与财务的资金支付行为紧密地绑定在一起,是企业内控体系的基石,是守住公司钱袋子最忠实的“看门人”。
现在,发票已经校验通过,一笔清晰、准确的“应付账款”正式生成。下一步,我们就该真金白银地把钱付给供应商了。
📚 往期回顾
👨💻 关于十三Tech
资深服务端研发工程师,AI 编程实践者。
专注分享真实的技术实践经验,相信 AI 是程序员的最佳搭档。
希望能和大家一起写出更优雅的代码!