61. SAP S/4HANA FICO:销售税码自动确定与 SD、MM、FI 集成

61. SAP S/4HANA FICO:销售税码自动确定与 SD、MM、FI 集成
本课从一张已经完成开票的销售单据出发,追踪税码如何由销售条件技术确定、如何进入开票凭证与会计凭证;随后把同一问题放到采购订单、收货、MIRO 发票校验和总账主数据中比较。真正要掌握的不是某个训练系统里的税码,而是这条因果链:主数据与业务字段 → 条件表 → 访问顺序 → 条件记录 → 税码 → 税率与税科目 → 会计凭证。
课程环境是欧洲训练系统。文中的
AS、AD、国家代码、税率和总账账号都只是该系统的示例数据,不能直接作为印度 GST 或生产系统配置依据。
一、本课完成了什么
| 范围 | 本课实际结果 |
|---|---|
| 销售税码追踪 | 已从销售订单条件、开票项目、条件分析追踪到会计凭证税务明细 |
| 条件记录维护 | 已显示并更改 MWST 条件记录,把示例税码从 AS 改为 AD |
| 开票取消 | 第一次因期间/CO 集成问题失败;换用另一张发票后成功生成取消开票与冲销会计凭证 |
| 重新开票验证 | 未完成。VF01 因项目类别和开票相关性设置未能完成新税码场景 |
| 采购端比较 | 已查看采购订单税码、采购条件分析、NAVS 条件记录和 MIRO 输入逻辑 |
| 收货与发票校验 | 已准备 MIGO 101 部分收货,但没有过账,也没有完成后续 MIRO 验证 |
| 总账税务控制 | 已查看总账“税务类别”“允许无税过账”,并用 SKB1、SKA1 筛选候选科目 |
| 留到下一课 | FB70、NVB、实际补充过账和 FBL3N 总账行项目报表 |
二、先从业务结果倒查税码来源
课程先在 VF03 显示一张现有开票凭证。项目列表只告诉我们数量、净值和税额,真正的税码来源需要继续进入项目明细、前置销售订单以及条件分析。

从销售订单项目的“条件”页可以看到基础价格、舍入、运费、折扣和税务条件。这里必须先区分两个概念:
- 销售定价过程负责组织价格、折扣、运费、税等条件类型及计算顺序。
- FI 税务过程与税码负责法定税率、进项/销项属性、税务科目等财务含义。
二者通过税务条件和后续会计接口连接,但不是同一套配置。

三、条件技术如何找到税码
SAP 官方把条件技术描述为:条件记录保存在条件表中,条件类型通过访问顺序按指定顺序搜索这些记录;定价过程或采购计算方案再决定各条件类型如何参与计算。也就是说,系统不是“猜”税码,而是在当前业务字段下寻找一条有效记录。
本训练系统的 MWST 条件记录使用了出发国、目的国、客户税分类、物料税分类等字段。这里的字段组合是系统配置结果,不是所有项目都固定相同。

可以把本课的销售端路径写成:
销售订单项目
├─ 出发国 / 目的国
├─ 客户税分类(CTC)
└─ 物料税分类(MTC)
↓
MWST 条件类型的访问顺序
↓
按条件表顺序寻找有效条件记录
↓
取得税码 AS
↓
开票项目 → 会计凭证 → 税务明细
1. 在开票项目中确认条件结果
开票抬头主要展示汇总值,税务判断应落到项目层。本例的开票项目条件显示 MWST、税码 AS 和科目码 MWS;AS 在训练系统中是 0% 销项税码,所以税额为零。

2. 用条件分析确认“为什么命中”
不要只看最终税率。条件分析会显示每次访问是否满足要求、哪些访问未命中、最终采用了哪一条条件记录。排查自动税码错误时,应先核对:
- 条件记录是否在定价日期有效;
- 单据中的关键字段是否与记录完全一致;
- 访问顺序是否先命中了更具体或更高优先级的记录;
- 条件是否因要求、排除或删除标识而失效。

