老郑的「-8 个」
老郑在批发市场做日用百货,上系统第二个月,盘点时盯着屏幕发了愣——
一款「保鲜袋大号」,系统库存显示:-8。
负八个。
老郑当场就火了,打电话给我:
「我仓库里明明还堆着两箱呢,系统怎么给我整出个负数?货能卖到欠账啊?这软件不靠谱!」
我让他先别急,问了三句话:
- 这批货是不是先上架卖、入库单后补的?
- 退过货没有?
- 一箱多少个,系统里设的对不对?
聊了五分钟,真相浮出来了:货是上周五到的,店员当天就拆箱卖了 20 个,入库单到周一才补录——系统先扣了 20,后加了 12,中间那段时间就成了负数。
老郑松了口气,又有点不好意思:「原来不是软件的错,是我们录单的顺序乱了。」
这一篇,我们就把「库存变负数」这件让无数老板抓狂的事,一次讲透。
先纠正一个根本误解
很多老板看见负库存,第一反应是:「系统出 bug 了。」
其实 99% 的负库存,根本不是 bug,而是「记录顺序」出了问题。
打个比方——
库存数字,就像一个记账本。 它记的不是「仓库里真有多少」,而是「根据你登记的每一笔进出,算出来应该有多少」。
如果你先登记了「卖出 20」,还没登记「进货 12」,账本自然就会算出 -8。
货在仓库里好好的,问题出在「笔」的顺序,不在「货」。
所以记住这句话:
负库存不是「货变负了」(物理上不可能),而是「账算乱了」的报警信号。
它其实是系统在帮你喊:「喂,你这笔进出登记得不对劲,快来看看!」
4 种最常见的原因
原因一:时间倒挂——卖在前,进在后(最常见)
这是老郑踩的坑,也是所有负库存里最高频的一种。
典型场景:
- 货周五到了,店员直接拆箱卖货,入库单没及时录
- 销售单先扣了库存 → 库存往下掉 → 掉穿了 0 → 变负数
- 等周一会计补录入库单,库存才「填」回来
周五 14:00 卖出 20 个 → 库存:0 - 20 = -20 ❌ 负数出现
周一 09:00 补录进货 12 → 库存:-20 + 12 = -8 ❌ 还是负的
(其实仓库一直有货,只是单据顺序反了)
还有一种更隐蔽的——补录单据时把日期填错了。
入库单实际该是周五,会计周一录的时候顺手填了「今天」(周一),系统按时间排序,照样把销售排在进货前面,照样算出负数。
划重点:时间倒挂的本质是「出库单的时间,早于入库单的时间」。货没问题,是单据的先后顺序错了。
原因二:系统允许「负库存销售」(超卖开关)
你可能会问:既然没入库,系统为什么还让卖?
因为很多系统默认打开了「允许负库存」这个开关。
为什么要有这个开关?因为现实里太常见「货到了先卖、单子后补」,如果系统一卡死——库存为 0 就不让开单——收银台前就排长队、客户就跑了。所以厂商干脆默认放开。
但放开的代价就是:库存可以被扣成负数,系统不拦你。
┌─────────────────────────────┐
│ 库存为 0 时,来了一笔销售 │
└──────────────┬──────────────┘
│
┌─────────────────┴─────────────────┐
▼ ▼
┌───────────────────┐ ┌───────────────────┐
│ 开关「允许负库存」 │ │ 开关「禁止负库存」 │
│ → 照样开单 │ │ → 弹窗拦住 │
│ → 库存变 -1 │ │ → 提示「无库存」 │
└───────────────────┘ └───────────────────┘
方便,但会出负数 严格,但要先补入库
这个开关没有绝对的对错,取决于你的生意:
- 货经常「先到先卖、单据后补」→ 适合开(但要配上「负库存预警」)
- 货必须先入库才能卖、要严格管控 → 建议关

原因三:入库单漏录 / 错录
原因一是「录晚了」,这一种是「干脆没录」或「录错了」。
常见的漏录场景:
- 退货入库忘了登:客户退回 10 个,实物收进仓库了,但退货入库单没做 → 后面这 10 个又被卖出去 → 库存穿负
- 调拨入库没确认:A 仓调 50 个到 B 仓,A 仓发了,B 仓没点「收货」→ B 仓账面没加,照样卖 → 变负
- 赠品 / 促销品没入库:供应商搭赠的货直接上架卖,从没走过入库
- 数量录错:实际进 100,手滑录成 10,卖到第 11 个就负了
这一类的特征是:只有「出」的单据,缺了对应「进」的单据,或者进的数量录小了。
原因四:单位换算 / 组合拆分 / 重复扣减
这一类最隐蔽,老板自己很难想到,但其实不少见。
① 单位换算错(参见第 13 篇)
- 「保鲜袋」一箱 = 12 个
- 进货时按「箱」录入了 2 箱(系统应折算成 24 个)
- 但商品资料里「箱与个的换算关系」没设对,系统按 2 个入库
- 结果卖到第 3 个就负数了
② 组合商品 / 套装拆分错
- 「礼盒套装」= 1 瓶油 + 1 包米
- 卖套装时,系统要自动扣减「油」和「米」的库存
- 如果套装的「配方(BOM)」配错了,或者拆分单据没生成,子商品库存就会算乱、扣穿
③ 同一笔货重复出库
- 手工开了一张出库单,扫码枪又扫了一遍
- 或者退货后又重新出库,但原出库单没冲掉
- 同一批货扣了两次 → 实际扣减量 > 真实出货量 → 负数
配图 1:负库存是怎么「算」出来的

