SAP寄售业务全攻略:从主数据配置到MRKO结算实战
2026/9/13 14:51:40 网站建设 项目流程

寄售业务,SAP顾问绕不开的一道坎

干SAP顾问这行久了你会发现,MM模块里能让业务部门和财务部门同时盯着你追问的,寄售业务绝对算一个。采购说“货都堆在仓库了怎么还不让用”,财务说“货都在你仓库了怎么没体现应付”,两边都有理,问题的根源多数出在“寄售”这个特殊业务模式没被正确理解,或者系统里的配置和流程没有配合好。

寄售业务直白说就是:供应商把物料放在你的仓库,物权还归供应商,你用完多少就结算多少、付款多少。对甲方来说,好处是降低库存资金占用、减少呆滞风险;对供应商来说,能获得更大的供货份额、稳定采购关系。而在SAP里,这套逻辑涉及物料主数据、信息记录、移动类型、科目确定、结算事务码等多个环节,比标准采购复杂不少。

这篇攻略是我在多个寄售项目里摸爬滚打后整理出来的实操笔记。从主数据准备到后台配置,从日常收货到月末结算,再到高频报错排查,一条线全走一遍。无论是刚入行的实施顾问,还是企业内部负责MM/FICO的Key User,这篇内容都能帮你少走弯路,把寄售业务的每一个关键节点都搞明白。

1. 寄售业务到底在解决什么问题

1.1 寄售和普通采购的本质区别

普通采购(Standard PO)的逻辑是:下采购订单、收货入库、收到发票、产生应付,物权在收货那一刻就转移给你了。哪怕物料躺在仓库里半年没人用,你在资产负债表上也是“资产”而不是“负债”,因为钱迟早要付。

寄售采购(Consignment PO)完全不同:收货时只记录“寄售库存”的数量,不产生财务凭证,也不确认应付;物料领用消耗(上生产线或转入自由库存)时,系统才按信息记录里的价格计算金额,生成结算凭证,确认对供应商的应付。

打个比方,标准采购像你在超市买一箱牛奶,出收银台就付钱;寄售像供应商在你家冰箱里放了一箱牛奶,你每喝一瓶刷一次卡,喝多少结多少。区别看似不大,但在SAP里对应的数据流、凭证流、科目流完全不一样。

1.2 企业为什么愿意做寄售

我接触过的寄售项目,背后动机基本有两类。

第一类是降低资金占用。制造业里,结构件、包装物、部分原材料单价不低、用量又稳定;如果一次性采购入库,现金流压力大,库存积压也难看。寄售模式下,物料未消耗前不在企业资产负债表上体现,采购资金的释放效果非常明显,这也是老板最容易拍板支持寄售项目的理由。

第二类是应对需求不确定。有些物料供应商交期长,但企业自己预测不准,比如研发试产件、订单波动大的定制料。寄售像“安全库存放在身边”,用多少补多少,供应商按消耗补货,企业减少了断料风险,又不用提前付款,双方都有积极性。

1.3 寄售业务的适用边界

寄售不是万能的。如果一个物料的供应商价格经常波动、质量判退率高、或者生命周期很短,做寄售反而增加对账难度。判断一个物料适不适合做寄售,我一般看三点:

  • 物料用量是否相对稳定,月消耗频率高不高
  • 供应商配合度是否够高,愿不愿意承担存货占用成本
  • 价格波动是否不大,价差频繁调整会给结算带来大量手工干预

现实中,寄售用得最多的是标准件、通用料、包装材料,这些物料规格稳定、供应充足,替换风险小。如果你所在的行业里,某个关键芯片被独家垄断,想用寄售?供应商根本不可能答应,因为全链条缺货,他凭什么给你垫库存。

2. 开始前的主数据和后台配置,少一个环节就跑不顺

2.1 供应商、物料、信息记录的设置要点

寄售业务不是你把PO类型改成寄售就能跑的,主数据是最容易被忽略的坑。