3. 核对会计凭证与税务明细
从开票凭证进入会计凭证后,相关行项目仍显示 AS,说明销售端确定结果已经传递到 FI。

税务明细进一步显示税务总账、计税基础、税码、税率和税额。本例计税基础为 28,655.64 欧元,税率为 0%,所以税额为零。“没有税额行”不等于没有税码或没有税务确定过程。

四、客户税分类与物料税分类从哪里来
1. 物料税分类
物料税分类来自物料主数据的销售视图,并按国家或税类别维护。画面中的 Full tax 是分类含义,不是最终税率;最终仍由匹配到的税码及其税率决定。

2. 客户税分类
客户税分类来自业务伙伴的客户销售角色和具体销售区域数据。检查时不能只打开 BP 就结束,还要确认销售组织、分销渠道、产品组和角色范围正确。

因此,看到错误税码时,不要立刻修改税率。先按以下顺序定位:
| 检查层 | 重点 |
|---|---|
| 单据数据 | 出发国、目的国、销售区域、定价日期是否正确 |
| 主数据 | 客户税分类、物料税分类是否在正确组织层维护 |
| 条件技术 | 条件表、访问顺序、条件类型是否符合设计 |
| 条件记录 | 关键组合、有效期、税码是否正确 |
| FI 税务 | 税码税率、税务过程、税科目确定是否正确 |
五、销售条件记录:VK11、VK12、VK13
经典 SAP GUI 中常用事务码如下:
| 事务码 | 用途 |
|---|---|
VK11 | 创建销售条件记录 |
VK12 | 更改销售条件记录 |
VK13 | 显示销售条件记录 |
课程先显示 MWST 条件记录,确认训练系统里当前组合对应 AS。

随后在 VK12 中把示例记录改成 AD。画面只能证明条件记录已被更改,不能证明后续订单、开票和会计凭证已经采用新税码。

课程随后尝试用 VF01 重新开票,但因项目类别/开票相关性问题没有完成。因此正确的验收结论是:
- 条件记录更改:已完成;
- 新销售单据重新定价:未完成;
- 新开票凭证取得
AD:未验证; - 新会计凭证按 10% 过账:未验证。
配置提醒:修改条件记录会影响其有效期和适用关键组合内的后续定价。生产系统必须先评估影响范围,并通过完整业务链测试,不能只在
VK12保存后就宣布完成。
六、VF11 取消开票与财务冲销
VF11 用于取消开票凭证。第一次尝试时,系统因过账期间关闭无法生成会计凭证;调整期间后又遇到 CO 集成业务事务被锁定。这说明取消开票不是只检查 SD,还可能受 FI 期间、凭证类型、冲销原因和 CO 集成状态影响。

换用另一张适合测试的发票后,单据流中成功出现取消开票凭证以及对应的冲销会计凭证。

根据 SAP 官方说明,取消开票会创建一个取消凭证,抵消原开票;如果原开票已经过账到财务,会在适用时创建抵消原会计影响的凭证。它不是物理删除原单据。
七、采购端的税码确定与销售端有何不同
采购订单也使用条件技术,但采购使用计算方案和采购条件记录,不能把销售端 MWST 的记录直接理解为采购端记录。
1. 采购订单条件与税码
采购订单项目条件页展示采购价格、折扣和税务相关条件。具体条件类型会随本地化、版本和客户配置变化。

在采购订单项目“发票”页可以看到税码,以及“基于收货的发票校验”等控制字段。税码保存在采购订单项目后,MIRO 可据此建议税码,但业务人员仍必须核对供应商发票。

采购条件分析可用于确认税务条件的计算来源。

训练系统列出了多个奥地利进项税码。税码 A1、A2 等名称和税率都是该系统的配置数据,不是跨国家、跨客户都相同的标准答案。

