先说结论:质检 hold 的库存,必须当成一条独立的生命周期来设计——谁建 hold、谁放行、超期没人管怎么办。hold 住的货不参与任何可用量分配,盘点单独处理,出路只有三条:放行、报废、退供。你要是只在 WMS 里加个 hold 状态、别的一概不管,不出三个月,待检区就会变成仓库的黑洞:货越堆越多,账越对越乱。
我做了 30 多个 WMS 上线项目,这类翻车见过不下五次,每次都是同一个剧本:系统里看着有库存,实际发不出去;更糟的是系统显示能发,实际是不合格品。两次都是钱和信誉一起赔。
两个 Hold 翻车现场
2024 年 4 月,加州安大略一家 3PL 仓。客户做小家电,一批 2 万台加湿器到货,质检按 AQL 标准抽检,发现约 8% 漏水,整批判定不合格。收货员在 WMS 里备注了一句"待质检",但库存状态还是 available。三天后波次跑单,系统把这批货分了 6000 台出去。终端客户投诉,退货、换货、重新拣货一通折腾,项目复盘估算直接损失约 1.2 万美元,还丢了当季单量最大的客户。这个坑我见过三次,每次都是"备注代替状态"。救回来的办法很笨:收货单保存时自动生成待检任务,质检任务没关闭,状态永远变不成 available。
2025 年 1 月,深圳一家跨境电商仓。一批 5 万副蓝牙耳机,质检发现电池鼓包,整批冻结。但放行权限没做隔离,值班主管为了赶大促,自己把 1.2 万副放行了。结果平台客诉率一周内冲到 4% 左右(项目经验值),店铺被限流两周。教训就一句话:放行权必须是质检线的人,运营和仓库主管只有"特采放行"权,而且特采必须货主签字,仓库自己不能拍板。
质检 Hold 的三态流转长这样
这类库存的状态就三个,四个封顶:
待检(qc_pending)→ 合格 → 放行(released,转可用) 待检(qc_pending)→ 不合格 → 冻结(qc_frozen)→ 特采放行 / 报废 / 退供
待检是"还没判",冻结是"判了死刑等执行"。这两个千万别合成一个状态——我见过有仓图省事只用一个状态,结果质检员分不清哪些是等判定的、哪些是等报废的,待检区最后只能靠 Excel 台账,系统彻底失真。
谁建 Hold、谁放行:权限与超期升级
这类库存最大的坑不在状态设计,在人。权限表上线前必须定死,我每个项目都让客户签字确认:
| 动作 | 收货组 | 质检员 | 仓库主管 | 采购/货主 |
|---|---|---|---|---|
| 建 hold(待检) | 能建 | 能建 | 能建 | — |
| 合格放行 | — | 能放 | — | — |
| 特采放行 | — | 发起 | 能批(必须写原因) | 货主确认 |
| 报废 | — | 发起 | 审批 | 审批 |
| 退供 | — | 发起 | 审批 | 执行 |

三条铁律:第一,建 hold 的权限放宽,谁发现问题谁建,别让流程卡在"等质检员来";第二,放行的权限收紧,合格放行只能是质检员;第三,特采放行必须有货主确认——货是人家的,风险人家担,仓库不能替货主做决定。
这类单子建起来容易,跟下去难。我现在每个项目都配一张超期升级表,天数是项目经验值,具体以你们实际情况为准:待检超过 48 小时没判定,自动推送质检主管;待检超过 7 天,升级到采购和运营经理,进周会清单;冻结超过 30 天,强制三选一:放行、报废、退供,不许再拖。没有升级机制的待检库存,最后都会变成呆滞库存。我见过一个仓,冻结区有批货压了 11 个月,最后只能报废,货值 6 万多美元,货主直接索赔。hold 的账龄必须进月结报表:货值、账龄、责任方三列,一个不能少。升级通知别只发邮件。我现在要求必须同时推 WMS 首页待办:质检主管一打开系统,红色超期清单就在正中间,点进去直接做判定。邮件可以已读不回,待办躲不掉——这个细节救过两个项目的 hold 账龄。
这里有个反常识的判断:很多人觉得这类库存管得越严越好,审批链拉到四五级。我见过一个仓,特采放行要 4 个人签字,结果待检区堆了 40 多个托盘,叉车转弯都困难,最后大家干脆先斩后奏,制度名存实亡。这事分两面:严管防的是"放错货",代价是"货压着发不出去"。放错货的损失是确定的、放大的(退货、客诉、丢客户);压货的损失是线性的(仓储费、资金占用)。所以正确做法是分级:高频低风险的动作必须快——合格放行质检员一人说了算;低频高风险的动作才值得严——特采、报废、退供走审批。一刀切的严管,最后一定死在执行上。
上线前夜 checklist
- 状态字典定死:available、qc_pending(待检)、qc_frozen(冻结)、released,就四个,不许各仓库自己加。
- 收货即建 hold:收货单保存自动生成待检任务,质检没关闭,状态变不成 available,可用量恒为 0。
- 物理隔离:待检区划黄线,托盘贴黄色 hold 标签;WMS 里待检区库位属性锁定,不参与波次分配。
- 权限按上表隔离,特采放行必须货主确认。
- 超期升级定时任务配好,48 小时、7 天、30 天三档。
- 盘点单独处理:hold 区单独建盘点任务,盘点期间冻结一切移动,差异单独审批。
- 退供必须有出库单据:供应商来拉货,WMS 要有单、有记录,账实才能对上。
- 月结报表:hold 库存单独一张表,货值、账龄、责任方三列必须有。
顺带说一句:这篇和之前 OMS 预售冻结那篇不是一回事。那篇讲的是销售侧"能卖多少"的可用量算法,这篇讲的是仓内实物的 hold 生命周期。一个管"卖",一个管"货"。但两边必须对上:WMS 的 hold 库存要实时同步扣减 OMS 可用量,不然前端照样超卖。
今晚就能干的一件事:去查你们 WMS 里有几个人能点"放行"。超过 3 个,先砍到质检线手里。hold 这东西,宁可压着货,也不能放错货——压货的损失看得见,放错货的损失算不清。
作者:林晓|WMS 实施顾问,做过 30+ 上线项目