先看供应商主数据。供应商的采购视图里有个“寄售”相关标识,具体在供应商主数据-采购数据-“寄售供应商”勾选位置。这里的含义是:这家供应商是否允许做寄售采购。不勾的话,你后边建寄售PO或收货时,系统会提示供应商不允许寄售业务。

再看物料主数据。物料本身不需要特殊勾选,但要注意物料类型、批次管理和评估类设置。我是强烈建议寄售物料开启批次管理或者至少用“供应商批次/入库日期”,否则一旦发生产品追溯问题,追供应商批次很难,尤其是在电子、汽配这些行业,追溯要求是合规底线。

这里提醒一句,很多项目在做寄售方案时,没有把序列号管理考虑进来。高价值寄售物料如果需要单件追溯,SAP里可以通过序列号参数文件控制,但是配置复杂、对业务流程要求高,不建议一上来就上,先把数量账跑准,再考虑序列号。

信息记录是关键中的关键。寄售采购订单的价格,来自信息记录里的“PB00条件类型”。没有维护PB00,下寄售PO时价格带不出来,后边MRKO结算也没有金额依据。维护信息记录时,记得把“寄售”勾选上,同时检查有效期、采购组织、工厂是否匹配。很多顾问排查“MRKO里没有数据”的问题,最后发现是信息记录漏了或过期了。

2.2 后台配置需要关注的核心点

寄售相关后台配置主要集中在物料管理-库存管理和实际盘点-移动类型,以及物料管理-采购-采购订单等路径。有几个配置点特别关键:

  • 移动类型501、502、411、412、413是寄售业务的标准移动类型,定义里要确保“数量更新/价值更新”设置正确。501收货到寄售库存,一般只更新数量、不更新价值;411/412消耗时延缓数量、产生价值更新,差异就在这。
  • 定价过程里确认有“PB00寄售价格”的条件类型,并且在计算方案里位置正确;同时要留意税码的设置,寄售消耗时的税额是否自动确定,跟正常采购一致。
  • OBYC科目配置里,KONV是寄售负债科目,GBB是货物移动科目,KONV配置错位会导致MRKO结算凭证报错“科目确定错误”。
  • 后台还必须配置“收货时自动创建采购订单”之类的增强选项不是必须,但寄售PO通常不做收货自动更新,因为寄售它本来就不是按入库结算的,跟普通PO的默认行为需要区分开。

如果你在项目里用了相对复杂的“寄售+质检”方案,即供应商送货后先进质检库存,检验合格后才转为可用的寄售库存,那还要涉及QM里质检库存与寄售库存之间的移动类型,比如移动类型501收货后,从质检库存转到非限制库存。这个场景在很多汽车零部件行业里很常见,配置和测试工作量都不小。

2.3 为什么我不建议随便用负库存

很多项目在寄售初期,为了省事,会打开“允许负库存”的开关。负库存确实能让流程先跑起来,但是带来的对账问题会让你后悔。

想象一下:仓库实际已经没有料了,但财务领料过账又做了一笔,库存变成负数。到了月底你打开MRKO打算结算,发现消耗数量超出了期初寄售库存加本期收货的总和。系统能算出金额,但业务对不上账,供应商对账单上的期初库存变成负数,你和采购、财务、仓库要坐在一起解释半天。

我的经验是,寄售业务上线阶段尽量不要开负库存,先保证账实相符,跑顺了再说。如果业务上确实有紧急领用等不得收货的情况,可以通过“先收货、后补PO”或者“紧急领用走411K消耗然后冲销后按正常流程走”的方式兜底,而不是直接放开负库存约束。

3. 寄售全流程实操:从下单到结算一条龙

3.1 寄售采购订单,数量按补货需求来

寄售PO和普通PO在事务码上没有区别,都是ME21N,但类型不同。寄售的采购订单类别通常是NB,或者单独定义成KB,关键看行项目里的“物料类别的物料管理视图”或“科目分配类别”。