2. 采购税码也可使用条件记录自动确定
经典采购端常见事务码是:
| 事务码 | 用途 |
|---|---|
MEK1 | 创建采购条件记录 |
MEK2 | 更改采购条件记录 |
MEK3 | 显示采购条件记录 |
课程中的训练系统使用 NAVS 并展示了若干关键组合。SAP 官方资料也说明:采购税码可以人工输入,也可以通过采购条件记录自动确定;但标准条件类型会因产品版本和本地化不同而变化,例如 SAP S/4HANA Cloud 文档使用 TTX1,部分本地化文档使用 NAVS。因此不能把本课画面中的 NAVS 当成所有系统的唯一标准。

同样需要纠正一个常见误解:课程中提到“很多公司手工输入采购税码”,这只能算讲师经验,不是 SAP 标准产品规则。项目应根据业务复杂度、主数据质量、法规和维护成本决定自动或手工方式。
八、MIRO、MIGO 与基于收货的发票校验
1. MIRO 会带出什么
在 MIRO 输入采购订单后,系统可建议供应商、项目、数量、金额和税码。仍需人工核对:凭证日期、过账日期、外部参考号、发票总额、税码、差异和余额。

2. “基于收货的发票校验”控制什么
采购订单项目勾选该字段后,发票校验会把发票项目与具体收货项目对应;预计分批收货时,这能把每次发票与相应收货数量匹配。

3. MIGO 101 部分收货
课程在 MIGO 中选择采购订单收货,系统带出采购订单项目。

项目明细显示移动类型 101,它表示采购订单收货。示例订单数量为 72,课程准备只收 1 个数量。

采购订单数据页继续显示对应采购订单和交货控制信息。

但讲师没有执行“过账”。所以只能说明预期逻辑:若 1 个数量成功收货,且项目启用基于收货的发票校验,后续 MIRO 应按已收货项目建议相应数量;本课没有产生物料凭证,也没有完成这一闭环。
九、模块职责要按配置对象划分
课程讨论中多次把 MWST 相关工作概括为 FI 工作。更准确的项目划分如下:
| 配置/数据对象 | 主要责任 | 集成要求 |
|---|---|---|
| 税务过程、税码、税率 | FI | 与法务/税务确认法规口径 |
| 税务科目确定 | FI | 与总账科目设计和过账测试一致 |
| 销售定价过程、条件类型、访问顺序 | SD | 与 FI 共同定义税码所需关键字段 |
| 客户税分类、物料税分类 | SD/主数据团队 | FI 提供税务规则,业务负责数据质量 |
| 采购计算方案、采购条件技术 | MM | 与 FI 共同定义采购税码逻辑 |
| 采购订单税码与发票校验 | MM/AP 业务 | FI 校验税务与会计结果 |
| 端到端验收 | FI + SD + MM | 从订单/采购单一直验证到会计凭证 |
职责可以因组织而调整,但不能因为税码属于 FI,就让 FI 单独承担所有 SD/MM 条件架构。
十、总账主数据如何限制税码
课程最后进入总账主数据,先从税相关总账清单中找到训练系统的进项税科目。

该进项税总账在训练系统中被定义为资产负债表科目。

在公司代码层的“控制数据”中可以看到两个关键字段:
- 税务类别(Tax Category):决定该总账是税务科目、税相关科目还是非税相关科目,并可限制允许使用的税码范围。
- 允许无税过账(Posting without tax allowed):勾选后,该税相关科目允许不输入税码;若输入税码,系统仍按税务类别检查。

常见税务类别含义可按系统字段帮助理解:
| 值 | 常见含义 |
|---|---|
- | 只允许进项税类税码 |
+ | 只允许销项税类税码 |
* | 允许所有税类 |
| 指定税码 | 只允许该具体税码 |
配置提醒:符号和具体代码应以当前系统 F1 帮助及配置为准。税科目是否启用“未清项管理”也必须由实际清账机制决定,不能仅因它是资产负债表税科目就直接开启。
十一、用 SKB1 与 SKA1 查找候选总账
讲师演示了一个实用方法:在表浏览器中对字段按 F1,进入技术信息取得字段名,再把它加入选择条件。
1. SKB1:公司代码层
SKB1 保存总账主数据的公司代码层信息,税务类别就在这一层。按公司代码和税务类别筛选,可以把两千多条记录缩小到少量候选科目。


