| 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 conversion approach to create Business Partners - General in S/4 HANA.
In SAP ECC, customer and vendor master data are maintained separately as distinct entities. Customers are managed through Customer Master Data, while vendors are handled via Vendor Master Data. These records store essential details such as company name, address, payment terms, and tax information.
In SAP S/4HANA, the Business Partner (BP) concept replaces the traditional customer and vendor master data approach. The BP model integrates both customer and vendor roles into a single entity, simplifying data management and ensuring consistency across different business functions
The scope of this document covers the approach for converting active Customer Master Data General and Vendor Master General from Legacy Source Systems into S/4HANA Business Partner (BP) General (Role 000000) Master Data Design Standard.
Customer Master Data - General Information
The data from legacy system includes:
| Criteria | Relevancy Rule | Technical Details |
|---|---|---|
| 1 | Customer with AR Balance under the company codes within S4 Hana implementation scope | Select KUNNR from BSID where BSID-BUKRS in (Company code in scope) |
| 2 | or (Customer doesn't have central deletion indicator AND Customer has active sales view data within the sales organizations in scope). | Select KUNNR from KNA1 where KNA1-LOEVM="" and KNVV-KUNNR = KNA1-KUNNR AND KNVV-VKORG in (Sales Org in scope) and KNVV-LOEVM = "" |
| 3 | or (Customer doesn't have central deletion indicator and customer has active company code view within the company codes in scope) | Select KUNNR from KNA1 where KNA1-LOEVM="" and KNB1-KUNNR = KNA1-KUNNR AND KNB1-BUKRS in (Company code in scope) and KNB1-LOVEM = "" |
| 4 | or Customer is part of Customer Hierarchy Higher Node, and the sales area data is part of the sales areas within migration scope | Select HKUNNR from KNVH where KNVH-VKORG in (Sales Org in scope) |
| 5 | or there is customer consignment stock and the plant for the consignment stock is within S4 Hana implementation scope. | Select KUNNR from MSKU where MSKU-WERKS in (Plant in scope) |
| 6 | or Customer is used for Credit Limit Reference in Credit Management | Select KNKLI from KNKK where KNKK-KKBER = TVTA-KKBER AND TVTA-VKORG in (Sales Org in scope) |
| 7 | Intercompany Customer is in migration scope, but it will be use Data Collection Template to collect the information | KNA1-VBUND <>"" |
The data from legacy system excludes:
| Criteria | Relevancy Rule | Technical Details |
|---|---|---|
| 1 | Customer has central deletion indicator and without AR/AP Balance under the company codes within S4 Hana implementation scope. | KNA1-LOEVM<>"" and there is no record return from BSID where BSID-BUKRS in (Company code in scope) |
| 2 | One time customer (Account group is Z004) | KNA1-KTOKD = Z004 |
| Source | Scope | Source Approx No. of Records | Target System | Target Approx No. of Records |
|---|---|---|---|---|
| WP2 | Customer Master Data General Information | S4 Hana ROW | ||
| PF2 | Customer Master Data General Information | S4 Hana ROW | ||
| WP2 | Customer Master Data General Information | S4 Hana China | ||
| PF2 | Customer Master Data General Information | S4 Hana China | ||
| WP2 | Customer Master Data General Information | S4 Hana CUI | ||
| PF2 | Customer Master Data General Information | S4 Hana CUI |
Vendor Master Data - General Information
The data from legacy system includes:
The data from legacy system excludes:
List of source systems and approximate number of records
| Source | Scope | Source Approx No. of Records | Target System | Target Approx No. of Records |
|---|---|---|---|---|
| WP2. PF2 | Vendor Master Data General Information Extract from LFA1, LFB1, LFM1, EKPA, EKKO according to relevancy criteria for vendor and deduplication nominations | 70,000 | S4 Hana | < 70,000 |
| DCT | All active BP's in Intercompany DCT, includes
The number range for Inter-Company is external (as per in MDS) with the following prefixed
Data collection will be prepared and there's a mapping between Syensqo entities as Vendor in WP2/PF2 and those created in BP Intercompany entities. Please refer to data object 3027 - Business Partners - Plants/Intercompany Suppliers for more details | S4 Hana | ||
Relevancy Criteria for Vendor: | Rules | |
Relevancy rules - All must be true for the Vendor to be considered for relevancy | ||
1 | Deletion Flag flagged as no longer used anywhere in system | where LFA1-LOEVM <> 'X' |
2 | Has at least one valid extension | having entry in LFB1/LFM1 where LOEVM <> 'X' with Company Code/Purchasing Organization in scope |
3 | ||
Additional rules - Only one needs to be true for the Vendor to be ‘relevant’ [only Vendor that have passed ‘Relevancy rules’ above are included] | ||
1 | Has Purchase Order created last 24 months | where Vendor has PO created (EKKO-AEDAT) in last 24 months (within valid scope – Company Code, Plant) |
2 | Has a valid Contract created last 24 months | where Vendor has Contract created (EKKO-AEDAT) in last 24 months (within valid scope – Company Code, Plant) |
3 | Is a valid Partner in PO/SO created last 24 months | Where Vendor having entry in EKPA-LIFN2 (PO created in last 24 months) or |
4 | Vendor created in the last month | where current date < LFA1-ERDAT < current date – 1month |
5 | Is linked to a valid Customer | where Vendor is linked to a relevant Customer (KNA1-LIFNR ) |
6 | Is a Carrier | where Vendor is identified relevant as BP Carrier (base on Carrier relevancy rules) - TBC |
7 | Has Open Items Not Cleared or Paid in Account Payables for the past 24 months | where Vendor has an entry in BSEG-LIFNR with posting keys BSEG-BSCHL = 21 TO 39 for posting date (BKPF-BUDAT) in last 24 months (within legal company code in scope) - TBC |
8 | Is One-Time Vendor | where Vendor Segment Class LFA1-ZZR_SEGT_ATTR is 'D' - TBC |
Exception Rules (Does not consider Rule 1 in Relevancy Rules) | ||
1 | Has VAT changed last 24 months | where Vendor EKPA-LIFN2 used in Partner Function EKPA-PARVW 'IP' (Invoice Presented By) and 'VN' (Vendor) is different in open PO. |
2 | ||
The customer and vendor general data may contain international address. Therefore, the conversion will also need to support the multi-language address. Below languages (International versions) are supported.
| International Version | Description |
|---|---|
| C | Simplified Chinese |
| R | Cyrillic |
| K | Kanji (Japanese) |
| A | Arabic |
| 3 | Korean |
| T | Thai |
| H | Hangul |
It is possible the customer has attachment in the legacy system. The migration of attachment will be captured in conversion spec CNV-3004 - Attachment for customer master data.
CMMC 2.0 is a mandatory DoD cybersecurity certification for contractors handling Controlled Unclassified Information (CUI) and Federal Contract Information (FCI). CUI includes sensitive technical data (e.g., design specs, system info) related to U.S. military and space applications. The Composites Business handles CUI and is therefore within CMMC scope. Without certification, the business risks disqualification from existing and future DoD programs.
It is mandatory to implement CMMC-compliant systems and processes to for all the organizations that are dealing with CUI.
Therefore, there will be one SAP instance specifically for CUI related entities. The migration for CUI related entities will be covered by US based data consultant using separate tools.
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.
Customer Master Data - General Information
A. Different SAP Instance Migration Approach
Due to compliance requirement, there will be one SAP instance for Rest of the World, one for China and one for CUI.
Please refer to the link for the entity mapping for each instance. In case the data object is applicable for multiples instances, what business rule to follow?
- To identify the record is for SAP ROW Instance, it will use below logic.
| SAP ROW Instance Specific Company Codes | SAP ROW Instance Specific Sales Organization |
|---|---|
- To identify the record is for SAP China Instance, it will use below logic.
| SAP China Instance Specific Company Codes | SAP China Instance Specific Sales Organization |
|---|---|
- To identify the record is for SAP CUI Instance, it will use below logic.
| SAP CUI Instance Specific Company Codes | SAP CUI Instance Specific Sales Organization |
|---|---|
B. WP2/PF2 Customer General Data Reconciliation
In the meantime, for WP2/PF2 customer master general data, it is possible they are both coming from the same MDM PRS system, therefore, a de-duplication or reconciliation needs to be performed based on below logic.
C. Intercompany BP General Data
For Intercompany BP, it is in the migration scope. However, as the definition of the to-be Intercompany BP is different from the existing ECC Intercompany BP definition, instead of migrating the ECC Intercompany BP directly, a DCT will be utilized to collect the intercompany information, then map to the ECC customer/vendor number if applicable.
| Grouping | BP Grouping | From Number | Comments |
|---|---|---|---|
| BPAB | Intercompany Customer - Trade | ICTXXXX | where XXXX is company code |
| BPAB | Intercompany Customer - Non Trade | ICNXXXX | where XXXX is company code |
| BPAB | Plant | PLYYYY | where YYYY is plant code |
D. BP Number Range
In the BAU (business as usual) scenario, the BP number range for external parties will be Internal number range, meaning SAP will generate the running number based on the sequence of creation. For the migration purpose, it will adopt the external number range, which means each partner will have a pre-defined number when migrating to S4 Hana system. The consideration for this set up is to prepare the R3 customer migration in salesforce to keep the number in sync in both Salesforce and S4 Hana. Although the migration is using external number range, the pattern will be the same as internal number range.
| Grouping | BP Grouping | From Number | To Number |
|---|---|---|---|
| BP02 | Internal Numbering for standard use | 1000000 | 99999999 |
E. One-time Customer
One time customer will not be migrated directly. However, if there is one time customer used in the open sales documents, or AR, a corresponding customer will be created as a normal customer.
Vendor Master Data - General Information
A. Different SAP Instance Migration Approach
There're three target SAP S4 Hana instances which will follow the following approach -
The following logic is being used to identify record for SAP ROW Instance.
| SAP ROW Instance Specific Company Codes | SAP ROW Instance Specific Purchasing Organization |
|---|---|
The following logic is being used to identify record for SAP China Instance.
| SAP China Instance Specific Company Codes | SAP China Instance Specific Purchasing Organization |
|---|---|
The following logic is being used to identify record for SAP CUI Instance.
| SAP CUI Instance Specific Company Codes | SAP CUI Instance Specific Purchasing Organization |
|---|---|
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 |
|---|---|---|---|---|---|---|
| MARA | MATNR | MATNR | Material Number | CHAR | 18 | 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.
Customer Master Data - General Information
| ID | Criticality | Error Message/Report Description | Rule | Output | Source System |
|---|---|---|---|---|---|
| 3007-001 | Block customer general data without any usage for more than 2 years | If customer is created for more than 2 years For customer without Central Deletion Flag and customer is not used in any sales or finance transaction for more than 2 years If customer is created for less than 2 years For customer without Central Deletion Flag and customer is not used in any sales or finance transaction for more than X months | Customer/Name/Country/Last Transaction Date Below source document will be considered to get the last transaction date
| PF2/WP2 | |
| 3007-002 | Missing Postal code in the general data | Active customer and there is no postal code maintained except for HK | Customer/Name/Country/Postal Code | PF2/WP2 | |
| 3007-003 | Missing Street in the general data | Active customer and there is no street information in either Street/2/3/4/5 | Customer/Name/Country/Street/Street2/Street3/Street4/Street5 | PF2/WP2 | |
| 3007-004 | Missing Region in the general data | Active customer and there is no region code maintained | PF2/WP2 | ||
| 3007-005 | Review the international version address maintained for the customer | PF2/WP2 | |||
| 3007-006 | Review the customer with obsolete region code | Active customer and the region code is no longer valid | PF2/WP2 | ||
| 3007-007 | Identify duplicate BP 1. customer vs customer |
| PF2/WP2 | ||
| 3007-008 | Identify duplicate BP 2. vendor vs customer if applicable | PF2/WP2 | |||
| 3007-009 | Missing customer without transportation zone | Active customer and there is no transportation zone | Customer/Name/Street/Country/Region/Transportation Zone | PF2/WP2 | |
| 3007-010 | Review customer using name 3 and name 4 and re-organize the name if possible? | Active customer, and there is information maintained in name 3 or name 4 | Customer/Name/Name2/Name3/Name4/Country | PF2/WP2 | |
| 3007-011 | Move C/O to field C/O instead of keeping in Name1/2/3/4 | Active customer and there is "C/O" maintained in name 1/2/3/4 | Customer/Name/Name2/Name3/Name4 | ||
| 3007-012 | Remove room number as the field is no longer in use | ||||
| 3007-013 | Identify one customer has multiple VAT ID in different registration country | If the customer has multiple VAT ID, identify if this is for different country and if there is different VAT registration address, if yes, then need to split the customer into multiple ship-to in S4 |
Vendor Master Data - General Information
| ID | Criticality | Error Message/Report Description | Rule | Output | Source System |
|---|---|---|---|---|---|
3007-001 | C2 | Vendor General Bank - Missing/Incorrect bank details | 1) Vendors with missing bank account, IBAN. 2) Bank account numbers and IBANs must be in the correct format. For countries outside the EU, the appropriate format must be validated.
| DCT report to highlight missing bank details such as :- Vendor, Name, Country, Description, Region, Comment, Baseline | PF2/WP2 |
3007-002 | C2 | Deduplication | Vendors with same name, VAT ID, bank details, etc., should be unified to avoid redundant BP creation.
| DCT for business to select golden record using parent and child approach . BP - Vendor Dedup Header List
BP- Vendor Dedup Item List
| PF2/WP2 |
| 3007-003 | C2 | Missing VAT Number / Tax Number | 1) VAT numbers, tax codes, and tax jurisdictions must be valid and correctly formatted
| DCT report to highlight missing VAT number and format that not correct | PF2/WP2 |
| 3007-004 | C2 | Vendor Address Check and Standardization | 1) (Street) must be populated 2) (City) must be populated 3) Telephone Number must be numeric 4) Ensure the Postcode is populated and follow the structure expected for the respective country | DCT report to highlight vendor address not in right format | PF2/WP2 |
| 3007-005 | C2 | Missing Emails | Vendors with missing emails. | DCT report to highlight missing emails | PF2/WP2 |
| 3007-006 | C2 | Vendor - Marked for Deletion (Reduce Scope) | 1) if Central Posting Block (LFA1-SPERR) = X or | DCT report to reduce scope | PF2/WP2 |
The high-level process is represented by the diagram below:
The ETL (Extract, Transform, Load) process is a structured approach to data migration and management, ensuring high-quality data is seamlessly transferred across systems. Here’s a breakdown of its key components:
1. Extraction
The process begins with extracting metadata and raw data from source systems, such as Syensqo ECC system (i.e., WP2/PF2) periodically. The extracted data is then staged for transformation.
2. Transformation
Once extracted, the data undergoes cleansing, consolidation, and governance. This step ensures data integrity, consistency, and compliance with business rules. The transformation process includes:
- Data validation to remove inconsistencies.
- Standardization to align formats across datasets.
- Business rule application to refine data for operational use.
3. Loading
The transformed data is then loaded into the target S4 Hana system.

