跳到正文

外部库存同步成功但数量不同:映射、仓库和可用库存口径排查|云上订货系统

云上订货 · 更新于 2026-10-01

库存同步最容易误判的地方,是把一句“同步成功”理解成所有商品在所有仓库的所有数量都相同。实际上,同名商品可能有不同规格,系统库存与可用库存不是同一个数字,同步取数后也可能发生新的出入库。本篇按原同步批次排查:先确定使用哪条对接路径,再定位两端同一规格、同一仓库、同一单位和同一时间的数量,最后解释差异对应的业务记录。

先识别对接路径,保存本次同步的证据

管理端应用中,OpenApi 与 ERP数据同步是不同入口。先核企业实际启用的是哪一个应用、哪一种外部系统,以及自己的查看权限。进入 ERP数据同步后,在实际可用的对接类型下分别查看参数设置、仓库设置、商品设置和同步记录;不同类型的设置内容可能不同,不能照另一家企业的页面推断本店也有相同按钮。缺少应用或参数页时先交企业管理员确认开通与权限,不拿普通商品导入替代库存同步。

OpenApi与ERP数据同步历史真实应用卡片局部

图1:真实历史应用卡片局部,分别定位两条对接路径;卡片文字和开关保持原画面,不代表当前企业的开通状态。

先保存外部导出时间、同步发起时间、返回提示和原同步批次,再选择一条发生差异的商品规格做追查。ERP同步记录中关注同步类型、同步状态、失败原因、关联单据和同步时间;有成功记录时沿关联单据查看实际处理。没有记录时,也不能直接认为本次数据一定相同:可能没有差异需要生成库存单,可能没有匹配到数据,也可能任务仍在处理或发生异常,应结合取数范围和原结果判断。

接口对接则由对接负责人核本次实际调用的接口、目标仓库、发送明细和返回结果,不能只拿外部程序自己显示的成功标签。旧库存同步路径会按目标数量计算差量,再生成其他出库或入库并提交、审核;ERP库存对接则可能生成盘点单。两者回查的原单据不同,不能看到盘点列表为空就判断所有接口均未生效,也不能把一次入库成功说成整个ERP同步批次全部完成。

用仓库和规格组合定位,编号相似也要逐项核实

ERP商品设置应同时核商品名称、商品编号、规格名称、规格编号和外部规格编号。外部编号需要落到具体规格,而不是只落到商品名称。两个包装规格即使名称相同,也不能用一个外部编号混在一起;一箱十二瓶与一瓶并不是两个可任意替换的数量。查外部库存原明细的产品编号,与云上订货对应规格的外部编号逐字比较,前后空格、前导零和编号变更都要保留原值核对,不凭显示名称相近认定已经映射。

ERP仓库设置另有仓库名称与外部仓库编号。确认外部发货仓究竟对应哪个云上订货仓库,区分仓库自身编号、外部编号与系统内部ID。对接负责人应提供实际生效的对应关系,不能把同名仓库当成同一个仓,也不能为了让编号看起来一样而随意修改正在使用的仓库资料。多仓企业至少核一条目标仓明细,以及同一规格在其他仓是否也有库存,避免把其他仓的数误认成同步结果。

ERP外部编号与旧接口规格编号的定位结构

图2:ERP按外部仓库、外部规格关系核对;旧接口另核目标仓库ID和云上订货规格编号。两条路径不能混用一套编号规则。

若使用旧接口,发送明细里的规格编号与ERP商品设置中的外部规格编号不是可以直接互换的字段。目标库存数量也不是本次新增入库数量。例如要让目标仓系统库存为二十,应确认发送的是目标二十,不能把本次到货五直接当目标五。编号未匹配的行不应被假定为系统已经自动新建商品:按发送条数、能够定位的规格数和实际库存单明细逐项核对,少一行就查该行,而不是只查整批返回提示。

先比较同仓系统库存,再解释可用库存与单位

在仓库的商品库存中用准确的规格编号定位商品,并选定本次目标仓库。核搜索条件、所属仓库、是否只看有库存的商品,以及列表显示的基本单位。排查零库存商品时,相关筛选可能使它从结果中消失,查不到一行不能立即等同于商品资料不存在。当前查看“全部仓库”时,得到的是汇总范围,不能直接与外部某一个仓库比较;应把查询范围收窄后再取数。

商品库存原仓库筛选与系统可用库存字段局部

图3:真实历史列表局部,鲜整鸡显示采购中二十、可用库存一、系统库存九,基本单位公斤;所属仓库为全部仓库,正式排查必须再选目标仓。

