☰
SAP公司间业务全解析:第三方销售、跨公司销售与STO配置要点
2026/10/15 10:53:55 网站建设 项目流程

简介:一份面向SAP SD/MM/PP/FI模块顾问及集团型企业IT实施人员的公司间业务案例与配置详解PDF,系统梳理集团内部六种常见交易模式:第三方销售、跨公司销售、公司间转储、跨公司转储(STO)、转包和跨公司采购。每种模式均结合业务场景,给出从销售订单创建、采购申请生成、采购订单收货、发票校验到客户开票的参考步骤,系统自动更新订单计划行日期,并说明IDoc如何自动触发公司间发票校验与收货过账。同时区分一步法(移动类型301)与两步法(303/305)库存调拨,讲解透过MB5T查看在途库存、标准委外与工序委外的选择、公司间清账科目OBYA以及ABT1N跨公司资产转移等配置与财务处理经验,便于顾问在项目配置和测试排错时直接查阅。PDF为单文件资源,大小20.06MB,已有12991人学习下载,内容聚焦且覆盖完整,是理解SAP集团内部交易全貌的实用参考。

1. 六种公司间业务,一次说透:从“皮包公司”到集团协同

SAP公司间业务是集团型企业绕不开的账务难题,尤其当销售公司、生产公司、物流公司分属不同公司代码时,一笔订单要拆成两张甚至三张发票,应收、应付、库存、成本还得分公司挂账。这篇笔记把六种典型场景——第三方销售、跨公司销售、公司间转储、跨公司转储(STO)、转包、跨公司采购——的完整业务链路、移动类型和后台配置点拆开讲,重点落在跨公司销售、STO和IDoc自动触发发票校验与收货的处理细节。适合正在实施集团合并报表、供应链穿透或公司间结算的SD/MM/FICO顾问,也适合被业务方问“为什么两张发票金额不一样”的关键用户。

2. 第三方销售与跨公司销售:两条链路,一张IDoc

2.1 第三方销售:公司只接单和结算,物流交给供应商

第三方销售(Third-Party Order Processing)是理解公司间业务最简单的一个入口。公司接客户订单,自己不做任何物流动作,直接让供应商把货发给客户,相当于一个“皮包公司”角色,只赚差价。SAP里的标准链路是:VA01创建对客户的销售订单,系统自动生成对供应商的采购申请,再转成采购订单;供应商发货后,公司用MIGO做收货,这一步同时等同于向客户发货确认,系统会自动更新销售订单计划行的日期为采购订单到货日;随后MIRO做发票校验,产生应付账款,并按采购金额计入销售成本;最后公司VF01对客户开票,生成应收账款、销项税和收入。

流程中有一个容易被忽略的点:MIGO收货并不做实物入库,而是直接进入“收货即交付”的流程。我在项目里见过有同事把第三方销售的收货做成普通库存收货,导致库存虚增、销售成本多挂。正确做法是采购订单行项目类别保持“第三方”相关配置,收货后库存不会增加,系统自动更新计划行。最终财务凭证结构是:

步骤事务代码财务结果
销售订单创建VA01无会计凭证
采购申请生成MD04/MB52 检查无会计凭证
采购订单收货MIGO无传统库存增加,计划行日期更新
发票校验MIRO应付供应商,同时记销售成本
对客户开票VF01应收客户,收入、销项税

这里要注意采购订单的收货是否允许“无交货单收货”,因为第三方销售场景供应商直接对客户发货,没有装运点、没有交货单,MIGO界面的移动类型要选能配合该业务类型的设置,否则验收入库会推到收发工厂。

2.2 跨公司销售(ICS):销售公司开票给客户,生产公司开公司间发票

跨公司销售(Inter-Company Sales,ICS)是集团内部最典型的“产销分离”模式:销售公司负责接单、和客户结算,生产公司负责生产、发货,两者分属不同公司代码。整条链路从销售公司的VA01开始,销售订单行项目里的交货工厂必须指定为生产公司的工厂,装运点也会自动带成生产公司的装运点。发货环节由销售公司在自己的销售区域下创建交货单VL01N,到VL02N做拣配和发货过账,这一步产生的会计凭证是落在生产公司代码下的。