在ME21N中,打个比方:普通PO你要填“数量+单价”,寄售PO的价格只作为参考,真正决定财务结算的不是PO价格,而是信息记录里的PB00价格。也就是说,寄售PO的必要输入是物料、数量、交货日期、供应商,而价格字段不是硬性约束。

寄售PO的数量,我的建议是按供应商补货周期里的预计消耗量来下。因为寄售订单不是一次性结算,而是整个订单挂在系统里,供应商在此订单下分批送货、分批收货,直到数量收满。你在MRKO里结算时,系统是按“消耗了多少”来计算的,跟采购订单里下多少数量没有直接关系。

实操细节:寄售PO收货后,这个PO会一直显示“未清”。你不需要像普通PO那样每个月去“收尾”,把它留在那里即可,直到数量收完、业务决定关闭,或者供应商不再持续供货。很多新顾问会纠结“为什么我的PO一直清不掉”,因为寄售PO本身就是框架性质的,不清才是正常的。

3.2 收货怎么用501,跟101的区别在这

寄售收货的系统操作还是MIGO,选择“收货采购订单”,然后填入寄售PO号。移动类型系统会默认成501,而不是普通采购的101。

501收货后的效果是:库存数量增加,库存类型显示为“寄售库存”,但系统不产生会计凭证,不产生应付暂估(GR/IR),也不评价库存价值。这句话要背下来。很多财务顾问不熟悉寄售业务,问我“501收进来的货怎么没有凭证”,答案就是:寄售物料本来就不该在收货时产生财务凭证。

如果寄售收货后需要做质检,比如物料检验合格才能上线,那通常会让501收货到“质检库存”或先收货到“非限制使用”再转到质检。如果用的是更严格的QM方案,可以定义收货时自动进入质检库存,检验完成后做使用决策,从质检库存转到非限制库存,也就是寄售可用库存。这个过程产生的质量检验库存(Q库存)在SAP中是有数量但也不产生价值,和自有物料的质检库存性质完全不同。

这里提一下用户高频遇到的问题:收货时提示“对于物料xxx在工厂xxx中没有维护检验类型”,或者“无法执行质检库存的收货”。多数原因是物料主数据的“质量检验”视图或后台检验类型没有配置好。寄售+质检的配置比纯寄售复杂,建议先跑通“纯寄售收货”再做增强。

3.3 消耗领用,411/412怎么区分

物料从寄售库存变成企业自有库存,或者直接消耗掉,这时候才产生财务结算。

日常操作中最常用的是411K和412K。411K是把寄售库存转到自由库存,面向的是“我明明还要继续用这个料,先变成我的库存,之后再慢慢消耗”的场景;412K则是直接消耗到订单/成本中心,比如生产订单直接领用。

举个例子:你从供应商那收到100个螺丝放在寄售仓库。质检合格后,生产线上要用50个,你既可以直接用412K领料到生产订单,让这50个直接进入生产成本;也可以先用411K转50个到自有库存,留作后续使用或销售,然后再正常发料。两种做法最终都会产生财务凭证,金额按信息记录里的PB00价格算。

实操时,我见过有些企业为了简化,只用一个移动类型,比如所有寄售消耗都走412K。这样做的好处是流程统一,坏处是如果中途有销售出库的需求,比如把寄售余料卖给其他工厂,直接走412K就会让库存逻辑变得混乱。所以方案设计时多花点时间和业务确认清楚,他们到底是要“边领用边结”还是“先转自有库存再正常领用”。

3.4 MRKO,月末结算的核心

寄售业务的结算事务码是MRKO,这个必须记住。MRKO看起来像是一张“对账单”:系统按供应商+物料维度,把寄售库存的消耗数量汇总,再根据信息记录里的价格生成结算清单。

MRKO的操作逻辑是:先运行“汇总”功能,系统会读取这段时间内所有寄售消耗记录,按供应商汇总出应结算的物料项目;然后勾选需要结算的项目,“过账结算”,生成一张结算凭证。最终效果是:确认一笔应付给供应商,同时减少寄售库存的负债余额。

