| Status | |
|---|---|
| Owner | |
| Stakeholders | The business stakeholders involved in making, reviewing, and endorsing this decision. Type @ to mention people by name |
The purpose of this document is to define the data conversion approach for creating Tax Condition Records in the SAP S/4HANA target system, as part of a Greenfield implementation.
In SAP ECC, sales tax condition records for pricing condition types that exist as part of the pricing procedure configuration and are stored in condition tables such as A*, KONV, and related master and transactional tables. These records are used to define tax elements such as sales tax, VAT, GST, etc., across sales documents.
In SAP S/4HANA, the structure and usage of sales condition records remain largely consistent; however, data models may be simplified, and dependencies on country of sales, receiver's country, business partners (replacing customer/vendor master records) become critical in ensuring consistency across sales functions.
This conversion aims to migrate active and relevant tax pricing condition records from existing ECC systems into S/4HANA by applying required transformation logic using Syniti as the data migration and transformation platform. The converted records will be loaded into the target S/4HANA system using standard SAP mechanisms such as IDOCs, BAPIs, or direct table loads where applicable.
This process will support the migration of condition records such as:
The data from legacy system includes:
Tax condition records relevant for sales transactions, maintained across applicable tax codes and jurisdiction codes
Tax rates for output tax determination (e.g., VAT, GST, sales tax)
Tax exemption indicators or reduced rates as per customer-specific agreements
Effective and expiration dates for tax condition records
The data from legacy system excludes:
Pricing condition records (covered in CONV-1034 Pricing Condition Records Specification)
Rebate condition records (managed via Condition Contracts setup)
Withholding tax configurations (handled separately in the Master Data Migration scope)
| Source | Scope | Source Approx No. of Records | Target System | Target Approx No. of Records |
|---|---|---|---|---|
| WP2 | Tax Condition Records | S/4HANA System | ||
| PF2 | Tax Condition Records | S/4HANA System | ||
Not Applicable
None identified. The conversion scope is limited to the migration of tax condition data records. No document attachments, images, or supporting files are included.
Summarize Legal Requirement/s, if any
Specify any special requirements or considerations that may impact the data conversion process based on specific locations, regulatory compliance or system limitations. Clearly outline any regional or localization requirements such as country-specific data formats, legal reporting obligations or industry standards that must be adhered to (e.g., localization rules for countries like China).
If the data conversion involves third-party systems or external data sources, such as Icertis, describe any additional requirements related to data mapping, transformation logic, validation rules or security measures that must be followed.
With Functional input, document the technical design of the target fields that are in the scope of this document.
The technical design of the target for this conversion approach.
| Table | Field | Data Element | Field Description | Data Type | Length | Requirement |
|---|---|---|---|---|---|---|
| KONH | KNUMH | KNUMH | Condition Record Number | CHAR | 10 | Mandatory (Key) |
| KONH | ERDAT | ERDAT | Created On | DATS | 8 | Optional |
| KONH | DATAB | DATAB | Valid From | DATS | 8 | Mandatory |
| KONH | DATBI | DATBI | Valid To | DATS | 8 | Mandatory |
| KONP | KSCHL | KSCHL | Condition Type (Tax Code) | CHAR | 4 | Mandatory |
| KONP | KBETR | KBETR | Tax Rate | CURR | 11 | Mandatory |
| KONP | KONWA | KONWA | Condition Unit (Currency or Percentage) | CUKY | 5 | Mandatory |
All data cleansing should take place in the data source system as defined in this document, unless system limitations prevent it.
If data cleansing is managed outside of the source system (e.g. Syniti Migrate, 3rd Party Vendor, DCT), the necessary documentation must be produced and appended to this deliverable for sign-off.
| ID | Criticality | Error Message/Report Description | Rule | Output | Source System |
|---|---|---|---|---|---|
1035-001 | C1 | Remove obsolete condition records | Eliminate pricing condition records where the material, customer, or condition type is blocked or discontinued. | List of obsolete records | WP2/PF2 |
1035-002 | C1 | Validate Customer-Material master data | Ensure pricing condition records refer to valid and active Customer and Material master records. | List of invalid Customer Material combinations | WP2/PF2 |
1035-003 | C1 | Remove expired condition records | Delete condition records where validity end date has already passed. Exception the condition records required for open sales orders under migration scope | List of expired records | WP2/PF2 |
1035-004 | C1 | Validate mandatory fields | Check for missing mandatory fields (e.g. Condition Value, Currency, UoM, Scale data, Validity dates). | List of incomplete records | WP2/PF2 |
1035-005 | C2 | Detect duplicate condition records | Identify and flag duplicate pricing condition records for the same condition type, key combination, and validity period. This is possible as the source is from multiple systems WP2 and PF2 | List of duplicate records | WP2/PF2 |
1035-006 | C1 | Validate currency consistency | Validate that the currency used in pricing conditions matches the currency allowed for the corresponding sales organization or customer master data. | List of inconsistent currency | WP2/PF2 |
1035-007 | C2 | Validate scale data | Identify and correct scale records with inconsistent or overlapping ranges (quantity/value). | List of scale issues | WP2/PF2 |
1035-008 | C1 | Validate unit of measure consistency | Validate unit of measure used in pricing conditions aligns with material master base UoM and allowed UoMs. | List of inconsistent UoM records | WP2/PF2 |
The high-level process is represented by the diagram below:
Summarize High-Level Process. Include diagrams, where applicable. Include information supporting details of Extract, Transform and Load specific to the Data Object

