Status

OwnerBAJAJ-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

RoleDescriptionTableConversion Object 
000000

General Role

Business Partner Role - General view Customers + Suppliers (including name and address standards, languages, emails, formats, identifications etc.)

BUT000CNV-3007
TR0151

Counterparty Role - assignment to a Business Partner and validity dates

BUT100CNV-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.

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 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.


List of source systems and approximate number of records
SourceScope

Source Approx No. of Records

Target SystemTarget 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:

  1. Extraction of Counterparty data from source system i.e. Quantum is to be done manually
  2. Cleansing by business team in the source system (Quantum) to ensure that only active and in use records for Counterparties are provided in DCT
  3. Separate DCTs to be provided i.e. for General Role and Counterparty Role including the Company Code data
  4. The extracted records to be converted into a DCT and stored in the Syniti for Transformation
  5. Below Value mapping tables to be created in Syniti:
    1. Counterparty to Business Partner 
    2. Source and target company code
  6. Amount and date format from source system to align with S4HANA 
  7. 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.

TableFieldData ElementField DescriptionData TypeLengthRequirement
BUT100PARTNERBU_PARTNERBusiness Partner NumberCHAR10Mandatory
BUT100RLTYPBU_PARTNERROLE

BP Role

CHAR6Mandatory
BUT100VALID_FROMBU_ROLE_VALID_FROMValidity Start of a BP RoleDEC15Mandatory
BUT100VALID_TOBU_ROLE_VALID_TOValidity End of a BP RoleDEC15Mandatory


Table:  VTBSTC1 - Counterparty Company Code Data - Payment Details

TableFieldData ElementField DescriptionData TypeLengthRequirement
VTBSTC1PARTNERBP_PARTNER_NEWBusiness Partner NumberCHAR10Mandatory
VTBSTC1BUKRSBUKRS

Company Code

CHAR4Mandatory
VTBSTC1WAERSWAERSCurrency CUKY5Mandatory
VTBSTC1ZAHLVIDTB_ZAHLVIDIdentification of Payment Details (Standing Instructions)CHAR10Mandatory
VTBSTC1BVTYPTB_RPBANKPartner Bank DetailsCHAR4

Conditional

VTBSTC1HBKIDHBKIDShort key for a house bankCHAR5Mandatory
VTBSTC1HKTIDHKTIDID for account detailsCHAR5Mandatory
VTBSTC1ZLSCHDZLSCHPayment MethodCHAR1Mandatory
VTBSTC1SZARTTB_SZARTPayment TransactionCHAR1Not in use
VTBSTC1RPZAHLTB_RPZAHL_NEWPayer/payeeCHAR10Conditional
VTBSTC1SPAYRQTB_SPAYRQGenerate Payment RequestCHAR1Conditional
VTBSTC1ZWELSDZWELSList of Respected Payment MethodsCHAR10Conditional


Table:  VTBSTA1 - Counterparty Company Code Data - Assignment of Payment Details as Standing Instructions

TableFieldData ElementField DescriptionData TypeLengthRequirement
VTBSTA1BUKRSBUKRS

Company Code

CHAR4Conditional
VTBSTA1PARTNRBP_PARTNER_NEWBusiness Partner NumberCHAR10Conditional
VTBSTA1WAERSWAERSCurrency CUKY5Conditional
VTBSTA1RANTYPRANTYPContract TypeCHAR1Conditional
VTBSTA1SANLFSANLFProduct CategoryNUMC3Conditional
VTBSTA1SGSARTVVSART

Product Type

CHAR3Conditional
VTBSTA1SFHAARTTB_SFHAARTFinancial Transaction TypeCHAR3Conditional
VTBSTA1SSIGNTB_SSIGNDirection of FlowCHAR1Conditional
VTBSTA1ZAHLVIDTB_ZAHLVIDIdentification of Payment Details (Standing Instructions)CHAR10Conditional


Table:  VTBSTA3 - Counterparty Company Code Data - Authorisations


TableFieldData ElementField DescriptionData TypeLengthRequirement
VTBSTA3BUKRSBUKRS

Company Code

CHAR4Mandatory
VTBSTA3PARTNRBP_PARTNER_NEWBusiness Partner NumberCHAR10Mandatory
VTBSTA3RANTYPRANTYPContract TypeCHAR1Conditional
VTBSTA3SANLFSANLFProduct CategoryNUMC3Conditional
VTBSTA3SGSARTVVSART

Product Type

CHAR3Conditional
VTBSTA3SFHAARTTB_SFHAARTFinancial Transaction TypeCHAR3Conditional
VTBSTA3AUTHORTB_AUTHOR

Authorization indicator for Treasury product

CHAR1Mandatory


Table:  VTBSTA4 - Counterparty Company Code Data - Derived Flows