ICS和普通销售最大的区别在于开票要开两张:销售公司VF01对客户开F2标准发票,生成应收账款、收入、销项税;随后生产公司VF01对销售公司开IV公司间发票,生成对销售公司的应收,同时销售公司会收到一张对应应付。这个应付不是手工做账出来的,而是靠IDoc技术自动触发:生产公司开IV发票时,系统通过输出类型把开票数据以IDoc形式发送到销售公司,销售公司端自动执行FB01过账,生成对生产公司的应付、进项税和销售成本。所以整个ICS业务里没有采购订单,却有一笔从采购端自动滚出来的应付,本质是IDoc把开票信息转换成了类似发票校验的过账动作。具体操作顺序如下:

  1. VA01创建销售订单,订单类型可以是自定义的ZMIV,行项目工厂选生产工厂。
  2. VL01N按销售订单创建交货单,装运点属于生产工厂,交货单在销售公司销售区域下。
  3. VL02N拣配和发货过账,系统产生生产公司代码下的库存减少和销售成本凭证。
  4. VF01输入交货单,先开F2标准发票,开票对象是集团外客户;如果物料有滚算标准成本并已发布,会计凭证能顺利过账。
  5. VF01再输入同一张交货单,系统自动识别跨公司业务,生成IV公司间发票,开票客户是预先配置好的内部客户编号(对应销售公司的公司代码)。
  6. 生产公司对销售公司的应收生成,同时IDoc自动在销售公司端生成应付。

在销售订单VA03的后续单据流里,可以看到标准发票和公司间发票两张凭证并列。如果物料主数据没滚算成本或没发布价格,发货和开票过账会报错,这一点在全流程测试前必须检查。

2.3 ICS定价配置:PI01/PI02与IV发票类型

ICS业务里最让新手困惑的就是定价过程。公司间发票IV的计算价格参考IV01或IV02,这两个条件类型分别对应PI01(基于数量的公司间价格)和PI02(基于百分比的公司间价格)。标准做法是在销售订单定价过程中维护PI01或PI02,只要订单的交货工厂是跨公司的,PI01或PI02就会自动带出来。我在测试环境里最常用的配置是PI02,按净价值的百分比计算公司间结算价,比如98%,这样销售公司留2个点的毛利。配置路径分两块:

  1. V/08维护销售订单定价过程,把PI02需求选上“√”,同时注意TSPP条件类型需要设置成“√”,它决定公司间价格是否参与成本及收入匹配。
  2. OVKK维护供方(生产公司)销售组织的定价过程,这里生产公司的“DoPr”要维护成I,Cupp按客户主数据定价过程决定。接单公司对客户的定价过程则看接单公司的销售组织,DoPr为A。

还有一个实战经验:ICS开票默认优先开对客户的F2发票,再开公司间IV发票,这是系统标准逻辑。如果业务要求先开公司间发票,那么VF04开票清单里需要手动将默认发票类型改为IV,或者VF01里手动选择IV开票类型。另外,销售订单行项目类别的开票相关字段设为K时,对客户开票支持部分开票,但公司间开票不支持行项目拆分开票,也就是说IV发票只能整单开,想拆两期开公司间发票是走不通的,这点在月度结算时特别容易引发业务投诉。

3. 公司间转储与跨公司转储:STO的移动类型与一步法配置

3.1 公司间转储(同一公司代码):301一步法 vs 303/305两步法

同一个公司代码下的两个工厂调拨物料,属于公司间转储,不涉及跨公司应收应付,重点在于选对移动类型。一步法用301,发货工厂过账的同时收货工厂已经入库,系统同时产生发货工厂的库存减少和收货工厂的库存增加,财务凭证只在一个公司代码下体现,适合距离近、当天能到的调拨。两步法用303(发货过账到在途)和305(在途收货),303过账后物料处于“在途”状态,305收货后才转入收货工厂库存,期间可以用MB5T查看在途库存,适合跨地区、运输周期长的调拨。