For CUI instance, the ETL process will be similar, but it will not use Syniti tool.

Extract data from a source into Syniti Migrate for SAP ROW and SAP China relevant entities. 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.
For SAP CUI related entities, it will be alternative extraction process and the data will be stored in approved tools.
| Req # | Requirement Description | Team Responsible |
|---|---|---|
| Extraction Scope Definition | - Identify the source systems and databases involved. Major tables to be extracted are KNA1/LFA1/ADRC/ADR2/ADR3/ADR4/ADR5/ADR6. | Syniti / US Based Consultant for SAP CUI instance Syniti / LTC Data team |
| Extraction Methodology | - Specify the extraction approach (full, incremental, or delta extraction). For this object, it will be full extraction. | Syniti / US Based Consultant for SAP CUI instance |
| Extraction Execution Plan | - Establish execution timelines and batch processing schedules. - Assign responsibilities for extraction monitoring. - Document dependencies on other migration tasks. | Syniti / US Based Consultant for SAP CUI instance |
| Data Quality and Validation | - Define error handling mechanisms for extraction failures. | Syniti / US Based Consultant for SAP CUI instance |
| Selection Ref Screen | Parameter Name | Selection Type | Requirement | Value to be entered/set |
|---|---|---|---|---|
| N/A | ||||
<Object> DCT Rules
Customer Master Data - General Information
| Field Name | Field Description | Rule |
|---|---|---|
Vendor Master Data - General Information
| Field Name | Field Description | Rule |
|---|---|---|
List the steps that need to occur before extraction can commence
| Item # | Step Description | Team Responsible |
|---|---|---|
| 1 | Source System Availability
| Syensqo IT |
| 2 | Data Structure
| Syniti / US Based Consultant for SAP CUI instance |
| 3 | Referential Integrity
| Syniti / US Based Consultant for SAP CUI instance |
| 4 | Extraction Methodology
| Syniti / US Based Consultant for SAP CUI instance |
| 5 | Performance and Scalability Considerations
| Syniti / US Based Consultant for SAP CUI instance |
| 6 | Security and Compliance
| Syniti / US Based Consultant for SAP CUI instance |
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 | Transformation Scope Definition - Identify the source and target data structures. - Define business rules for data standardization. - Establish data cleansing requirements to remove inconsistencies. | Data Team |
| 2 | Data Mapping and Standardization - Align source fields with target fields. - Ensure unit consistency (e.g., currency, measurement units) | Data Team |
| 3 | Business Rule Application - Implement data enrichment/collection if applicable - Apply conditional transformations based on predefined logic/business rules | Data Team |
| 4 | Transformation Execution Plan - Define batch processing schedules. - Assign responsibilities for monitoring execution. - Establish error-handling mechanisms | Syniti / US Based Consultant for SAP CUI instance |
Transformation Rules
| Rule # | Source system | Source Table | Source Field | Source Description | Target System | Target Table | Target Field | Target Description | Transformation Logic |
|---|---|---|---|---|---|---|---|---|---|
| Mapping Table Name | Mapping Table Description |
|---|---|
| MAP_BU_GROUP | BP Grouping Mapping Table |
| MAP_REGION | Country/Region Code Mapping Table |
| MAP_BPKIND | BP Type Mapping Table |
| Item # | Step Description | Team Responsible |
|---|---|---|
| 1 | Source Data Integrity - Ensure extracted data is complete, accurate, and consistent. - Validate that data types and formats align with transformation requirements. | Syniti / US Based Consultant for SAP CUI instance |
| 2 | Referential Integrity - Ensure dependent records are transformed together or in advance | Syniti / US Based Consultant for SAP CUI instance |
| 3 | Transformation Logic and Mapping - Define data mapping rules between source and target schemas. | Data Team |
| 4 | Performance and Scalability Considerations - Optimize transformation processes for large datasets. - Ensure system resources can handle transformation workloads | Syniti / US Based Consultant for SAP CUI instance |
| 5 | Logging and Error Handling - Maintain detailed logs of transformation activities. - Define error-handling procedures for failed transformations | Syniti / US Based Consultant for SAP CUI instance |
| Task | Action |
|---|---|
| Compare Data Counts |
|
| Validate the mandatory fields | Validate there is value for all the mandatory fields |
| Validate Primary Keys and Unique Constraints |
|
| Test Referential Integrity | Confirm dependent records exist in related tables |
| Task | Action |
|---|---|
| Validate the transformation | Validate the fields which require transformation have the value after transformation instead of the original field value |
| Check Data Consistency |
|
| Task | Action |
|---|---|
| Compare Data Counts |
|
| Review populated templates for missing or incorrect values | Use checklists to verify completeness and correctness before submission |
| 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 |
|---|---|---|
| 1 | Load Scope Definition - Identify the target system and database structure. - Define data objects (tables, fields, records) to be loaded. - Establish business rules for data validation. | Data team |
| 2 | Load Methodology SAP standard migration cockpit will be used to load the data, object name 'Customer' and 'Supplier'. | Syniti / US Based Consultant for SAP CUI instance |
| 3 | Data Quality and Validation - Ensure data integrity checks (null values, duplicates, format validation). - Perform pre-load validations to verify completeness. - Define error handling mechanisms for load failures | Syniti / US Based Consultant for SAP CUI instance |
| 4 | Load Execution Plan - Establish execution timelines and batch processing schedules. - Assign responsibilities for monitoring execution. - Document dependencies on other migration tasks | Syniti / US Based Consultant for SAP CUI instance |
| 5 | Logging and Reporting - Maintain detailed logs of loading activities. - Generate summary reports on loaded data volume and quality. - Define escalation procedures for errors | Syniti / US Based Consultant for SAP CUI instance |
Load Phase and Dependencies
The Business Partner General will be loaded in the pre-cutover period.
Before loading, it will have dependency on the configuration. The configuration needs to be transported into the respective system first, including the manual configuration such as the BP number range set up.
List the Configurations required before loading can commence
| Item # | Configuration Item |
|---|---|
| 1 | BP Grouping |
| 2 | Customer/Vendor Account Group |
| 3 | International Version |
| 4 | Tax Category |
| 5 | BP Type |
| 6 | BP Number Range/Customer/Vendor Number range |
| Object # | Preceding Object Conversion Approach |
|---|---|
| 1083 | Bank Master |
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 |
|---|---|---|
| Configuration / Data Transformation | The value XXX for field XXX doesn't exist |
|
| Configuration | There is mandatory field XXX missing |
|
| Configuration | The BP grouping is External or Internal Number range |
|
| Task | Action |
|---|---|
| Perform Source-to-Target Comparisons |
|
| Task | Action |
|---|---|
| Execute Sample Queries and Reports |
|
| Conduct Post-Migration Reconciliation | Generate reports comparing pre- and post-migration data. |
Post-load validation is a critical step in data migration, ensuring that transferred data is accurate, complete, and functional within the target system.
1. Ensuring Data Integrity
After migration, data must be consistent with its original structure. Post-load validation checks for missing records, incorrect mappings, and formatting errors to prevent discrepancies.
2. Business Continuity
Faulty data can disrupt operations, leading to financial losses and inefficiencies. Validating post-load data ensures that applications function as expected, preventing downtime.
3. Error Detection and Resolution
By validating data post-migration, businesses can detect anomalies early, reducing the cost and effort required for corrections
| Task | Action |
|---|---|
| Perform Source-to-Target Comparisons |
|
| Conduct Post-Migration Reconciliation | Go through reports comparing pre- and post-migration data. |
| Task | Action |
|---|---|
| Perform Manual Testing | Conduct manual spot-checks for additional assurance. |
Any additional key assumptions.