很多顾问在MRKO中报错“凭证编号xxx年度xxx无法过账”,绝大多数是因为OBYC的KONV科目配置缺失或科目无效。KONV是寄售负债科目,一般对应资产负债表里“应付暂估-寄售”之类的科目。配置错误时,MRKO过账会直接报错,而且报错信息非常晦涩,不是直接告诉你“科目没配”,而是报“无法过账财务凭证”,这时候你第一反应应当是去查OBYC配置。

另外,MRKO结算时,系统支持部分结算。如果某家供应商只结算一部分数量,比如上旬消耗1000件,下旬消耗500件,但供应商只来对账上半个月的账,你可以只勾选对应的消耗记录来结算,不是一次性全部结算完。

3.5 退回与冲销,502和413/414你怎么用

寄售库存不是“进来就永远是你的”。质检不合格、项目取消、供应商主动召回的料,都需要退给供应商,此时移动类型502是首选。502操作后,寄售库存减少,库存退回供应商,同样不产生财务凭证(因为入库时就没有产生财务影响,退回时也不该有)。

还有一种场景是“寄售库存转自有库存后又想退回”,比如你已经在411K转成自由库存了,但发现料不对。这时候不能直接用502,因为502针对的是寄售库存。你需要先把自由库存通过413转回寄售库存(413是自有库存转寄售库存),再使用502退给供应商,或者直接走普通采购退货。

这里有个小细节:413、414和411、412是配对使用的。413是把自由库存转成寄售库存,414是把寄售库存转成自由库存。如果做反了,比如在寄售库存不足的时候强行执行413,系统会提示库存不足或移动类型不允许负库存。遇到这种报错,先检查当前库存数量,再看你选的移动类型方向对不对。

4. 定价、科目与结算,财务顾问必须看懂的底层逻辑

4.1 PB00价格条件,寄售结算的定价锚点

信息记录里的PB00价格就是寄售结算的唯一价格依据,无论采购订单上写多少钱,到了MRKO结算,系统只认信息记录里的有效价格。这是寄售定价和普通采购定价最大的区别。

项目中有个大坑就在这里:价格变更后没有及时更新信息记录。比如供应商8月1号价格从10元涨到11元,但信息记录一直没维护,到了月末MRKO结算,系统还是按10元算,供应商对账单上却是11元,差异只能手工调。寄售业务上线后,采购和财务必须约定一个“价格变更维护流程”:供应商调价通知发出后,信息记录要在几个工作日内更新,并留下变更记录备查。

信息记录的价格有效性也很重要。如果寄售物料维护了“期间价格有效”,那在不同月份会对应不同价格,MRKO结算时系统会自动按消耗日期选价格,这对分月对账非常友好。

4.2 消耗时产生的会计凭证,钱从哪来、到哪去

寄售库存本身在SAP里是一个“数量+金额”的特殊账。库存价值录入在寄售供应商/特殊库存类别O的科目上,既不是纯粹的自由库存资产,也不是纯粹的应付账款。它更像一个“备查账”:数量在MM里管理,价值在FI里通过KONV科目记录。

当你用412K把寄售物料消耗到成本中心时,系统生成的会计凭证通常是:

  • 借:成本中心费用科目/生产成本科目
  • 贷:寄售负债/应付暂估科目(KONV)

当你用411K把寄售物料转到自有库存时,凭证是:

  • 借:自有库存科目(BSX)
  • 贷:寄售负债/应付暂估科目(KONV)

所以你看,寄售消耗实际上自带一笔“应付确认”,但又不是发票校验那种应付。所以要提醒财务顾问:寄售的应付是系统自动产生的,这批应付和发票校验产生的应付在清账逻辑上是分开的。

4.3 MRKO结算时的会计凭证与付款

