| Status | |
|---|---|
| Owner | BAJAJ-ext, Manoj |
| Stakeholders |
Purpose
The purpose of this document is to define the conversion approach to create Business Partner - Counterparty (Object 3040) in S/4 HANA.
Counterparty represents organisation or person with whom a Treasury Transaction is being entered. Counterparty is used as an object while creating Transactions/Instruments such as Money Market deals, Foreign Exchange contracts, Securities etc. in Treasury and Risk Management module of S4HANA.
It is therefore created as a Business Partner with the specific role as Counterparty - Role ID TR0151 using the Transaction Code BP. While the General Data such as name, address, contact details, identifications and controls are created like a general BP role i.e. 000000, the Company Code Data will be maintained once the BP Role TR0151 is maintained.
Company Code data under Counterparty Role for a business partner includes the payment details and its assignment to standing instructions, authorisations (by contract/product category/types, transaction types) and derived flows.
The below table explains the Role Matrix, applicable S4HANA tables and related Conversion Objects
| Role | Description | Table | Conversion Object |
|---|---|---|---|
| 000000 | General Role Business Partner Role - General view Customers + Suppliers (including name and address standards, languages, emails, formats, identifications etc.) | BUT000 | CNV-3007 |
| TR0151 | Counterparty Role - assignment to a Business Partner and validity dates | BUT100 | CNV-3040 |
| TR0151 | Counterparty Role - Company Code Data: Payment Details | VTBSTC1 | |
| TR0151 | Counterparty Role - Company Code Data: Assignment of Payment Details as Standing Instructions | VTBSTA1 | |
| TR0151 | Counterparty Role - Company Code Data: Authorisations | VTBSTA3 | |
| TR0151 | Counterparty Role - Company Code Data: Derived Flow | VTBSTA4 |
The key fields for the above mentioned S4HANA tables pertaining to CNV-3040 - Business Partner Counterparty are explained below:
- Table BUT100 - Role assignment:
- PARTNER - Business Partner Number - unique identifier of the Business partner which can be internally assigned by SAP or externally assigned by user. For Intercompany Business Partner, it will be externally assigned. Others will be internally assigned following the number ranges by the groups as specified in the CNV-3007
- RLTYP - Business Partner Role - This field is to select the Partner Role. For Counterparty the role to be used is TR0151
- VALID_FROM - Validity Start of a BP Role
- VALID_TO - Validity End of a BP Role
- Table VTBSTC1 - Counterparty -Company Code Data- Payment Details
- WAERS - Currency Key - Currency for which the payment detail is being maintained
- ZAHLVID - Identification of Payment Details - This ID is created for a currency and is used in the assignment to "standing instructions" in the Table VTBSTA1
- BVTYP - Partner Bank Details - The payment details ID for a business partner. This is also the ID which is referenced in the Security Account Master Data (CNV-1185)
- HBKID - House bank - House bank of the company code
- HKTID - Account Id - Bank Account ID under the House Bank
- ZLSCH - Payment Method - The mode of payment
- SZART - Payment Transaction - Indicator to be selected if the payment is to be made via Customer/Vendor subledger. In this case the BP being extended to Counterparty role should also be created with role FLCU00
- RPZAHL - Payer/payee - Identifies the business partner for payment. Incoming and outgoing payments are settled using this business partner.
- SPAYRQ - Generate Payment Request - This is a checkbox field. This is flagged if a payment request is required to be generated.
- ZWELS - List of Payment Methods - This field is to specify applicable payment methods in case a particular payment method is not specified in the field ZLSCH
- Table VTBSTA1 - Counterparty - Company Code Data- Assignment of Payment Detail IDs to Standing Instructions.
- WAERS - Currency Key - Currency of payment for which the payment detail is being maintained. This along with Company Code and Business partner will be the link with table VTBSTC1
- RANTYP - Contract Type - is a key that identifies/groups products category and its subtypes. The possible entries for a contract type in Treasury modules are:
2 = Securities
4 = Foreign exchange
5 = Money market
T = Trade Finance
- SANLF - Product Category - Product category governs processing logic for each product type used in treasury module
- SGSART - Product Type - a sub key under Product Category which is assigned to a financial transaction in SAP TRM. This is used to further classify a product type, example - Bonds can be Fixed or variable Interest rates bonds
- SFHAART- Financial Transaction Types - The financial transaction type specifies which types of transactions can be carried out with a certain product type, such as
- investment and borrowing of fixed-term deposits,
- deposits at notice,
- purchase and sale of bonds.
- SSIGN - Direction - This is to indicate if the assignment is of incoming or outgoing nature
- ZAHLVID - Identification of Payment Details - This ID is as created in table VTBSTC1 and is assigned to a combination of Contract Type (RANTYP), Product Category (SANLF), Product Type (SGSART) and Financial Transaction Type (SFHAART)
- Table VTBSTA3 - Counterparty -Company Code Data- Authorisations
- This table stores authorisations for transactions related to a counterparty. These authorisations can be defined at multiple levels:
- Contract Type (RANTYP)
- Product Category (SANLF) under a Contract Type
- Product Type (SGSART) under a Product Category
- Transaction Type (SFHAART) under a Product Type
The same field explanations as in table VTBSTA1 apply to VTBSTA3. The field indicating authorisation in the table VTBSTA3 is AUTHOR, This indicator shows that a business partner has been authorized to conclude transactions. The indicator must be viewed in connection with the business partner, the role category, the company code, the contract type, the product category and the product type.
- This table stores authorisations for transactions related to a counterparty. These authorisations can be defined at multiple levels:
Note: The Authorisations being maintained at the Counterparty is not to be assumed as same which have been maintained in the Trader Authorisations (Object-1182)
- Table VTBSTA4 - Counterparty -Company Code Data- Derived Flows
- The table stores derived flows applicable for transactions related to a counterparty. This can be defined at multiple levels:
- Contract Type (RANTYP)
- Product Category (SANLF) under a Contract Type
- Product Type (SGSART) under a Product Category
- Transaction Type (SFHAART) under a Product Type
- The table stores derived flows applicable for transactions related to a counterparty. This can be defined at multiple levels:
The same field explanations as in table VTBSTA1 apply to VTBSTA4. The field indicating Derived flow in the table VTBSTA4 is SABVERF.
Note: For the different sections of the Counterparty-Company Code data, the fields PARTNER (Business Partner Number) and BUKRS (Company Codes) are the common linkage between tables VTBSTC1, VTBSTA1, VTBSTA3 and VTBSTA4.
The treasury function in legacy is carried out in the Quantum system and therefore for the data related to Counterparty will be provided by business in a Data Collection Template (DCT). which will be transformed in Syniti to generate a preload file as the per the to-be S4HANA design. The load will be part of the Business Partner Load (Object 3007) for the General Data and Counterparty- Company Code data using the LTMC <TBC as the available LTMC for Business Partner- Treasury is only Direct Transfer>. The function module is CNV_OT_APPL_FI_TRM_BP_ROLE and the BAPI/API is FTB_BUPA_DARK_MAINTAIN_INTERN.
Conversion Scope
The scope of this document covers the approach for converting active Counterparties from Legacy Source System (Quantum) into S/4HANA following the MDS for Object-3040 - DD-FUN-050 Master Data Standard-3XXX-Consolidated Business Partner.
The relevancy criteria is not applicable for this object as the relevant data will be provided by business in a DCT (Data Collection Template), however as the general data of Counterparties will be part of the object 3007, it needs to be ensured from deduplication perspective.
| Source | Scope | Source Approx No. of Records | Target System | Target Approx No. of Records |
|---|---|---|---|---|
Quantum | Active and in use Counterparties | 100 <TBC> | S4HANA | 100 <TBC> |
Additional Information
Multi-language Requirement
Not applicable
Document Management
Not applicable
Legal Requirement
Not applicable
Special Requirements
As the conversion involves a source system which is non-SAP, the below area needs special handling:
- Extraction of Counterparty data from source system i.e. Quantum is to be done manually
- Cleansing by business team in the source system (Quantum) to ensure that only active and in use records for Counterparties are provided in DCT
- Separate DCTs to be provided i.e. for General Role and Counterparty Role including the Company Code data
- The extracted records to be converted into a DCT and stored in the Syniti for Transformation
- Below Value mapping tables to be created in Syniti:
- Counterparty to Business Partner
- Source and target company code
- Amount and date format from source system to align with S4HANA
- As the target structure in S4HANA involves dependency on the Object 3007 (Business Partner- General Data), including the Counterparty that may also be an intercompany customer/vendor, all other Roles should have been loaded before Counterparty role
Target Design
The Target design of the object 3040 - Business Partner Counterparty a based on the MDS - DD-FUN-050 Master Data Standard-3XXX-Consolidated Business Partner.
<Note: The target design can change subject to business confirmation of the target design for Treasury Module>
The technical design of the target for this conversion approach for Object 3040- Business Partner - Counterparty is as below:
Table: BUT100 - Counterparty Role TR0151 - assignment to a Business Partner.
| Table | Field | Data Element | Field Description | Data Type | Length | Requirement |
|---|---|---|---|---|---|---|
| BUT100 | PARTNER | BU_PARTNER | Business Partner Number | CHAR | 10 | Mandatory |
| BUT100 | RLTYP | BU_PARTNERROLE | BP Role | CHAR | 6 | Mandatory |
| BUT100 | VALID_FROM | BU_ROLE_VALID_FROM | Validity Start of a BP Role | DEC | 15 | Mandatory |
| BUT100 | VALID_TO | BU_ROLE_VALID_TO | Validity End of a BP Role | DEC | 15 | Mandatory |
Table: VTBSTC1 - Counterparty Company Code Data - Payment Details
| Table | Field | Data Element | Field Description | Data Type | Length | Requirement |
|---|---|---|---|---|---|---|
| VTBSTC1 | PARTNER | BP_PARTNER_NEW | Business Partner Number | CHAR | 10 | Mandatory |
| VTBSTC1 | BUKRS | BUKRS | Company Code | CHAR | 4 | Mandatory |
| VTBSTC1 | WAERS | WAERS | Currency | CUKY | 5 | Mandatory |
| VTBSTC1 | ZAHLVID | TB_ZAHLVID | Identification of Payment Details (Standing Instructions) | CHAR | 10 | Mandatory |
| VTBSTC1 | BVTYP | TB_RPBANK | Partner Bank Details | CHAR | 4 | Conditional |
| VTBSTC1 | HBKID | HBKID | Short key for a house bank | CHAR | 5 | Mandatory |
| VTBSTC1 | HKTID | HKTID | ID for account details | CHAR | 5 | Mandatory |
| VTBSTC1 | ZLSCH | DZLSCH | Payment Method | CHAR | 1 | Mandatory |
| VTBSTC1 | SZART | TB_SZART | Payment Transaction | CHAR | 1 | Not in use |
| VTBSTC1 | RPZAHL | TB_RPZAHL_NEW | Payer/payee | CHAR | 10 | Conditional |
| VTBSTC1 | SPAYRQ | TB_SPAYRQ | Generate Payment Request | CHAR | 1 | Conditional |
| VTBSTC1 | ZWELS | DZWELS | List of Respected Payment Methods | CHAR | 10 | Conditional |
Table: VTBSTA1 - Counterparty Company Code Data - Assignment of Payment Details as Standing Instructions
| Table | Field | Data Element | Field Description | Data Type | Length | Requirement |
|---|---|---|---|---|---|---|
| VTBSTA1 | BUKRS | BUKRS | Company Code | CHAR | 4 | Mandatory |
| VTBSTA1 | PARTNR | BP_PARTNER_NEW | Business Partner Number | CHAR | 10 | Mandatory |
| VTBSTA1 | WAERS | WAERS | Currency | CUKY | 5 | Mandatory |
| VTBSTA1 | RANTYP | RANTYP | Contract Type | CHAR | 1 | Conditional |
| VTBSTA1 | SANLF | SANLF | Product Category | NUMC | 3 | Conditional |
| VTBSTA1 | SGSART | VVSART | Product Type | CHAR | 3 | Conditional |
| VTBSTA1 | SFHAART | TB_SFHAART | Financial Transaction Type | CHAR | 3 | Conditional |
| VTBSTA1 | SSIGN | TB_SSIGN | Direction of Flow | CHAR | 1 | Conditional |
| VTBSTA1 | ZAHLVID | TB_ZAHLVID | Identification of Payment Details (Standing Instructions) | CHAR | 10 | Mandatory |
Table: VTBSTA3 - Counterparty Company Code Data - Authorisations
| Table | Field | Data Element | Field Description | Data Type | Length | Requirement |
|---|---|---|---|---|---|---|
| VTBSTA3 | BUKRS | BUKRS | Company Code | CHAR | 4 | Mandatory |
| VTBSTA3 | PARTNR | BP_PARTNER_NEW | Business Partner Number | CHAR | 10 | Mandatory |
| VTBSTA3 | RANTYP | RANTYP | Contract Type | CHAR | 1 | Conditional |
| VTBSTA3 | SANLF | SANLF | Product Category | NUMC | 3 | Conditional |
| VTBSTA3 | SGSART | VVSART | Product Type | CHAR | 3 | Conditional |
| VTBSTA3 | SFHAART | TB_SFHAART | Financial Transaction Type | CHAR | 3 | Conditional |
| VTBSTA3 | AUTHOR | TB_AUTHOR | Authorization indicator for Treasury product | CHAR | 1 | Mandatory |
Table: VTBSTA4 - Counterparty Company Code Data - Derived Flows
| Table | Field | Data Element | Field Description | Data Type | Length | Requirement |
|---|---|---|---|---|---|---|
| VTBSTA4 | BUKRS | BUKRS | Company Code | CHAR | 4 | Conditional |
| VTBSTA4 | PARTNR | BP_PARTNER_NEW | Business Partner Number | CHAR | 10 | Conditional |
| VTBSTA4 | RANTYP | RANTYP | Contract Type | CHAR | 1 | Conditional |
| VTBSTA4 | SANLF | SANLF | Product Category | NUMC | 3 | Conditional |
| VTBSTA4 | SGSART | VVSART | Product Type | CHAR | 3 | Conditional |
| VTBSTA4 | SFHAART | TB_SFHAART | Financial Transaction Type | CHAR | 3 | Conditional |
| VTBSTA4 | SABVERF | TB_SABVERF | Procedure for Generating Derived Flows | CHAR | 5 | Conditional |
Note - The fields PARTNER and BUKRS are the common fields across the tables associated with maintaining the Company Code data of a Counterparty Business partner as described above.
Data Cleansing
For the Object 3040 - Business Partner no specific data cleansing is applicable due to below reasons/assumptions:
- The Source System is Quantum and therefore it will be a manual extract of relevant data in a DCT form
- The General Data View of Counterparty will be handled together with the Object 3007 (Business Partner- General) and therefore same de-duplication/cleansing rules will be followed
Data- Pre Load Validation Report
However, for the purpose of the object 3040 - Business Parter Counterparty, below validations reports should be available in Syniti so that the data as provided in DCT is validated before generating the pre-load file.
| ID | Criticality | Error Message/Report Description | Rule | Output | Source System |
|---|---|---|---|---|---|
| 01 | High | Validity end date is in the Past | Check if Business Partner RLTYP Not Equal to Blank, then the validity end date (VALID_TO) in the table BUT100 is not in the past <Cutover date | Records showing validity end date in the past | Not applicable. Check against S4 Configuration/Master Data |
Conversion Process
The generic high-level process steps for the conversion are as below:
- Extraction:
- Extract from the source systems: Apply the selection parameters and data relevancy as mentioned in this specification, from the relevant tables
- DCT: The DCT to be prepared if the data to be transformed and is part of the load file is not available in the Source system
- Transform
- Transform fields by applying the fields and value mapping in the Syniti
- Generate and validate Pre-load files
- Load
- Load the validated Pre-load file using SAP's LTMC or the custom upload program as applicable.
However, with respect to object 3040- Business Partner Counterparty Master Data - the conversion process will depend upon the DCT (Data Collection Template) which will be provided by the business based on the source data from Quantum system. This DCT will be used for transformation and generation of the pre-load file.
Data Privacy and Sensitivity
Not applicableExtraction
Extract data from a source into Syniti. There are 2 possibilities:
- The data exists. Syniti connects to the source and loads the data into Syniti. There are 3 methods:
- Perform full data extraction from relevant tables in the source system(s).
- Perform extraction through the application layer.
- Only if Syniti; cannot connect to the source, data is loaded to the repository from the provided source system extract/report.
- The data does not exist (or cannot be converted from its current state). The data is manually collected by the business directly in Syniti. This is to be conducted using DCT (Data Collection Template) in Syniti.
The agreed Relevancy criteria is applied to the extracted records to identify the records that are applicable for the Target loads
In case of the object 3040- Business Partner Counterparty, the data is to be provided in a DCT by the business, therefore extraction related activity is not carried out via Syniti
Extraction Run Sheet
| Req # | Requirement Description | Team Responsible |
|---|---|---|
01 | Extract from relevant tables/reports from Quantum all relevant information required to populate the DCT for Counterparties for relevant Company Codes. This extraction is supplement to the general data of Counterparty already prepared for creation as Business Partner General Role [Object-3007 - Business Partners - General (Role 000000)] | Business |
Selection Screen
Not applicable as the extraction is manual activity to be performed by business in Quantum system.Data Collection Template (DCT)
Target Ready Data Collection Template will be created for 3040 - Business Partner Counterparty data in a Data Collection Template (DCT) by business.
This DCT is to be prepared in addition to the DCT containing the General Data such as Name, Address, Contact Details, Payment Information, Identification Numbers etc., which will be provided against the object 3007 - Business Partners - General (Role 000000)
Object 3040- Business Partner Counterparty- DCT Rules
| Field Name | Field Description | Rule |
|---|---|---|
| BUT100-PARTNER | Business Partner Number | This is a required field. This number is internally generated by the system (will be available once General Role -000000 is created) For Intercompany Counterparty, the BP number is to be assigned externally. |
| BUT100-RLTYP | Business Partner Role | This is a required field. Business Partner that needs to be created as Counterparty should be assigned to role TR0151 |
| BUT100-VALID_FROM | Validity Start of a BP Role | This is a required field. Though the date format is YYYYMMDDHHMMSS, in the DCT provide YYYYMMDD as real value and HHMMSS can be left blank Example: 20250101 |
| BUT100-VALID_TO | Validity End of a BP Role | This is a required field. Though the date format is YYYYMMDDHHMMSS, in the DCT provide YYYYMMDD as real value and HHMMSS can be left blank. If the actual end date is not known, then a generic end date of year 9999 can be provided. Example: 99991231 Note: The end date should not be prior to the cutover/go live date. |
| Counterparty Role - Company Code Data - Payment Details | ||
| VTBSTC1-PARTNER | Business Partner Number | This is a required field. This number is the same as entered for Role extension against field BUT100-PARTNER |
| VTBSTC1-BUKRS | Company Code | This is a required field. The four character Company Code in the S4HANA for which this counterparty is being extended/created |
| VTBSTC1-WAERS | Currency Key | This is a required field. The currency key in which the payment details to be created. The currency key is as per ISO standard. |
| VTBSTC1-ZAHLVID | Identification of Payment Details (Standing Instructions) | This is a required field. The field will be used as Payment Detail ID to be assigned to Standing Instructions. This is a free text field (length: 10 Chars) |
| VTBSTC1-BVTYP | Partner Bank Details | This is a conditional field. This is to be populated only if a Payment Method requires Bank details of the Business partner as maintained in the General Data |
| VTBSTC1-HBKID | Short key for a house bank | This is a required field. House bank of the company code which will be used for the payments to this Counterparty |
| VTBSTC1-HKTID | ID for account details | This is a required field. This is the Bank account ID available under the house bank. DCT to be populated with relevant account ID |
| VTBSTC1-ZLSCH | Payment Method | This is a required field. The payment method determines how payments are to be made, e.g. by check, bank transfer or bill of exchange. DCT to be populated with an appropriate payment method from the available configured values. |
| VTBSTC1-SZART | Payment Transaction | This field is "Not to be used' as per the MDS Leave blank Note: This field is to be used only if posting is made to Customer or Vendor. Not planned to use for Syway. |
| VTBSTC1-RPZAHL | Payer/payee | This is a conditional field. The Payer/Payee ID for payment in case of Incoming and outgoing payments are to be settled using this business partner. This is to be entered if posting is made to Customer or Vendor |
| VTBSTC1-SPAYRQ | Generate Payment Request | This is a conditional field. This is a checkbox field. Put X only if a payment request is to be generated else leave blank |
| VTBSTC1-ZWELS | List of Respected Payment Methods | This is a conditional field. This field is for listing payments methods (from pre-configured values), only to be filed when a specific payment method is not provided against the field: VTBSTC1-ZLSCH (Payment method) |
Counterparty Role - Company Code Data - Assignment of Payment Details as Standing Instructions | ||
| VTBSTA1-BUKRS | Company Code | This is a required field. This number is the same as entered for Role extension against field BUT100-PARTNER |
| VTBSTA1-PARTNR | Business Partner Number | This is a required field. The four character Company Code in the S4HANA for which this counterparty is being extended/created |
| VTBSTA1-WAERS | Currency | This is a required field. The currency key in which the payment details to be created. The currency key is as per ISO standard. |
| VTBSTA1-RANTYP | Contract Type | This is a conditional field The contract type to indicate if this is for Securities, FX etc. To be selected from the available configured values for the Contract Type. Note - This is a conditional field. If populated at Contract Type level, then applies to all the Product categories, product types, transaction types under the said Contract Type. However, can also be selected only at Transaction Type level or product Type level too. For the DCT purpose this must be specified if the Payment details assignment to Standing Instructions is to be at the combination of Contract Type + Product Category + Product Type + Financial Transaction Type. |
| VTBSTA1-SANLF | Product Category | This is a conditional field The Product Categories as available under a contract type. To be selected from the available configured values of Product Category against a Contract Type. Note - This is a conditional field. If populated at Product Category level, then applies to all the product types, transaction types under the said Product Category. For the DCT purpose this must be specified if the Payment details assignment to Standing Instructions is to be at the combination of Product Category + Product Type + Financial Transaction Type |
| VTBSTA1-SGSART | Product Type | This is a conditional field The Product Type as available under a Product Category. To be selected from the available configured values of Product Types against a Product Category. Note - This is a conditional field. If populated at Product Type level, then applies to all the transaction types under the said Product Type. For the DCT purpose this must be specified if the Payment details assignment to Standing Instructions is to be at the combination of Product Type + Financial Transaction Type |
| VTBSTA1-SFHAART | Financial Transaction Type | This is a conditional field The Financial Transaction Type as available under a Product Type. To be selected from the available configured values of Financial Transaction Types against a Product Type For the DCT purpose this must be specified if the Payment details assignment to Standing Instructions is to be at the combination of Contract Type + Product Category + Product Type + Financial Transaction Type |
| VTBSTA1-SSIGN | Direction | This is a conditional field This field to be entered as + for inflow or - for outflow |
| VTBSTA1-ZAHLVID | Payment Details ID | This is a required field Payment Detail ID as created against the VTBSTC1-ZAHLVID is to be entered here as standing instruction against the combination of Contract Type, Product Category, Product Type, Financial Transaction Types as applicable. |
Counterparty Role - Company Code Data - Authorisation | ||
| VTBSTA3-BUKRS | Company Code | This is a required field. This number is the same as entered for Role extension against field BUT100-PARTNER |
| VTBSTA3-PARTNR | Business Partner Number | This is a required field. The four character Company Code in the S4HANA for which this counterparty is being extended/created |
| VTBSTA3-RANTYP | Contract Type | This is a conditional field The contract type to indicate if this is for Securities, FX etc. To be selected from the available configured values for the Contract Type. Note - This is a conditional field. If populated at Contract Type level, then applies to all the Product categories, product types, transaction types under the said Contract Type. However, can also be selected only at Transaction Type level or product Type level too. For the DCT purpose this must be specified if the Authorisation for this Counterparty is to be maintained at the combination of Contract Type + Product Category + Product Type + Financial Transaction Type. |
| VTBSTA3-SANLF | Product Category | This is a conditional field The Product Categories as available under a contract type. To be selected from the available configured values of Product Category against a Contract Type. Note - This is a conditional field. If populated at Product Category level, then applies to all the product types, transaction types under the said Product Category. For the DCT purpose this must be specified if the Authorisation for this Counterparty is to be maintained at combination of Contract Type + Product Category + Product Type + Financial Transaction Type |
| VTBSTA3-SGSART | Product Type | This is a conditional field The Product Type as available under a Product Category. To be selected from the available configured values of Product Types against a Product Category. Note - This is a conditional field. If populated at Product Type level, then applies to all the transaction types under the said Product Type. For the DCT purpose this must be specified if the Authorisation for this Counterparty is to be maintained at combination of Contract Type + Product Category + Product Type + Financial Transaction Type |
| VTBSTA3-SFHAART | Financial Transaction Type | This is a conditional field The Financial Transaction Type as available under a Product Type. To be selected from the available configured values of Financial Transaction Types against a Product Type For the DCT purpose this must be specified if the Authorisation for this Counterparty is to be maintained at combination of Contract Type + Product Category + Product Type + Financial Transaction Type |
| VTBSTA3-AUTHOR | Authorization indicator for Treasury product | This is a required field This is the checkbox field to indicate the authorisation. The value to be populated here is X |
Counterparty Role - Company Code Data - Derived Flow | ||
| VTBSTA4-BUKRS | Company Code | This is a conditional field This number is the same as entered for Role extension against field BUT100-PARTNER This is required to be provided in DCT if any derived flow (automatic flow) need to be generated |
| VTBSTA4-PARTNR | Business Partner Number | This is a conditional field The four character Company Code in the S4HANA for which this counterparty is being extended/created This is required to be provided in DCT if any derived flow (automatic flow) need to be generated |
| VTBSTA4-RANTYP | Contract Type | This is a conditional field The contract type to indicate if this is for Securities, FX etc. To be selected from the available configured values for the Contract Type. Note - This is a conditional field. If populated at Contract Type level, then applies to all the Product categories, product types, transaction types under the said Contract Type. However, can also be selected only at Transaction Type level or product Type level too. For the DCT purpose this must be specified if the derived flow for this Counterparty is to be maintained at the combination of Contract Type + Product Category + Product Type + Financial Transaction Type. |
| VTBSTA4-SANLF | Product Category | This is a conditional field The Product Categories as available under a contract type. To be selected from the available configured values of Product Category against a Contract Type. Note - This is a conditional field. If populated at Product Category level, then applies to all the product types, transaction types under the said Product Category. For the DCT purpose this must be specified if the derived flow for this Counterparty is to be maintained at combination of Contract Type + Product Category + Product Type + Financial Transaction Type |
| VTBSTA4-SGSART | Product Type | This is a conditional field The Product Type as available under a Product Category. To be selected from the available configured values of Product Types against a Product Category. Note - This is a conditional field. If populated at Product Type level, then applies to all the transaction types under the said Product Type. For the DCT purpose this must be specified if the derived flow for this Counterparty is to be maintained at combination of Contract Type + Product Category + Product Type + Financial Transaction Type |
| VTBSTA4-SFHAART | Financial Transaction Type | This is a conditional field The Financial Transaction Type as available under a Product Type. To be selected from the available configured values of Financial Transaction Types against a Product Type For the DCT purpose this must be specified if the derived flow for this Counterparty is to be maintained at combination of Contract Type + Product Category + Product Type + Financial Transaction Type |
| VTBSTA4-SABVERF | Procedure for Generating Derived Flows | This is a conditional field To be populated with a pre-configured value of derived flow against the combination of Contract Type + Product Category + Product Type + Financial Transaction Type, as applicable |
Extraction Dependencies
For object 3040- Business Partner no extraction dependencies is applicable for as the extraction is via DCT and this is Master Data object by nature
Transformation
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 to make the data Target ready:
- Perform value mapping and data transformation rules.
- Legacy values are mapped to the to-be values (this could include a default value)
- Values are transformed according to the rules defined in Syniti
- Prepare target-ready data in the structure and format that is required for loading via prescribed Load Tool. This step also produces the load data ready for business to perform Pre-load Data Validation
Transformation Run Sheet
| Item # | Step Description | Team Responsible |
|---|---|---|
1 | Ensure all the fields that require value mapping, as stipulated Mapping tables, have the latest signed-off mapping files imported into Syniti | Data team |
2 | Ensure that signed off value mappings have been maintained in the Syniti | Syniti team |
3 | Confirm the value mappings as maintained in the Syniti | Data team |
4 | Ensure that Signed off CONSTRUCT from business has been received and maintained in Syniti | Syniti/Data team |
5 | Execute transformation for the object | Syniti team |
6 | Monitor the transformation progress and ensure performance and completion is within allowed timeframe | Syniti/Data team |
7. | Generate Pre-Load reports. | Syniti team |
8. | Generate data load count. | Syniti team |
9. | Log errors as defects, if any and address resolutions. Close defects. | Syniti/Data team |
10. | Re-transform and re-validate the Pre-load reports if necessary. | Syniti/Data team |
11. | Validate the transformed file as part of pre-load validation, raise data defects or provide the pre-load sign-off. | Business |
12. | Analyse and resolve any pre-load defects logged by business. | Syniti/Data team |
13. | Repeat steps 5 to 11 if necessary | Syniti/Data team |
14. | Proceed to pre-load validations | Data team |
Transformation Rules
| Rule # | Source system | Source Table | Source Field | Source Description | Target System | Target Table | Target Field | Target Description | Transformation Logic |
|---|---|---|---|---|---|---|---|---|---|
01 | NA | NA | NA | CONSTRUCT | S4HANA | BUT100 | PARTNER | Business Partner Number | As per DCT, Check against XREF of Business Partner |
02 | NA | NA | NA | CONSTRUCT | S4HANA | BUT100 | RLTYP | BP Role | TR0151 |
| 03 | NA | NA | NA | CONSTRUCT | S4HANA | BUT100 | VALID_FROM | Validity Start of a BP Role | As per DCT |
| 04 | NA | NA | NA | CONSTRUCT | S4HANA | BUT100 | VALID_TO | Validity End of a BP Role | As per DCT Check the Validity End date is not < Cutover date |
| 05 | NA | NA | NA | CONSTRUCT | S4HANA | VTBSTC1 | PARTNER | Business Partner Number | As per DCT (Should be same as entered for table BUT100) |
| 06 | NA | NA | NA | CONSTRUCT | S4HANA | VTBSTC1 | BUKRS | Company Code | As per DCT |
| 07 | NA | NA | NA | CONSTRUCT | S4HANA | VTBSTC1 | WAERS | Currency Key | As per DCT |
| 08 | NA | NA | NA | CONSTRUCT | S4HANA | VTBSTC1 | ZAHLVID | Identification of Payment Details (Standing Instructions) | As per DCT |
| 09 | NA | NA | NA | CONSTRUCT | S4HANA | VTBSTC1 | BVTYP | Partner Bank Details | As per DCT |
| 10 | NA | NA | NA | CONSTRUCT | S4HANA | VTBSTC1 | HBKID | Short key for a house bank | As per DCT |
| 11 | NA | NA | NA | CONSTRUCT | S4HANA | VTBSTC1 | HKTID | ID for account details | As per DCT |
| 12 | NA | NA | NA | CONSTRUCT | S4HANA | VTBSTC1 | ZLSCH | Payment Method | As per DCT |
| 13 | NA | NA | NA | CONSTRUCT | S4HANA | VTBSTC1 | SZART | Payment Transaction | Leave Blank |
| 14 | NA | NA | NA | CONSTRUCT | S4HANA | VTBSTC1 | RPZAHL | Payer/payee | As per DCT |
| 15 | NA | NA | NA | CONSTRUCT | S4HANA | VTBSTC1 | SPAYRQ | Generate Payment Request | As per DCT |
| 16 | NA | NA | NA | CONSTRUCT | S4HANA | VTBSTC1 | ZWELS | List of Respected Payment Methods | As per DCT |
| 17 | NA | NA | NA | CONSTRUCT | S4HANA | VTBSTA1 | BUKRS | Company Code | As per DCT |
| 18 | NA | NA | NA | CONSTRUCT | S4HANA | VTBSTA1 | PARTNR | Business Partner Number | As per DCT (Should be same as entered for table BUT100 and VTBSTC1) |
| 19 | NA | NA | NA | CONSTRUCT | S4HANA | VTBSTA1 | WAERS | Currency | As per DCT |
| 20 | NA | NA | NA | CONSTRUCT | S4HANA | VTBSTA1 | RANTYP | Contract Type | As per DCT |
| 21 | NA | NA | NA | CONSTRUCT | S4HANA | VTBSTA1 | SANLF | Product Category | As per DCT |
| 22 | NA | NA | NA | CONSTRUCT | S4HANA | VTBSTA1 | SGSART | Product Type | As per DCT |
| 23 | NA | NA | NA | CONSTRUCT | S4HANA | VTBSTA1 | SFHAART | Financial Transaction Type | As per DCT |
| 24 | NA | NA | NA | CONSTRUCT | S4HANA | VTBSTA1 | SSIGN | Direction | As per DCT |
| 25 | NA | NA | NA | CONSTRUCT | S4HANA | VTBSTA1 | ZAHLVID | Payment Details ID | As per DCT (should be same as created against the currency for the table VTBSTC1) |
| 26 | NA | NA | NA | CONSTRUCT | S4HANA | VTBSTA3 | BUKRS | Company Code | As per DCT |
| 27 | NA | NA | NA | CONSTRUCT | S4HANA | VTBSTA3 | PARTNR | Business Partner Number | As per DCT (Should be same as entered for table BUT100 and VTBSTC1) |
| 28 | NA | NA | NA | CONSTRUCT | S4HANA | VTBSTA3 | RANTYP | Contract Type | As per DCT |
| 29 | NA | NA | NA | CONSTRUCT | S4HANA | VTBSTA3 | SANLF | Product Category | As per DCT |
| 30 | NA | NA | NA | CONSTRUCT | S4HANA | VTBSTA3 | SGSART | Product Type | As per DCT |
| 31 | NA | NA | NA | CONSTRUCT | S4HANA | VTBSTA3 | SFHAART | Financial Transaction Type | As per DCT |
| 32 | NA | NA | NA | CONSTRUCT | S4HANA | VTBSTA3 | AUTHOR | Authorization indicator for Treasury product | As per DCT (Should be always X) |
| 33 | NA | NA | NA | CONSTRUCT | S4HANA | VTBSTA4 | BUKRS | Company Code | As per DCT |
| 34 | NA | NA | NA | CONSTRUCT | S4HANA | VTBSTA4 | PARTNR | Business Partner Number | As per DCT (Should be same as entered for table BUT100 and VTBSTC1) |
| 35 | NA | NA | NA | CONSTRUCT | S4HANA | VTBSTA4 | RANTYP | Contract Type | As per DCT |
| 36 | NA | NA | NA | CONSTRUCT | S4HANA | VTBSTA4 | SANLF | Product Category | As per DCT |
| 37 | NA | NA | NA | CONSTRUCT | S4HANA | VTBSTA4 | SGSART | Product Type | As per DCT |
| 38 | NA | NA | NA | CONSTRUCT | S4HANA | VTBSTA4 | SFHAART | Financial Transaction Type | As per DCT |
| 39 | NA | NA | NA | CONSTRUCT | S4HANA | VTBSTA4 | SABVERF | Procedure for Generating Derived Flows | As per DCT |
Note:
- The business partner number and Company code information should be the same for each record in the DCT
Transformation Mapping
| Mapping Table Name | Mapping Table Description |
|---|---|
Business Partner | Mapping Table for Quantum counterparty/partner code to S4HANA Business Partner |
Transformation Dependencies
List the steps that need to occur before transformation can commence| Item # | Step Description | Team Responsible |
|---|---|---|
1 | Ensure all the fields that require value mapping, as stipulated Mapping tables, have the latest signed-off mapping files imported into Syniti | Data team |
2 | Ensure that signed off value mappings have been maintained in the Syniti | Syniti team |
3 | Confirm the value mappings as maintained in the Syniti | Data team |
4 | Ensure that Signed off DCT from business has been received and maintained in Syniti | Syniti/Data team |
5 | Confirm on the extracted values | Syniti, Data and business |
Pre-Load Validation
Project Team
The Pre Load validations are performed by Project Team
Completeness
| Task | Action |
|---|---|
| Generation of Pre-load reports | Mandatory field check.
|
Record Count | Record Count Confirm the record counts in preload summary report
|
Business Confirmation | Data team after the initial validation of Pre-Load validation based on the pre agreed validation checklist To send the Pre-Load file to the Business Representatives for all plants/valuation area in scope for conversion Business Representatives to validate the pre-load file Agree with data team on the next steps for erroneous records |
Accuracy
| Task | Action |
|---|---|
Mandatory field mapping and transformation | Obtain a list of the fields to be populated with values from mapping files and ensure all these fields contain S/4HANA values.
|
| Business Value Checks | For the payment details part of the Company Code data of a Counterparty BP, the Payment Detail ID (ZAHLVID) is not left blank |
Records in Errors | Review and correct the errors. Achieve a zero-error record count as much as possible. Raise defects for data remediated and requiring a correction in the source data. |
Business
The following pre-load validations will be performed by business.Completeness
| Task | Action |
|---|---|
Check Data load register count | Business Data Owner/s to verify that the total number of relevant records to be converted as per DCT is equal to the total number of records in the Preload file. |
| Key Fields Check | Business to check some key fields such as validity end date, payment details ID, House Bank, Bank Account ID etc., are correctly populated against the DCT |
Accuracy
| Task | Action |
|---|---|
Conversion accuracy | To check and validate the load files with all the transformation and mapping rules, to be signed off. |
Load
The load process includes:
- Execute the automated data load into target system using load tool or produce the load file if the loading of records to be done via LTMC - It is assumed that even though the LTMC - S4_FI_TRM_BP_ROLES is relevant for Direct Transfer only, it can be used for staging. If the same is not feasible <TBC by Syniti team> then function module CNV_OT_APPL_FI_TRM_BP_ROLE using a wrapper custom load program can be used as alternative
- Once the data is loaded to the target system, it will be extracted and prepared for Post Load Data Validation with side by side check of each fields in scope of the objects with fields to be displayed as XXXX_ECC, XXXX_S4HANA, XXXX_MATCH ( As TRUE or FALSE) with an additional column denoting fields not matching and status of loading in S/4HANA as LOADED_IN_S4HANA ( As TRUE or FALSE)
Load Run Sheet
| Item # | Step Description | Team Responsible |
|---|---|---|
01 | Go to load file and pick 5 data records, load manually without any tool. See what happens. If all okay, proceed with the next step. | Data team |
02 | Go to load file and pick 10 records and load them with the tool. No action if the previous step has fallen. If not, then continue to load 10 records with the tool. Check if everything went okay. | Data team |
03 | Proceed with the full load if steps one and two were succeed else fix the issue with records | Data team |
04 | Validate few records loaded by accessing standard transactions from S/4HNA e.g. BP or check in the tables - BUT100, VTBSTC1, VTBSTA1, VTBSTA3 and VTBSTA4 | Data team |
05 | Generate post load report if step 5 is validated | Data team |
06 | Log errors as defects, if any and address resolutions. Close defects. | Data team |
07 | Resolve defects by reupload and re-generate post load reports if necessary. | Data team |
08 | Business to validate the post load files as part of post-load validation, raise data defects or provide the post-load sign-off. | Business |
09 | Repeat steps 1 to 5 if necessary. | Data team |
Load Phase and Dependencies
The load phase for the object 3040-Business Partner Counterparty is Pre-Cutover Phase 3
Configuration
Below configurations should exist
| Item # | Configuration Item |
|---|---|
01 | Company Codes relevant for Treasury- Field BUKRS (Check Table: T001) |
02 | House Bank- Field HBKID (Check Table: T012) |
03 | House Bank Ids- Field HKTID (Check Table: T012K) |
04 | Payment Methods- Field ZLSCH (Check Table: T042Z) |
05 | Contract Type - Field RANTYP |
06 | Product Category- Field SANLF (Check Table: TZAF) |
07 | Product Type- Field SGSART (Check Table: TZPA) |
08 | Financial Transaction Types- Field SFHAART (Check Table: AT10) |
09 | Derived Flow Procedure- Field SABVERF (Check Table: AT22) |
Conversion Objects
| Object # | Preceding Object Conversion Approach |
|---|---|
| CNV-3007 | Business Partner - General Role |
| CNV-1083 | Bank Master |
| CNV-3017 | Business Partners - FI Customer (FLCU00) |
| CNV-3018 | Business Partners - FI Vendor (FLVN00) |
Error Handling
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 |
|---|---|---|
Valid Master | Business Partner is not having a valid treasury role i.e. TR0151 | Ensure that Business Partner is updated with correct role |
Derived Flow | Derived Flow is not available or incorrect | Check if the Derived Flow is as per configuration and update the BP role |
House Bank Account | The house bank entered in the record does not belong to the Company Code | Update the Business Partner with the correct House Bank |
Payment Detail ID | No valid payment detail ID found | Update the standing instruction with correct Payment Detail ID |
Post-Load Validation
Project Team
The following post load validations will be done by Project TeamCompleteness
| Task | Action |
|---|---|
Reconciliation of Record Count | Record Count - Count and check how many records were loaded vs. Records in the load file (Each mock has it's own data record count) Check for logs from Load and fix erroneous records, if any. |
Accuracy
| Task | Action |
|---|---|
Check values in key fields for accuracy | Post-load reports will have the same structure as the load file and some additional columns as required to facilitate the post load validation. Leverage on tool to create a Post Load report that reports S/4HANA loaded records along with the legacy values side-by-side to allow for 100% check of all these fields in the shortest possible time. Any mismatch will be reported under the Post Load - Error report. |
Business
The following post load validations will be done by business.Completeness
| Task | Action |
|---|---|
Record Count Check | Review the record count report from the Data Team and ensure it is correct by cross-checking with the record count confirmed during Pre-load Business Validations Business may also run transaction code BP to cross check the records created for Counterparties |
Accuracy
| Task | Action |
|---|---|
Field Checks | Check key fields to ensure that Business Partner - Counterparty has been maintained with proper details such as
|
Key Assumptions
- Master Data Standard is up to date as on the date of documenting this conversion approach and data load.
- Object -3040 - BP Counterparties is in scope based on data design and any exception requested by business.
- Object -3007 - BP General- Data for all applicable fields of General Role have been collected in DCT and has been loaded correctly following the specs of the CNV-3007
See also
CNV-3007: Business Partner General - CNV-3007 Business Partners - General (Role 000000) - SyWay Project - Syensqo - Wiki knowledge base