选择依据我一般看三件事:工厂间的物理距离、是否需要在途库存的可见性、月末关账时在途物料归属哪个工厂的盘点库存。两步法的好处是财务上能挂“在途物资”科目,审计时能说清楚货在哪个环节;一步法凭证简洁,但货物丢失或延期时很难定位责任。305移动类型收货时,如果收货工厂和发货工厂的估值方式不一致,会产生差异科目,这个差异通常会进“采购差异”或“转储差异”科目,需要提前在OBYC里配好。

3.2 跨公司转储(STO):不同公司代码下的调拨与财务结算

跨公司转储(Stock Transport Order,STO)是不同公司代码间工厂调拨的正式通道,流程上等于“工厂A向工厂B下一笔采购订单,然后工厂B销售发货”。标准步骤是:公司代码1向公司代码2创建STO采购订单,公司代码2根据采购订单创建交货单并做VL02N发货过账,公司代码1做MIGO收货,随后公司代码2对公司代码1开销售发票,产生对公司的应收,公司代码1做发票校验,产生应付。

这里有个配置开关:STO可以设置为发货过账时收货公司同步自动收货,这就是“一步法STO”,发货过账自动产生收货过账凭证,省去MIGO手工操作。另一个配置点是公司代码2开具公司间销售发票时,通过IDoc自动触发公司代码1的应付。开票时SD出具发票类型用IV,设定输出类型,通过IDoc将发票信息传到公司代码1,系统自动生成应付、进项税和采购成本的会计凭证。这和ICS里的处理逻辑一样,只是方向相反。

3.3 STO一步法与IDoc自动收货:配置边界

STO一步法配置在后台有固定开关位置。发货方发货过账后,系统按配置自动在收货方产生收货凭证。这个配置需要注意边界:如果两个公司代码使用同一个SAP系统,自动收货可以即时完成;如果是分布式架构,还要考虑RFC连接和ALE配置是否就绪。我在配置测试时见过一步法自动收货配好后,发货过账却提示“无法确定自动收货的移动类型”,原因是后台把自动收货的移动类型配成了301,而跨公司STO必须用101收自己的采购订单,配置里要填101而不是301。

IDoc自动触发应付也一样,核心是输出类型RD04。只要IV发票开出,系统通过RD04把开票数据打包发给接单方,接单方通过配置好的流程自动过账。如果IDoc没有触发或者过账失败,应付不会出现,财务发现两边对不上账才开始排查。这种情况下先去WE10查IDoc状态,再查WE20伙伴参数。

4. 转包与跨公司采购:从委外加工到“客户库存”的闭环

4.1 标准委外(转包):O库存、加工费与产成品成本

委外加工分标准委外和工序委外。工序委外直接由生产订单触发一个F类采购订单,只采购一笔加工费到生产订单,不需要对发出的物料做单独物流管理;标准委外则要对发出的材料做库存跟踪,适用于委外周期长、加工步骤多、材料价值高的场景。判断标准很简单:要不要管发出去的材料,要管就上标准委外。

标准委外的SAP流程是:ME21N向加工商下采购订单,行项目类别用L(委外),价格为加工费,同时在采购订单组件明细里指定需要发给加工商的原材料组件;随后向加工商发货,材料从自有库存变成O库存(委外库存),这个发货可以有或没有交货单;加工完成后MIGO收货,系统自动消耗原材料、按采购订单价格计算加工费、更新产成品库存,产成品成本 = 消耗的原材料成本 + 加工费,差异走价差科目;最后MIRO发票校验,产生对加工商的应付。

成本项金额来源差异处理
原材料成本按原材料移动平均价实时计算差异入价差科目
加工费采购订单价格无差异则完全匹配
产成品成本原材料 + 加工费如有差异自动进OBYC配置的价差科目

需要重点检查的是采购订单组件里的“物料数量”和“可用数量”关系。如果材料配额不够,发货时会出现短缺,系统不允许发超。委外发料的移动类型是541,收货时系统按组件明细自动反冲消耗材料,如果在BOM里维护了组件消耗定额,收货时会按实际完工数量计算材料消耗。另一个常见问题是委外O库存的价值显示,如果在MM03会计视图没勾选“基于数量的非限制使用的库存”,O库存可能无法正常评估,导致收货后成本计算失败。