TableFieldData ElementField DescriptionData TypeLengthRequirement
VTBSTA4BUKRSBUKRS

Company Code

CHAR4Conditional
VTBSTA4PARTNRBP_PARTNER_NEWBusiness Partner NumberCHAR10Conditional
VTBSTA4RANTYPRANTYPContract TypeCHAR1Conditional
VTBSTA4SANLFSANLFProduct CategoryNUMC3Conditional
VTBSTA4SGSARTVVSART

Product Type

CHAR3Conditional
VTBSTA4SFHAARTTB_SFHAARTFinancial Transaction TypeCHAR3Conditional
VTBSTA4SABVERFTB_SABVERF

Procedure for Generating Derived Flows

CHAR5Conditional







Data Cleansing

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.

IDCriticalityError Message/Report DescriptionRuleOutputSource System


























Conversion Process

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


Data Privacy and Sensitivity

Summarize Data Privacy and Sensitivity Requirements, if any


Extraction

Extract data from a source into Syniti Migrate. There are 2 possibilities:

  1. The data exists. Syniti Migrate connects to the source and loads the data into Syniti Migrate. There are 3 methods:
    1. Perform full data extraction from relevant tables in the source system(s).
    2. Perform extraction through the application layer.
    3. Only if Syniti Migrate; cannot connect to the source, data is loaded to the repository from the provided source system extract/report.
  2. The data does not exist (or cannot be converted from its current state). The data is manually collected by the business directly in Syniti Migrate. This is to be conducted using DCT (Data Collection Template) in Syniti Migrate

The agreed Relevancy criteria is applied to the extracted records to identify the records that are applicable for the Target loads

Extraction Run Sheet

Req #Requirement DescriptionTeam Responsible













Selection Screen

If applicable, this section will give the details on any selection screen parameters, including the parameter type, that are required to be entered to ensure consistent data extracts.
Selection Ref ScreenParameter NameSelection TypeRequirementValue to be entered/set





















Data Collection Template (DCT)

Target Ready Data Collection Template will be created for Data Object data with exception of some fields which require transformation as mentioned in the transformation rule.

<Object> DCT Rules

Field NameField DescriptionRule












Extraction Dependencies

List the steps that need to occur before extraction can commence

Item #Step DescriptionTeam Responsible













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 Migrate to make the data Target ready:

  1. Perform value mapping and data transformation rules.
    1. Legacy values are mapped to the to-be values (this could include a default value)
    2. Values are transformed according to the rules defined in Syniti Migrate
  2. 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 DescriptionTeam Responsible













Transformation Rules

Rule #Source systemSource TableSource FieldSource DescriptionTarget SystemTarget TableTarget FieldTarget DescriptionTransformation Logic









































Transformation Mapping

Use the exact name and reference this section in the “Transformation rules” above
Mapping Table NameMapping Table Description








Transformation Dependencies

List the steps that need to occur before transformation can commence
Item #Step DescriptionTeam Responsible













Pre-Load Validation

Project Team

The following pre-load validations will be performed by the Project Team.

Completeness

TaskAction
titlespecific details of what and how the task needs to be performed e.g. which reports are being used etc.





Accuracy

TaskAction
titlespecific details of what and how the task needs to be performed e.g. which reports are being used etc.





Business

The following pre-load validations will be performed by the business.

Completeness

TaskAction
titlespecific details of what and how the task needs to be performed e.g. which reports are being used etc.





Accuracy

TaskAction
titlespecific details of what and how the task needs to be performed e.g. which reports are being used etc.





Load

The load process includes:

  1. Execute the automated data load into target system using load tool or product the load file if the load must be done manually
  2. Once the data is loaded to the target system, it will be extracted and prepared for Post Load Data Validation

Load Run Sheet

Item #Step DescriptionTeam 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

Configuration

List the Configurations required before loading can commence

Item #Configuration Item






Conversion Objects

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)




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 TypeError DescriptionAction Taken










Post-Load Validation

Project Team

The following post-load validations will be performed by the Project Team.

Completeness

TaskAction
titlespecific details of what and how the task needs to be performed e.g. which reports are being used etc.





Accuracy

TaskAction
titlespecific details of what and how the task needs to be performed e.g. which reports are being used etc.





Business

The following post-load validations will be performed by the business.

Completeness

TaskAction
titlespecific details of what and how the task needs to be performed e.g. which reports are being used etc.





Accuracy

TaskAction
titlespecific details of what and how the task needs to be performed e.g. which reports are being used etc.





Key Assumptions

  • Master Data Standard is up to date as on the date of documenting this conversion approach and data load.
  • Data Object is in scope based on data design and any exception requested by business.

Any additional key assumptions.


See also

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.

Change log