2. SKA1:科目表层
SKA1 保存科目表层信息,例如科目类型。总账先在科目表层存在,再扩展到公司代码层,才能用于相应公司代码。

课程把表查询结果与总账主数据一起核对,用于判断候选科目是否为资产负债表科目或损益科目。

这类查询适合定位和审计,但不能代替正式配置文档。尤其不要直接在生产系统根据“看起来像费用科目”的名称做税务过账。
十二、税务类别的模拟检查
课程在供应商发票录入界面准备一笔费用行项目,先演示不输入税码的场景。

随后把总账税务类别限制为进项税,用于阻止用户误用销项税码。最后的总账主数据画面显示该费用科目只允许进项税,同时保留“允许无税过账”。

这个控制能提前拦截明显错误,但它不能替代:
- 税码本身的税率与进/销项属性;
- 税务过程和税科目确定;
- 业务单据中的税务分类;
- 条件记录有效期与关键组合;
- 端到端会计凭证核验。
十三、建议的端到端测试清单
| 步骤 | 要验证的结果 |
|---|---|
| 1. 主数据 | 客户、物料税分类在正确组织层生效 |
| 2. 销售订单 | MWST 条件命中预期记录,税码与有效期正确 |
| 3. 条件分析 | 访问顺序、失败原因和最终命中可解释 |
| 4. 开票 | 项目税码、计税基础、税率、税额正确 |
| 5. 会计凭证 | 税码传递、税务行、科目确定和金额正确 |
| 6. 取消 | 取消开票与财务抵消关系正确,期间与 CO 集成允许 |
| 7. 采购订单 | 税码来源清楚,手工/自动方式符合项目设计 |
| 8. MIGO | 收货数量、移动类型和物料凭证正确 |
| 9. MIRO | 采购订单/收货数量、税码、差异和会计凭证正确 |
| 10. 总账控制 | 税务类别与“允许无税过账”符合科目用途 |
十四、关键校正与记忆点
- 自动字幕多次把 tax code 识别成 “text code”,本文统一校正为“税码”。
MWST是本训练系统销售端的税务条件类型;MWS是画面中的科目码,二者不要混淆。- 销售条件记录使用
VK11/VK12/VK13;采购条件记录使用MEK1/MEK2/MEK3。 - 条件记录决定的是“在这组关键字段下取哪个值”,最终税率仍来自税码配置。
- 采购税码自动确定的标准条件类型会随版本和本地化变化,不能把
NAVS当成所有系统的统一答案。 VF11会创建取消凭证,并在适用时抵消财务影响,不是删除原发票。- 本课没有完成
AD新税码的重新开票,也没有过账 MIGO/MIRO;这些不能写成已验证。 - 总账“税务类别”限制允许的税码;“允许无税过账”只决定能否空税码过账,两者作用不同。
十五、课程来源与 SAP 官方核验
- 视频:
SAP FICO FOR BEGINNERS | FULL COURSE | DAY 38 - SAP Help:Condition Technique and Pricing
- SAP Help:Pricing and Conditions
- SAP Help:Tax code determination in CCS
- SAP Help:Determining Tax Code in Purchase Documents using Pricing Conditions
- SAP Help:Maintaining Condition Records in MM
- SAP Help:Goods-Receipt Based Invoice Verification
- SAP Help:Canceling Billing Documents
- SAP Help:Specifications in G/L Accounts
- SAP Help:Defining Posting Without Tax Allowed
本文只整理视频中已经展示或明确讲解的内容;未把下一课计划、未成功的重新开票、未过账的收货与发票校验写成已完成步骤。