MRKO结算后,系统会生成一张物料管理结算凭证,同时在FI生成对应的应付。它的实质是:把之前消耗时挂在“寄售负债”科目的余额,转成正式的应付供应商账款。过账后,如果企业使用SAP的标准付款功能,可以在F-44等事务里找到这笔应付并安排付款。

供应商对账时,如果是寄售业务,每月应该导出一份“寄售消耗明细表”,按供应商+物料+消耗日期+数量+金额列清楚,发给供应商作为对账依据。SAP里可以通过MB51(物料凭证清单)或者MRKO的清单功能自动导出,不要一张张翻物料凭证。

4.4 平行分类账、多折旧范围等话题,寄售有没有影响

有一些集团客户做了平行分类账、多折旧范围、多账套等配置。寄售业务本身在物料管理层面没有特别大的冲突,因为寄售库存不涉及固定资产折旧。但是如果企业启用了平行分类账(如IAS/PRAG)并且要求库存科目按分类账拆分,寄售负债类的科目也要在OB52/OBC4或相应总账配置中纳入各账套的评估范围。

我遇到过的真实项目里,寄售结算凭证因“评估组”未定义、或者评估范围未分配给公司代码而报错的案例,比想象中多。这类问题排查起来也很费劲,因为报错消息往往指向“科目xxx无效”,实际上问题在评估范围或评估类配置。遇到这类报错,优先检查OBYC的评估范围、评估类、科目三者的组合有没有在每个公司代码/工厂下完整配置。

5. 常见问题排查与顾问实战心得

5.1 收货报错“库存不足”或“移动类型不允许”,先看这几点

寄售收货时最常看到的报错有两类:

第一类是“对于移动类型501不允许工厂xxx”。这类多半是后台移动类型在工厂或库存地点层面被限制了。去OMJJ(移动类型允许的库存类型/特殊库存)里查一下501是否允许该库存类型。

第二类是“数量只能以XXXX为单位”或“库存不足以过账”。如果是寄售收货,很多情况下是物料启用了批次分割或者存储位置启用了动态库存优化,导致系统认为该存储位置无法接收。需要先确认物料主数据里的“存储位置”视图是否维护了对应库存地点;如果启用了仓储管理(WM),还要检查WM层的存储类型和转储需求。

还有一个高频坑:收货时明明选的是501,结果系统提示“移动类型501不能用于采购订单收货”。这种情况通常是你用了“采购订单的收货-针对采购订单”的收货方式,但PO本身不是寄售PO,而是普通PO,或者PO里的特殊库存类别O没有正确设置。查一下PO类别和质量等级字段。

5.2 MRKO清单为空,没有可结算项目怎么办

MRKO跑完清单发现一行数据都没有,这是寄售顾问遇到最多的问题之一。不要慌,按下面的顺序排查:

  1. 查信息记录是否存在有效的PB00价格,如果没有价格,结算不了。
  2. 查这段时间内是否有过411K/412K的消耗记录,如果没有消耗,当然没有可结算项目。
  3. 查消耗记录里是否用错移动类型。如果用的是101收货后直接发料(正常采购流程),那不是寄售消耗,不会出现在MRKO里。
  4. 查是否已经在之前跑过MRKO结算,消耗记录已经结算完了,清单自然为空。
  5. 检查供应商主数据、物料主数据里的工厂、采购组织是否和消耗记录的维度一致,信息不一致会导致汇总不到数据。

还有一点,MRKO的清单是按供应商结算的,如果你交叉查询时选了错误供应商,也会查不到。我用MB51按移动类型411K/412K先过滤出这段时间的消耗物料凭证,再反查供应商和物料,这样排查效率高很多。

5.3 MRKO结算报错“无法过账财务凭证”,优先查OBYC

前边提过,这个报错十次里有八次是OBYC配错。具体来说:

在OBYC里,事务码KONV对应的“寄售负债”科目必须配置;同样的,BSX、GBB也要正常。寄售的消耗结转,用的科目是GBB移动类型对应的对方科目;结算时用的是条件表里的KONV。如果你已经查了OBYC仍找不到原因,再看是不是总账科目主数据里“允许过账”未勾选,或者公司代码视图没维护。