4.2 跨公司采购:销售订单穿透生产公司,MRP4视图配置

跨公司采购是集团内销售公司与生产公司之间最完整的“订单穿透”业务:外部客户向销售公司下单,销售公司不生产,通过STO向生产公司传递需求,生产公司生产完工后直接发货给销售公司,销售公司再发货给客户并开票。这个链条的关键是MRP的穿透逻辑。第一步,销售公司VA01创建销售订单,MRP跑出针对生产公司的采购申请,转成跨公司采购订单;第二步,生产公司跑MRP时,能看到来自销售公司的独立需求,生成计划订单再转生产订单;这里生产物料的MRP4视图“独立/集中”必须设置为1,否则生产订单无法追溯到原始销售订单号,后续出现缺料问题时两条链路会变成两张皮;第三步,生产订单完工入库,收货后库存状态是“客户库存”,即面向销售公司的库存;第四步,VL10B创建对销售公司的交货单并发货,发货后库存变为销售公司的在途库存,用MB5T可以查看;第五步,销售公司MIGO收货、发票校验,生产公司开出销售发票,再叠加IDoc自动产生销售公司的应付;最后销售公司发货给集团外客户并开票。

整个流程里最容易翻车的是MRP4视图的设置。在物料主数据MRP4视图里,有一个“独立/集中”字段,如果填1,则需求在工厂间传递时,系统会把销售公司的独立需求汇总到生产公司;如果不填,两个公司各自跑MRP,需求无法穿透。配置错时,生产公司永远看不到来自销售公司的需求,采购申请也不会出现在MD04里。跨公司采购还有一个特点:销售公司的销售订单号码会保留在生产订单里,业务追问“这批货对应哪个客户订单”时,直接在生产订单抬头文本或需求追溯里能查到。

5. 公司间结算避坑指南:OBYA、ABT1N与内部订单的边界

5.1 OBYA公司间清账科目:40/50与01/31的选择

公司间业务涉及应收应付的自动清账,必须先配置清账科目。OBYA配置界面里有两组选择:如果公司间仅做内部交易,不挂客户、供应商,那么配40/50对应的总账科目作为公司间清账科目即可;如果公司间交易需要挂客户、供应商,比如通过发货单产生公司间交易,那么要配01/31,并把客户、供应商设置为清账科目。OBYA相关的配置表是T001U,配置完成后清账逻辑才有效。

这里有一个严格的前提:OBY6里公司代码参数中的“公司”字段必须全部为空,或者全部有值,不允许一个公司代码有值、另一个没有值。我在一个测试系统里遇到过两个公司代码都是从模板复制来的,一个带了公司字段,另一个没带,结果OBYA保存时报错,查了半天,最后把其中一个公司字段补齐才解决。还有一点要注意,如果配了01/31清账科目,那么开票时系统会走标准的应收/应付科目加清账科目联动,此时客户和供应商主数据中必须维护贸易伙伴,否则过账时会因“公司间交易伙伴丢失”而中断。

5.2 资产跨公司转移(ABT1N)与统计型内部订单

公司间资产调拨,如果是合并场景而不是买卖场景,可以用ABT1N批量跨公司转移资产。这个操作有几个容易踩的配置点:第一,需要配置公司(Company,在一个更高层级的整合单元),并把公司代码分配给公司,SAP才把两个公司视为联营关系,ABT1N生成的凭证格式才正确;第二,配置转移变式,转移变式里设定转移方法和使用的事务类型,还可以针对变式设置哪些字段能复制到目标公司的新资产号中;第三,设置资本化日期可修改,这样资本化日期才能从原始资产复制到目标资产;第四,AO90配置“从关联公司购置”对应的科目;第五,如果固定资产清理科目设置为资产负债类科目,需要把消息号AC305/306改成警告,否则非资产负债表科目就会报错。

