ERPNext 学习笔记:采购收货对不上订单,我先查这三个数

上周把采购申请和询价补上之后,这周终于走到了收货这一步。本以为下单之后就是等货到、点一下收货这么简单,结果第一次操作就被数量卡住了。今天这篇就把这段折腾记下来。

收货单不该手工从头建

ERPNext 里采购订单和收货是两张单据,Purchase Order 管的是“要买多少”,Purchase Receipt 管的是“实际到了多少”。我第一次图省事,直接手工新建了一张收货单,把明细一行行敲进去,结果和订单对不上号,后面发票也挂不上。后来才知道应该打开 PO,用 Create 菜单里的 Purchase Receipt 生成,明细和数量都会带过来,我只需要改成实际到货的数量。

对不上的时候,先看这三个数

收货页面上有三个量容易看混:Ordered Qty 是订单数,Received Qty 是累计已收数,Accepted Qty 是真正验收入库的数。前两个决定订单还差多少没收,最后一个才影响库存。我之前只看 Ordered Qty,以为收了货订单就该关掉,实际上 ERPNext 是拿 Received Qty 和订单数比,没齐就一直是部分收货的状态。

短收是常态,别为了省事一次收满

供应商先到了一半的货,这是最正常的情况。我的处理是按实际数量填收货,剩下的留在订单上,等补货到了再生成新的一张收货单,这样 PO 上的缺口一眼就能看到。中间我动过一次歪脑筋,想把订单数量一次性全部确认,回头再把没到的那部分做退货冲掉,好在没这么干——那样库存会虚增,财务对账也会跟着乱。

超收要先问,再决定怎么记

另一种情况是供应商多送了。ERPNext 默认允许一定程度的超收,但能在系统里收货不代表业务上就该收。多出来的部分要么改成订单数量、走一次订单变更,要么先和供应商说清楚是暂存还是补发。我这次遇到的多送了两箱,最后选择在系统里如实记录超收,单独留了备注,免得后面付款时说不清这笔钱该不该付。

发票对不上,就是三单匹配没做完

走到 Purchase Invoice 时我才真正体会到“三单匹配”是什么意思:订单、收货单、发票这三张单的数量和金额必须能对得上。采购发票一般是从收货单生成的,如果供应商开票的数量或单价和实际收货不一致,先别急着提交,把差异找出来。我这次的差异是运费没有提前谈好,被单独加在了发票上,后来补了一张费用单才理平。

今天的小结

收货这一步看着只是填个数量,背后其实是采购、仓库和财务三方在同一个数字上对齐。短收、超收、退货、发票差异,这些都是正常业务里一定会出现的情况,关键不是想办法让数字好看,而是让系统里的记录和实际发生的事保持一致。

下一步准备试试采购退货之后,库存和发票要怎么冲,顺便和 Odoo 的收货差异处理做个对照。