Extract data from a source into Syniti Migrate. There are 2 possibilities:
The agreed Relevancy criteria is applied to the extracted records to identify the records that are applicable for the Target loads
| Req # | Requirement Description | Team Responsible |
|---|---|---|
| 1035-001 | Confirm scope and extraction approach for each ECC source systems WP2, PF2 (direct DB or manual extract) | Data Team (L2C), Data Team (Syniti) |
| 1035-002 | Establish and validate Syniti connectivity to both ECC source systems | Technical / Basis Team, Data Team (Syniti) |
| 1035-003 | Perform full data extraction from relevant SAP pricing tables (e.g., A*, KONH, KONP, etc.) from both source systems WP2, PF2 | Data Team (Syniti) |
| 1035-004 | Extract pricing condition records via the application layer for additional validations for Manual Data Collection using DCTs | Functional / Data Team (L2C) |
| 1035-005 | Apply agreed Relevancy Criteria to filter only applicable condition records for S/4HANA (e.g., active conditions, valid dates, active customers/materials) | Data Team (L2C), Data Team (Syniti) |
| 1035-006 | In case of restricted access or connectivity issues, receive pre-extracted pricing reports/files from source system team and upload to Syniti Migrate manually | Data Team (L2C), Data Team (Syniti) |
| 1035-007 | Identify pricing data not present in SAP (e.g., special rates, legacy exceptions) and collect manually via DCT (Data Collection Template) | Business Users / Data Team (L2C), Data Team (Syniti) |
| 1035-008 | Perform data quality checks on extracted records (e.g., missing key fields, invalid dates, incorrect formats) | Data Team (L2C), Data Team (Syniti) |
| 1035-009 | Review and approve extracted data sample sets from each source system before transformation begins | Business / Functional Team |
| 1035-010 | Archive raw extracts and maintain extraction audit logs for traceability | Data Team (L2C), Data Team (Syniti) / PMO Team |
| Selection Ref Screen | Parameter Name | Selection Type | Requirement | Value to be entered/set |
|---|---|---|---|---|
<Object> DCT Rules
| Field Name | Field Description | Rule |
|---|---|---|
| KSCHL | Condition Type | Mandatory. Must be a valid condition type configured in S/4HANA. Use lookup list provided. |
| Field List Based on Chosen Access Table / Key Combination (Refer to Full Template List Above) | ||
| VKORG | Sales Organization | Mandatory. Must match valid Sales Org values in target system. Only authorized values per scope should be used. |
| VTWEG | Distribution Channel | Optional based on condition table. Must be valid if provided. |
| SPART | Division | Optional. Use only if applicable. Validate against S/4HANA master data. |
| KUNNR | Customer Number | Must be a valid customer number in the S/4HANA master data. |
| LIFNR | Vendor Number | Use only when condition type applies to vendor. Must match master data. |
| MATNR | Material Number | Used only for material-based pricing. Should be padded to 18 characters. |
| WERKS | Plant | Optional. Use only if relevant for the pricing condition. |
| Mandatory Fields in All DCTs | ||
| KBETR | Condition Rate | Mandatory. Should be numeric. Decimal separator should be "." (e.g., 25.50). |
| KONWA | Currency | Mandatory. Must be a valid ISO currency code (e.g., USD, EUR). |
| KPEIN | Pricing Unit | Mandatory. Must be numeric and represent number of units (e.g., 1, 1000). |
| KMEIN | Unit of Measure | Mandatory. Must match valid UOM from SAP (e.g., EA, KG, L). |
| DATAB | Valid From Date | Mandatory. Format: YYYYMMDD. Cannot be in the past or beyond system date range. |
| DATBI | Valid To Date | Mandatory. Format: YYYYMMDD. Must be later than Valid From date. |
List the steps that need to occur before extraction can commence
| Item # | Step Description | Team Responsible |
|---|---|---|
The Target fields are mapped to the applicable Legacy field that will be its source, this is a 3-way activity involving the Business, Functional team and Data team. This identifies the transformation activity required to allow Syniti Migrate to make the data Target ready:
| Item # | Step Description | Team Responsible |
|---|---|---|
| 1 | Identify target S/4HANA fields and determine applicable legacy source fields from both ECC systems WP2, PF2 | Functional Team (L2C)+ Data Team (L2C) |
| 2 | Review condition types and access tables used in each ECC source systems WP2, PF2 | Business Team + Functional Team (L2C) |
| 3 | Map legacy field values to S/4HANA target values (including field-level mapping and technical names) | Data Team (L2C), Data Team (Syniti) |
| 4 | Define value mapping rules for fields requiring standardization or harmonization across the two source systems WP2, PF2 (i.e., USD, US$ mapped to USD, and ZD01 and ZDISC from ECC system mapped to ZD01 etc., | Functional Team (L2C)+ Data Team (L2C) |
| 5 | Identify and agree on default values where legacy data is incomplete or inconsistent | Business Team + Functional Team (L2C) |
| 6 | Configure transformation rules in Syniti Migrate (including calculated fields, formatting rules, etc.) | Data Team (Syniti), Data Team (L2C) |
| 7 | Review transformation logic and mappings with Business for confirmation | Business Team + Functional Team (L2C) |
| 8 | Perform initial transformation run and generate draft target-ready dataset | Data Team (Syniti), |
| 9 | Review draft target-ready data for structure and completeness | Data Team (L2C), Functional Team (L2C) |
| 10 | Share transformed data with Business for Pre-load Validation | Business Team |
| 11 | Incorporate feedback from Business and refine mappings or transformation logic as needed | Data Team (L2C) |
| 12 | Finalize and approve transformed data as Target Ready Load File | Business + Functional (L2C) + Data Team (L2C) |
| 13 | Handover final file to Load Team or trigger the load via Syniti Load Workbench | Data Team (Syniti), Data Load Team |
Transformation Rules
Please check the attached file for the complete field to mapping table mapping CNV-1034-Transformation Rules
| Rule # | Source system | Source Table | Source Field | Source Description | Target System | Target Table | Target Field | Target Description | Transformation Logic |
|---|---|---|---|---|---|---|---|---|---|
| 1035-001 | QF2 | BOLL | A764 | ALAND / LLAND / VKORG | S/4HANA | A764 | BOLL | ||
| 1035-002 | QF2 | BOLL | A110 | LLAND / VKORG | S/4HANA | A110 | BOLL | ||
| 1035-003 | QF2 | CTXJ | A604 | AUART_SD | S/4HANA | A604 | CTXJ | ||
| 1035-004 | QF2 | CV | A534 | KUNNR / LLAND / SPART / VKBUR / VKORG / VTWEG / ZZPRODH_P3 | S/4HANA | A534 | CV |
| Field Name | Mapping Table Name | Mapping Table Description |
|---|---|---|
| AUART_SD | AUART | Sales Document Types |
| BUKRS | BUKRS | Company Code |
| KUNAG | KUNNR | Business Partner - Customer |
| KUNNR | KUNNR | Business Partner - Customer |
| KUNRG | KUNNR | Business Partner - Customer |
| KUNWE | KUNNR | Business Partner - Customer |
| LGORT | LGORT | Storage Location |
| MATKL | MATKL | Material Group |
| MATNR | MATNR | Material Master |
| PRODH | PRODH | Product Hierarchy |
| SPART | SPART | Division |
| VKBUR | VKBUR | Sales Office |
| VKORG | VKORG | Sales Organization |
| VKORGAU | VKORG | Sales Organization |
| VTWEG | VTWEG | Distribution Channel |
| WERKS | WERKS | Plant |
| Item # | Step Description | Team Responsible |
|---|---|---|
| Task | Action |
|---|---|
| title | specific details of what and how the task needs to be performed e.g. which reports are being used etc. |
| Task | Action |
|---|---|
| title | specific details of what and how the task needs to be performed e.g. which reports are being used etc. |
| Task | Action |
|---|---|
| title | specific details of what and how the task needs to be performed e.g. which reports are being used etc. |
| Task | Action |
|---|---|
| title | specific details of what and how the task needs to be performed e.g. which reports are being used etc. |
The load process includes:
| Item # | Step Description | Team Responsible |
|---|---|---|
Load Phase and Dependencies
Identify the phase as to “when” the load for this object will occur. <Pre-Cutover, Cutover, Post Cutover> and list the steps that need to occur before the load can commence
List the Configurations required before loading can commence
| Item # | Configuration Item |
|---|---|
| Object # | Preceding Object Conversion Approach |
|---|---|
| list the exact title of the conversion object of only the immediate predecessor – this will then confirm the DDD (Data Dependency Diagram) | |
The table below depicts some possible system errors for this data object during data load. All data load error is to be logged as defect and managed within the Defect Management
| Error Type | Error Description | Action Taken |
|---|---|---|
| Task | Action |
|---|---|
| title | specific details of what and how the task needs to be performed e.g. which reports are being used etc. |
| Task | Action |
|---|---|
| title | specific details of what and how the task needs to be performed e.g. which reports are being used etc. |
| Task | Action |
|---|---|
| title | specific details of what and how the task needs to be performed e.g. which reports are being used etc. |
| Task | Action |
|---|---|
| title | specific details of what and how the task needs to be performed e.g. which reports are being used etc. |
Any additional key assumptions.
Insert links and references to other documents which are relevant when trying to understand this decision and its implications. Other decisions are often impacted, so it's good to list them here with links. Attachments are also possible but dangerous as they are static documents and not updated by their authors.