You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 28 Next »

Status

  Revision in progress

Owner
Stakeholders
Jira Request ID

ERP-101 - Getting issue details... STATUS

Jira Development ID

ERP-289 - Getting issue details... STATUS

High-Level Specification

Application System (Source)SAP ECC (PRS, PF2-050)
Application System (Target)Icertis
Source System InterfaceERP-110
Target System InterfaceERP-261
Business Process Reference03.03.04.05. Manage Contract Master Data

Functional Overview

The objective of this integration is to establish a robust middleware process that facilitates the automated transmission of Currency Exchange Rate Master data from SAP ECC(PRS, PF2-050) to the Icertis Contract Intelligence(ICI) platform. The integration ensures that Icertis always has up-to date currency and exchange-rate information essential for contract calculations and validations. This process performs the following functions.

  • Receives currency and exchange-rate data from SAP ECC (PRS, PF2-050) through the ERP-110 Interface.
  • Maps and transforms the data to align with the structural and validation requirements of the Icertis APIs.
  • Orchestrates the end-to-end data flow, including transmission, response handling and error management.

This integration is triggered daily through a scheduled job to ensure that Icertis consistently receives the most recent exchange-rate information required for contract evaluation and processing.

Scope and Objectives

  • Scope:
    This request covers the end-to-end integration required to transform and create/update currency exchange rate data flowing from SAP ECC (PRS, PF2-050) to Icertis. It includes the middleware logic, data mapping, orchestration, and exception handling necessary to ensure accurate and reliable data transmission.
  • Objectives:
    • Automate the transfer of currency and exchange rate data from SAP ECC(PRS, PF2-050) to Icertis.
    • Ensure that the data is transformed and mapped according to Icertis API specifications.
    • Handle exceptions, retries and monitoring to ensure the process runs reliably.
    • Create a custom integration that connects SAP ECC (PRS, PF2-050) and Icertis so that currency exchange rates can be synchronized smoothly.

Process Flow Diagram


draw.io

Source page access restriction: Click the link below to check if the page is accessible.
/display/ER/REMOVE+----+ERP-288+System+Interface+-+Currency+Conversion+ECC+to+Icertis

Step

Description

Comment

1

SAP ECC(PRS, PF2-050) will execute the job daily to send latest currency Exchange Rate xml data to CPI

Through daily scheduled job at SAP ECC(PRS, PF2-050) side

2

Transform and map data to Icertis API format

Data mapping, validation, enrichment

3

Orchestrate data transmission to Icertis

API calls, error handling, logging

4

Receive response from Icertis

Success/failure, process feedback

5

Log results and handle exceptions by triggering an email to Support Team

No retry, data will be uploaded next day

Assumptions

  • SAP ECC (PRS, PF2-050) serves as the authoritative source for clean and validated currency and exchange rate data.
  • Icertis APIs for currency master data ingestion are fully configured, available, documented, and accessible for integration.
  • The middleware platform SAP CPI, reliably supports secure API communication, comprehensive error handling, and transaction-level logging.
  • Performance benchmarks are satisfied, ensuring that data transfers complete successfully within the defined batch processing window.

Dependencies

  • ERP-110 (Source system interface) and ERP-290 (Target system interface) must be available and operational to facilitate seamless data exchange. 
  • Currency and exchange-rate data in SAP ECC(PRS, PF2-050) must be updated in timely manner to ensure accuracy and consistency.
  • Scheduled batch job execution in SAP ECC (PRS, PF2-050) must be maintained to support timely data extraction and transmission

Security, Integrity and Controls

Secure authentication mechanisms are in place at middleware for access to both SAP ECC and Icertis systems:

  • Secure HTTPS protocol is used for all data transfers between the middleware and SAP ECC, ensuring encrypted communication and protection against unauthorized access.
  • OAuth 2.0 authentication is implemented for accessing Icertis APIs via an Azure-registered application, providing token-based security and controlled access
  • Audit logging captures all integration transactions, including timestamps, request/response metadata, and error details for traceability and compliance.