实际操作中如果走LSMW录屏批量执行,SM35跑批时会看到“LEAVE TO TRANSACTION 在批处理中不能使用”的错误提示,这是正常的,不影响结果,因为ABT1N在正常操作保存后会弹出一个凭证显示对话框,而批处理模式下无法弹出对话框,系统就报了这条提示。内部订单这边,统计型内部订单可以跨公司使用,创建时不用输入公司代码,比如一个项目在A公司、B公司都发生费用,两公司各自记账到自己的成本中心,同时都记到同一个统计型内部订单,就能统计出项目总费用;实际型内部订单不可以跨公司代码,创建时必须有公司代码。模型订单(Model Order)则用来给内部订单创建提供默认值,可以把模型订单分配给内部订单。

5.3 常见问题:IDoc没触发、凭证公司代码不对、LSMW报错

这里把我在项目里遇到频率最高的五个问题记录下来,每个都按现象、原因、解决三步写,各位照着排查能省不少时间。

现象一:公司间发票已开出,但接单公司应付没自动产生。

原因:IV发票的输出类型RD04没配置,或IDoc伙伴参数文件/RFC目标没配对,导致开票信息没有发出去。

解决:检查WE20里客户主数据对应伙伴参数文件的输出类型是否激活,配置RD04输出类型为“EDI”或“邮件”,确认RFC目标可达后,重新触发开票输出。

现象二:跨公司销售开票时提示VF009。

原因:内部客户的供方(生产公司)销售组织没有扩充,也就是按工厂分配组织单位的OVV9配置里,没有把生产公司的工厂正确分配给接单公司的销售组织。

解决:SPRO→销售与分销→出具发票→公司间出具发票→按工厂分配组织单位,把生产工厂和销售组织的对应关系补全。

现象三:ABT1N用LSMW录屏导入时,SM35报“LEAVE TO TRANSACTION 在批处理中不能使用”。

原因:ABT1N正常保存后会弹出一个凭证信息对话框,批处理无法显示该对话框。

解决:这个报错可以忽略,不会影响导入结果,但建议在录屏时把“保存后弹出提示”的对话框跳过,或者直接用BAPI方式导入。

现象四:OBYA配置保存时报“公司字段不一致”。

原因:OBY6里两个公司代码的参数,一个维护了公司字段,另一个没维护。

解决:到OBY6检查公司代码参数的“公司”字段,要么两个都有值且指向同一公司,要么全部清空。

现象五:ICS模式下,对客户发票和公司间发票跨月,收入成本不匹配。

原因:默认开票顺序是先开客户发票再开公司间发票,业务人员月度截账时只开了一张,另一张留到下月。

解决:关账检查清单里加一条——检查所有ICS销售订单是否两张发票都开完,或者调整开票顺序为公司间发票在前,确保同月成本收入匹配。

6. 上线前验证与我的三个习惯:IDoc链路、开票顺序、批处理检查

ICS和STO这类业务,配置点多、链路长,上线前最好用一个测试订单完整跑一遍,我习惯检查三个地方。第一,验证IDoc是否真正触发了应收应付。FBL1N查询接单公司对内部供应商的应付明细,点开凭证,如果看到凭证来源是IDoc,事务代码是FB01,那就是成功;再到WE10查IDoc历史记录,确认消息状态为已处理。第二,验证开票顺序是否符合业务预期。如果业务要求先开公司间发票,必须在VF04里把默认发票类型设成IV,否则开出去的F2发票对方客户还没付钱,内部结算已经挂了一堆应收。第三,检查MRP4视图的独立/集中字段,确认跨公司采购需求能穿到生产公司,用MD04看需求追溯,能看到原始销售订单号才算闭环。

配置这些东西没有太多玄学,真正容易翻车的是“配置改了一处,忘了联动另一处”。比如OBYA配好了清账科目,但客户主数据没维护贸易伙伴,开票时照样报错;IV发票的IDoc输出配置好了,但伙伴参数文件没激活,应付照样不生成。从那以后我每次做公司间业务测试,都强制走一遍FBL1N查应付、WE10查IDoc的流程,确认系统自动生成的凭证不是一纸空文。配置这种东西,能信系统自动的,就不要相信人脑记忆。希望帮到你。

本文还有配套的精品资源,点击获取

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

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

立即咨询