再补充一个隐藏很深的问题:有的集团用多账套且启用了平行评估,OBYC里的科目配置是按评估范围+评估分组代码维护的,不同评估范围可能用不同科目。当你改了公司代码下的会计科目变式后,寄售科目没有同步维护,MRKO就会报错。这种问题在单体系统里很少出现,但在集团项目里很常见。

5.4 寄售物料盘点怎么处理

寄售库存的物权属于供应商,不能按自有库存的逻辑去盘点。标准做法是:实物盘点时,寄售库存单独记录数量,单独做盘点和调整,不用和自由库存混合。

盘点差异的处理上,如果寄售库存盘亏了,等价于企业消耗了但没有结算数量的货。这个差额要尽快在MM里做盘亏过账,并同步通知采购部门和供应商对账。库存盘盈则相反,盘盈寄售库存意味着你多用了供应商货但库存记录没有体现,或者返库数据没有录入系统。

我这里强烈建议上线寄售业务后,至少每季度做一次专门的寄售库存盘点,并且出一个独立的“寄售库存盘点差异报告”。因为寄售不产生应付,库存金额留在表外,业务部门很容易忽视它的准确性,等年底供应商来对账,差异积攒一年,谁都解释不清。

5.5 寄售库存被锁住、无法过账的另类原因

有时候系统报错不是配置问题,而是数据锁。SAP中寄售库存作为特殊库存,在处理时涉及两张逻辑表:寄售库存数据存储于LBOX/LBRO等表(具体看系统版本),这些表里有每笔寄售库存的“批次/入库记录”。如果同一时间有两个会话分别在做收款和退货,可能出现“行项目被锁定”的提示。

遇到这种问题,先在工作进程里查看数据库锁(事务码SM12),把锁掉的记录释放,然后再重试。如果是批量MRKO结算时锁冲突,可以分批处理,比如按供应商或物料类别拆成多个结算批次,降低锁冲突概率。

5.6 顾问上线前最容易被忽略的几件事

我从寄售项目的实战里拉一个“上线前检查清单”,每一条都是踩过坑换来的:

  • 主数据清理:供应商主数据、物料主数据、信息记录三者的组合要在上线前批量检查,确保每个寄售物料都有有效PB00价格
  • 权限设计:MRKO在SAP里是敏感事务码,能查看和能过账的权限要分开,避免操作员误操作大量结算
  • 期初数据导入:如果上线前供应商已经有寄售库存放在仓库,必须在期初导入时用“期初寄售库存”逻辑处理,不能简单加载到自由库存再转,否则科目的期初余额是乱的
  • 单据打印模板:寄售收货单、寄售退货单在print control上有特殊字段,比如“此单据不代表所有权转移”,需要和开发顾问一起调整表单
  • 对账流程演练:上线后第一次MRKO结算前,安排一次完整演练,财务、采购、仓库三个部门一起对一遍供应商对账单和MRKO清单

5.7 最后分享一个我常用的检查小技巧

寄售业务跑一段时间后,想快速判断账有没有问题,我通常会执行一个超简单的对标流程:

先看MB5L或者MBLB,调出寄售库存的期末金额,和供应商自己出的对账单核对期初期末;然后看MRKO的历史结算记录,确认每一期的结算凭证数量、金额和当月消耗是否对得上;最后随机抽一张领料单(比如某张MIGO 412K的凭证),反查它的会计凭证,看科目、金额是否按预期走了。

如果这三步都能对上,说明寄售流程整体是健康的。只要中间任何一个环节对不上,顺着这条链查下去,基本都能揪出是主数据问题还是操作问题。

寄售业务听起来简单,实际跑起来牵涉MM、FI、QM、WM多个模块,很多问题在单元测试时根本不会暴露,只有月结、对账、审计时才会冒出来。把这套逻辑彻底理解了,你在任何寄售项目里都能从容应对。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询