Configuration Requirements

  • Azure Application Registration

    • Since Icertis relies on Azure Active Directory as its identity provider (IdP), an application must be registered in Azure to enable OAuth 2.0 token generation and validation. This establishes trusted access between the middleware and the Icertis APIs.

    • The application registration includes defining the client ID, client secret, scope, and API permissions required to access the Icertis endpoints.


Design Rationale

This interface is designed to facilitate seamless integration between Syniti (source) and Icertis (target) for currency/exchange rate master data. The middleware orchestrates the data flow, ensuring mapping, transformation, and reliable delivery

Data Structure

The following fields will be used to provide the required data structure of the interface:

Requested Sample (Extract from SAP ECC):

Exchange Rate TypeFrom CurrencyTo CurrencyValid FromExchange RateRation (from)Ratio (to)
MCHFEUR08.07.2025/0,9351011
MUSDEUR08.07.2025/117,225001100

 Currency conversion file generated as per ERP-110 Currency Conversion into Ariba .FS should be re-used for Icertis as well. CPI will filter out the EUR conversion rate.

From Currency

Unique Name

To Currency

Exchange Rate

USD

USD:EUR

EUR

0.86

CAD

CAD:EUR

EUR

0.61

 Transformation in CPI (Icertis required format):

Field NameDescriptionValue
ContractTypeNameName of the MasteredataStatic value - ICMCurrencyConversion
NextState
Always Blank
RequestIdentifierUse “RequestIdentifier” to uniquely identify each item on the result endpoint’s response. This can be used to track the status of each job item of a bulk JobAuto Increment (Eg: 1,2,3)
EndpointVersion
  • “EndpointVersion” don’t have any default value set. Ensure to set it to a number. The recommended value is 3 for best error handling and reporting. Supported values are 1, 2, and 3. 1 – Not recommended, 2 – Enables attribute validation, and 3 – Handles concurrency errors and enables attribute validation.
Static value - 3
UseExternalId
Static value - true
SysIdUnique technical identifier of the record
  • Blank when creating the masterdata
  • 32 characters when updating
ICMUniqueName

Concatenate FromCurrency

and ToCurrency with ":" colon in the middle

Pass Unique Name of the Currency Pairs
ICMFromCurrency

Get the To-currency

from ECC extract

FromCurrency (Eg: USD, CAD)
ICMAgreementCodeUnique masterdata code
ICMToCurrency

Get the From currency

 from ECC extract

ToCurrency - Static Value EUR
ICMRate-Replace comma with period (.). 
-Remove the forward slash / (-1)
Rate (1.07)
TemplateSelection
Static Value - none
EndPointVersion
Static Value - 1


Processing Logic

  • Inbound Trigger

    • CPI receives the currency exchange rate data file from SAP ECC(PRS, PF2-050).
  • Data Validation

    • If any record fails validation, CPI rejects the entire batch and sends an error notification to the Integration support.
  • Transformation

    • CPI applies any required transformation rules:
      • Maps source field names/formats to the target structure required by Icertis
  • Routing

    • CPI routes the validated data to the next integration step (e.g., prepares payload for Icertis Business API).
    • Ensures secure transmission (e.g., via HTTPS, OAuth2).
  • Error Handling

    • If any error occurs during processing (validation, transformation, routing), CPI logs the error, stops the process, and sends an alert to the Integration support team.
    • No partial loads—either the entire batch is processed successfully, or it is rejected.
  • Monitoring & Logging

    • CPI maintains detailed logs for each integration run.
    • Job status, error details, and audit trails are available on the CPI monitoring dashboard.
    • Email alerts are sent for failures.

Delta or Full Load Requirements

  • Full Load:
    • The interface always pushes the complete set of exchange rates for all supported currencies.
    • No delta tracking is required since the data is refreshed daily.

Language Requirements

  • No multilingual support required for exchange rate data.
  • All fields are numeric or standard ISO codes.

User Interface Requirements

Not Applicable



Volumetrics

  • Daily load of 70 currency pairs to be created/updated in bulk
  • The first load will create the currency exchange masterdata
  • Subsequent loads will update the existing currency exchange masterdata


