| Status | |
|---|---|
| Owner | The person responsible for driving this decision and documenting it. Type @ to mention people by name |
| Stakeholders | The business stakeholders involved in making, reviewing, and endorsing this decision. Type @ to mention people by name |
| Jira Request ID | |
| Jira Development ID |
| Parameter | Value |
|---|---|
| Application System (Source) | Syniti |
| Application System ( Target) | Icertis |
| Business Process Reference |
Syniti which is the source of Currency Conversion Master Data will be integrated with Icertis to create currency exchange masterdata records in Icertis custom Currency Exchange masterdata table using Icertis Business API.
This Exchange rate will be used to convert the local Value into Euros to identify the DOA approvers in agreement.
In Icertis, records will be created/updated in bulk once in a month preferably 1st of every month and it will take the rate of last date of the previous month.
Functional Scope:
This interface facilitates the monthly integration of currency exchange rates from Syniti into Icertis Contract Intelligence (ICI) to support accurate financial calculations and DOA (Delegation of Authority) logic in contracts.
Scope Includes:
Source System:
Target System:
Integration Mechanism:
Data Elements Transferred:
Frequency:
Operation Type:
Usage in Icertis:
Functional Objectives:
Ensure Accurate Currency Conversion
Support DOA Logic in Agreements
Maintain Data Integrity
Enable Auditability and Traceability
Minimize Manual Intervention
Out of Scope:
API Information
Get bulk api prepare for masterdata
POST/v{version}/bulk/masterdata/prepare
Sample Request
POST/{{baseUrl}}/{{version}}/bulk/masterdata/prepare
{
"Data": {
"ContractTypeName": "ICMOtherPartyMaster",
"SelectedAttributes": []
}
}
Create or update masterdata records in Bulk
POST/v{version}/bulk/masterdata

Step | Description | Comment |
|---|---|---|
1 | The execution of the interface is triggered as per the defined job schedule | |
2 | Once in a month, Syniti will call Icertis Business API's to create/update currency exchange masterdata | |
This interface is designed as an API consumer. Icertis will consume data from Syniti via a scheduled integration that uses the Icertis Business API to create or update currency exchange master data records.
The API will be used to:
| Parent | Field | Description | Mandatory (Y/N) | Data Type |
|---|---|---|---|---|
| ExchangeRate | SourceCurrency | Currency code of the local currency | Y | String |
| ExchangeRate | TargetCurrency | Currency code of the target currency (EUR) | Y | String |
| ExchangeRate | Rate | Conversion rate from source to target | Y | Decimal |
| ExchangeRate | EffectiveDate | Date the rate is valid from | Y | Date |
| ExchangeRate | SourceSystem | System providing the rate (Syniti) | Y | String |
| ExchangeRate | LastUpdated | Timestamp of last update | Y | DateTime |
Populate the table below to list the calculation and validation rules per field
| Parent | Field | Rule Type | Rule Instruction |
|---|---|---|---|
| ExchangeRate | Rate | Validation | Must be > 0 |
| ExchangeRate | EffectiveDate | Validation | Must be the last day of the previous month |
| ExchangeRate | SourceCurrency | Validation | Must be a valid ISO currency code |
| ExchangeRate | TargetCurrency | Validation | Must be 'EUR' |
| ExchangeRate | LastUpdated | Calculation | Auto-populated during integration |
Delta or Full Load Requirements
Not Applicable
Provide volumetrics details: Initial load volumes, Number of Records, Expected Frequency, Expected Long term Growth)
Please provide some guidance and/or test data to help the developer unit test the interface. Please include both positive and negative testing (to validate error situations handling)
The developer will need to test repeatedly, so where appropriate provide instructions to reverse the actions performed so the test may be run again, or explain how to create new input data to the test. In particular, the developer will need logons for test users representing the various roles within the approval process.
| ID | Condition | Expected Results |
|---|---|---|
| TC1 | Valid exchange rate data for multiple currency pairs | Record is successfully created or updated in Icertis. |
| TC2 | Full load of 100+ records. | All records processed successfully; API response confirms success. |
| TC3 | Missing mandatory field. | Record is rejected; error logged; alert triggered |
| TC4 | Invalid currency code | Validation error; record rejected |
| TC5 | Negative exchange rate | Validation error; record rejected. |
List any considerations essential for application test planning (e.g., test this before ABC along with DEF separate from GHI). If the development encompasses a user interface, explain how to test it. List any insights as to how this component could be tested the most efficiently.
| Package Name | Parent Package |
|---|---|
Other Development Objects
| Object Type | Object Name | Purpose/High Level Logic | Design Rationale Reference |
|---|---|---|---|
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.