系统库存、可用库存和采购中分别表示不同业务口径。采购中数量不能直接当已入库数量;可用库存还受订单占用及企业设置的扣减时点影响。因此外部现存数量与云上订货系统库存一致,而可用库存不同,可能是占用解释的问题,不能立即判为库存同步失败。先查该规格的未完成订单、所选订货仓库、库存扣减方式和当前占用,再沿原订单看提交、付款确认或订单确认等实际节点。

例如同一目标仓系统库存二十,符合当前配置的订单占用八,可用库存十二,可以同时成立。若错把十二重新同步为系统库存,库存口径就被混用了。这个例子只说明三者的关系,不代表每一种订单状态都会占用八;占用应由本企业设置及原订单记录证明。可用库存初始化用于按业务规则重算占用,不能修正错误的外部仓库映射或单位,也不应在没有定位原因时反复执行。

同仓库存口径与单位换算的数字对照

图4:示例系统库存二十、订单占用八、可用库存十二;另列两箱每箱十二瓶应为二十四瓶的换算,二者分别检查,不把占用差异与单位差异混为一谈。

单位需由两端资料和实际发送明细共同确认。外部以箱计数、云上订货以瓶计数时,两箱每箱十二瓶对应二十四瓶,不能发送数字二就认为系统会自动猜出倍率。换算关系不是从商品规格名称中推断的;重量、包装件数和辅助单位还要看各自定义。先用一条明细核两端基本单位、倍率和目标数,再复核同批其他规格。不能把所有差异统一乘一个倍数,也不能把四舍五入后恰好相等当映射通过。

把取数、库存单生效与后续业务放到同一条时间线

ERP库存对接的发起成功提示与每个仓库的库存单处理结果需要分别回查。以按仓生成盘点的路径为例,取回外部数量后提交异步任务,差异行形成盘点单,保存、审核后才有对应库存结果与成功关联记录。不能在任务发起后立即截一张旧库存页就认定没有生效;先刷新同步记录,定位原关联单据和审核结果,再在同一仓、同一规格下查库存明细。

外部取数盘点生效及后续出库的时序图

图5:示例外部取数二十,盘点生效后系统库存二十,随后有效出库二,当前十八可由原出库解释。每个时间点都回查原记录,不能反复把旧快照写回。

同步后数量再次变化,并不必然说明同步错误。例如取数时外部目标为二十,原盘点生效时云上订货系统库存二十,之后发生有效出库二,当前系统库存十八就可能正确。核外部快照截止时间、库存单生效时间和查询时间之间的入库、出库、调拨、退货或盘点记录;把时间差内的有效业务逐笔解释,不能把较早的外部快照与当前库存硬比较,也不能再发旧二十覆盖已经发生的出库。

一个批次包含多个仓库时逐仓核关联,不能从一个仓成功推断另一个仓也已完成。没有差异的商品可能不生成调整明细,未映射商品与取数范围外商品也可能未处理,三者要分开解释。旧接口则查相应其他出入库的仓库、规格、差量、提交和审核状态。操作出现超时、任务无反馈或频繁操作提示时,先查询原批次与原单据;刷新查看不等于重新发起,不能连续点击同步制造新的调整记录。

按差异形态修正,并用原批次验收

整批商品都差同样倍率时,优先核单位与发送数;某一规格没有变化时,优先核外部编号、是否在取数范围以及该行是否进入原库存单;同一规格只有某仓不对时,优先核仓库关系和查询筛选;系统库存正确而可用库存不对时,优先核占用及扣减时点。这里只是排查优先级,最终仍需相应记录证明,不能用差异形态代替确认原因。

修改映射前保留原对应关系、影响规格和仓库范围,由负责对接资料的人核目标关系;修改单位前核在途库存和原业务所用单位,不能只改商品名称让数字看起来一致。重新同步必须使用修正后的最新数据时间和已确认范围,沿新批次核结果,同时留存前一批处理状态。曾经已经生成并生效的盘点或出入库,不为消除差异而随意作废;是否需要更正,先判断实际库存与业务关联,再交对应岗位按允许方式处理。

验收至少形成一条闭合证据:外部仓库与产品原编号、云上订货目标仓与规格、相同单位下的目标数、原同步批次及实际库存单、处理后的同仓系统库存,以及查询时点的占用和后续库存变动。能够解释目标二十、系统二十、可用十二,或目标二十经后续有效出库变为十八,才是有依据的验收;不以所有页面数字强行一样为完成标准。

仍不能解释时,把脱敏编号、两端查询条件与时间、同步状态、原关联单据和差异行交给对接负责人追查同时间窗记录,不发送密码或完整授权参数。当前入口、字段或处理路径与本文不一致时,以实际企业版本和实际原记录复核,不能用历史画面代替当前验证。先定位真实差异,再修对应资料或处理记录,避免通过新建其他入库、反复初始化或重发旧库存快照把差异掩盖。

相关操作与业务方案