真实情况:仓库里其实一直有货
─────────────────────────────────────────────
实物: ▓▓▓▓▓▓▓▓▓▓▓▓ (12 个,好好躺着)
系统账本:只看「登记了的笔」,按时间排队算
─────────────────────────────────────────────
第1笔 卖出 8 → 账面 0 - 8 = -8 ⚠️
第2笔 卖出 4 → 账面 -8 - 4 = -12 ⚠️
第3笔 进货 12(补录,但时间排在后面)
→ 账面 -12 +12 = 0
👉 中间那段「负数」,就是单据顺序错位的产物
👉 货从头到尾没少,少的是「及时、正确的登记」
配图 2:4 种原因快速对照
| 原因 | 通俗说法 | 货真的少了吗 | 怎么修 |
|---|---|---|---|
| 时间倒挂 | 卖在前、进在后 | 没少 | 补入库单 + 改对日期 |
| 允许负库存 | 系统不拦你超卖 | 没少 | 按需关开关 + 设预警 |
| 入库漏录 / 错录 | 只登了出、没登进 | 没少 | 补漏单 / 改对数量 |
| 换算·拆分·重复扣 | 算错了、扣两次 | 没少 | 改换算 / 改配方 / 删重复单 |

看出来了吗——4 种原因,没有一种是「货真的变负了」。
负库存几乎永远是「记录问题」,不是「实物问题」。真正的实物缺失叫「账实不符」,那是下一篇的主题。
已经出现负库存了,怎么处理
老郑问:「那我现在一堆负库存,咋办?」
按这个顺序来:
第一步:别急着改库存数字
很多老板第一反应是「手动把 -8 改成 12 不就行了」。千万别。 直接改数字会把问题盖住,下次还犯,而且账更乱。要先找出是哪笔单据的问题。
第二步:倒查单据
- 看这个商品的「出入库流水」
- 找到库存第一次变负的那个时间点
- 看那笔之前,是不是缺了一张入库单 / 或者有重复的出库单
第三步:对症补单
- 缺入库 → 补入库单,日期填实际到货日(不是今天)
- 重复出库 → 把多出来的那张冲掉 / 红冲
- 换算错 → 改商品资料的单位换算,再重算
第四步:实在查不清,用盘点收口
如果流水太乱、查不动了,就以「现在仓库实物」为准,做一次盘点调整(参见第 20 篇),让账面归正。但这只是「认栽收尾」,根子还得靠规范录单。

怎么从源头预防
| 做法 | 解决的问题 |
|---|---|
| 货到先做入库单,再上架卖 | 时间倒挂 |
| 补单时,日期填「实际发生日」 | 时间倒挂的隐蔽版 |
| 开启「负库存预警」(变负就提醒) | 早发现,别等盘点 |
| 退货、调拨、赠品都走对应单据 | 入库漏录 |
| 商品资料的单位换算、套装配方先设对 | 换算 / 拆分错 |
| 出库单据避免手工和扫码重复录 | 重复扣减 |
一句话:录单的纪律,比软件本身更重要。
一个常见的反问:「负库存能不能干脆禁止?」
能。把「允许负库存」开关一关,库存为 0 时系统就拦住不让开单。
但关之前先想清楚——
- 你的货是不是经常「先到先卖」?关了之后,没及时入库就开不了单,前台会被卡住
- 你愿不愿意要求「货必须先入库才能卖」这条纪律?
我的建议:
- 管理规范、人手够 → 关掉,强制先入库,最干净
- 流水快、补单晚是常态 → 保持开,但一定要打开「负库存预警」,让它变负时就报警,而不是攒到盘点才发现
老郑的总结
老郑后来定了一条铁规矩,贴在仓库门口:
「货进门,先录单,再上架。」
三个月后他跟我说:
以前我看见负库存就骂软件,现在我知道了—— 负数不是软件在害我,是软件在提醒我: 「你们家录单的顺序又乱了,快查。」
它其实是个免费的报警器,我以前一直当它是故障。
我说:「对,会用的人,把负库存当哨兵;不会用的人,把它当敌人。」
三道自检题
-
你的系统现在有没有负库存的商品?
- 不知道 → 今晚就拉一张「库存为负」的清单看看
- 有一堆 → 大概率是录单顺序 / 漏单,别手动改数字,先倒查
-
你的「允许负库存」开关是开还是关?你知道吗?
- 不知道开关在哪 → 说明你从没管过这件事
-
你们家货到了,是「先录入库再卖」,还是「先卖了再补单」?
- 先卖后补 → 负库存迟早找上门,赶紧开预警
结尾
负库存,是进销存系统里最容易让老板误会的一个现象。
它看起来像故障,实际上是系统在替你盯着「登记纪律」—— 哪天单据顺序乱了、漏了、重了,它就用一个负数告诉你。
会看的人,顺着负数倒查,五分钟揪出乱源; 不会看的人,对着软件骂半天,下个月接着犯。
不过,负库存好歹只是「账算乱了,货还在」。 真正让老板头疼的,是账上有、货却真没了——账面和实物对不上。
那是更普遍、也更要命的问题。
留个问题给你:
你遇到过库存变负数吗?最后查出来是哪种原因?欢迎留言对对答案。
下一篇预告:《账实不符的 7 个根源,自查清单》——账面 100、实际盘出 92,那 8 个去哪了?7 个根源逐一排查,附一张老板能直接用的自查清单。