Performance Consideration

Scheduling and Execution Window

  • The integration job should be scheduled during off-peak hours (e.g., early morning) to avoid contention with other system processes.


Error Handling

1. Validation Errors

  • Cause: Missing mandatory fields, invalid currency codes, negative exchange rates.
  • Handling:
    • Reject the whole batch.
    • Log the error with detailed message.
    • Notify integration support team via email or dashboard.
    • Continue processing remaining records.

2. API Failures

  • Cause: Icertis Business API is unavailable, authentication failure, timeout.
  • Handling:
    • If retries fail, log the failure and raise an alert.
    • Notify support team with error code and timestamp.

3. Data Load Failures

  • Cause: Payload formatting issues, bulk upsert failure.
  • Handling:
    • Validate payload structure before submission.
    • Use staging logs to identify failed records.
    • Allow manual reprocessing of failed records.

4. Partial Success

  • Cause: Some records succeed, others fail due to validation or API issues.
  • Handling:
    • Reject the whole record and notify the admin team on failure

5. Monitoring and Alerts

  • Tools: Integration monitoring dashboard, email notifications, log files.
  • Recipients: Integration support team, business operations team.
  • Alert Types:
    • Job failure


 Interface Alert & Monitoring

  • Alerts should be configured for:
    • API failures
    • Validation errors
  • Monitoring tools (middleware logs) should notify:
    • Integration support team
    • Business users (email)
  • Retry logic should be in place for transient failures.

Testing

Test Conditions and Expected Results

TC1Valid exchange rate data for Source to EUR currency pairsRecord is successfully created or updated in Icertis.
TC2Full load of records with valid EUR pairsAll records processed successfully; API response confirms success.
TC3Missing mandatory field.Record is rejected; error logged; alert triggered
TC4Negative exchange rateValidation error; record rejected.

Test Considerations/Dependencies

Development Details

Package

Package NameParent Package




Other Development Objects

Object TypeObject NamePurpose/High Level LogicDesign Rationale Reference









Appendix

Sample payload:

{
    "Data": {
        "JobItems": [
            {
                "SysId": "96c08d87-3c89-4b7d-b075-e360bb41db07",
                "UseExternalId": "false",
                "NextState": "",
                "EndPointVersion": "3",
                "RequestIdentifier": "1",
                "RequestBody": {
                    "ICMFromCurrency": "INR",
                    "ICMRate": "0.0094",
                    "Name": "INR:EUR",
                    "ICMToCurrency": "EUR"
                }
            },
            {
                "SysId": "5449222c-3d3a-4044-baae-a17165381ed1",
                "UseExternalId": "false",
                "NextState": "",
                "EndPointVersion": "3",
                "RequestIdentifier": "2",
                "RequestBody": {
                    "ICMFromCurrency": "AUD",
                    "ICMRate": "0.54",
                    "Name": "AUD:EUR",
                    "ICMToCurrency": "EUR"
                }
            }
        ],
        "HasMoreData": "false",
        "ContractTypeName": "ICMCurrencyExchangeRate"
    }
}


See also


No files shared here yet.

Change log

Version Published Changed By Comment
CURRENT (v. 28) Dec 12, 2025 02:25 KUMAR-ext, Rajesh
v. 57 Dec 11, 2025 16:25 KUMAR-ext, Rajesh
v. 56 Dec 11, 2025 16:21 KUMAR-ext, Rajesh
v. 55 Dec 11, 2025 16:10 KUMAR-ext, Rajesh
v. 54 Dec 11, 2025 14:50 KUMAR-ext, Rajesh
v. 53 Nov 12, 2025 14:51 MCARTHUR-ext, Richard
v. 52 Nov 10, 2025 09:03 KUMAR-ext, Rajesh
v. 51 Nov 10, 2025 08:21 KUMAR-ext, Rajesh
v. 50 Nov 10, 2025 07:54 KUMAR-ext, Rajesh
v. 49 Nov 10, 2025 06:28 EPASINGHE-ext, Kapila

Go to Page History

  • No labels