0% found this document useful (0 votes)
68 views

IRIS - API - Creation - Steps-V2 - Ali Qazi 1

iRIS API

Uploaded by

Iniyanila G
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
68 views

IRIS - API - Creation - Steps-V2 - Ali Qazi 1

iRIS API

Uploaded by

Iniyanila G
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 34

Design Studio

Pre-requisites
Archetype-catalog.xml file

Create Maven Project for Service


Open the Design Studio and Click on File -> New -> Maven Project

Configure > Add Local Catalog


Create Service Container Project
Open the Design Studio and Click on File -> New -> Maven Project
Workbench
Workshop 1 – Process FundsTransfer - POST
Artifacts generated

Add the generated artifacts to src/main/resources folder

Remove existing files.


Right-click IRIS-Demo > Run As > Maven Install

Maven Clean if Error

Inside the jar go to the below path as shown in the image and open pom.xml

Copy groupId, artifactId and version as highlighted below in pom.xml

Right Click Container project > Run As > Maven Build

This will create .war file in target

In the IRIS-DemoContainer.war file , open pom.xml as shown below


Add a section called dependency and paste the copied groupId, artefactId and version in pom.xml as
shown below

Copy the IRIS-Demo-0.0.1-SNAPSHOT.jar and place it in this path inside the IRIS-DemoContainer.war
file “C:\Temenos\R20\Products\DesignStudioT24-R20.21\workspace\IRIS-Demo\IRIS-
DemoContainer\target\IRIS-DemoContainer.war\WEB-INF\lib\”
Update standalone-comms.properties file

C:\Temenos\R20\Products\DesignStudioT24-R20.21\workspace\IRIS-Demo\IRIS-DemoContainer\
target\IRIS-DemoContainer.war\WEB-INF\classes\irf-config\

To Post request use:


http://localhost:9089/IRIS-DemoContainer/api/v1.0.0/party/payments/generic

If Credentials are needed then can be inserted like this:

http://localhost:9089/IRIS-DemoContainer/api/v1.0.0/party/payments/generic?validate_only=true

validate_only=true shall be removed as this will only validate

File > Import > Browse Swagger File

Construct base URL


Request:

{
"header": {
},
"body": {
"debitAccountId": "10995",
"debitCurrencyId": "USD",
"creditAccountId": "11193",
"creditCurrencyId": "USD",
"creditAmount": 500,
"transactionType": "AC"
}
}

Response:

{
"header": {
"transactionStatus": "Live",
"audit": {
"T24_time": 5023,
"responseParse_time": 1,
"requestParse_time": 2,
"versionNumber": "1"
},
"id": "FT201087ZPVV",
"status": "success"
},
"body": {
"transactionType": "AC",
"debitCurrencyId": "USD",
"processingDate": "2020-04-17",
"creditCurrencyId": "USD",
"debitAccountId": "10995",
"creditAccountId": "11193",
"creditAmount": 500
}
}
Workshop 2 – Create Lending - POST
Create AA Lending using API.

Version to be copied.

AA.ARRANGEMENT.ACTIVITY,AA.NEW

API > Create Provider API


File > New > Maven Project > irf-service-archetype
Remove file from src/main/resources and place newly generated ones

Run As > Maven Clean

Run As > Maven Install

Got error:
Errors in swagger file demo-api-v1.0.0-swagger.json:
[INVALID_DESCRIPTION:Description is mandatory and should be in same
line:payload, INVALID_DESCRIPTION:Description is mandatory and should be in
same line:credentials, INVALID_DESCRIPTION:Description is mandatory and
should be in same line:companyId]

Fix error by updating swagger file


Now it is time to deploy in the container file.

Open the jar file. And go to the directory and open pom.xml file to get groupId, VersionId, artifact id.

<groupId>com.temenos.demo</groupId>
<artifactId>IRIS-Demo-ConsumerLoan</artifactId>
<version>0.0.1-SNAPSHOT</version>
In the container file, add dependency for this

Place jar file in the web-inf/libs


Deploy in deployments folder

Import swagger file in Postman

File > Import > Browse Swagger File

http://localhost:9089/IRIS-DemoContainer/api/v1.0.0/party/products

Request:

{
"header": {
"override": {
"overrideDetails": [
{
"id": "DM.CONFIRM.DOC",
"description": "Have you received Loan Agreement/AAA*203 from 100100}RECEIVED_NO
T RECEIVED",
"responseCode": "RECEIVED"
}
]
}
},
"body": {
"customerId": "100100",
"productId": "CONSUMER.LOAN",
"currencyId": "USD",
"commitment": {
"amount": 5000,
"term": "3M"
}
}
}

Reponse:

{
"header": {
"transactionStatus": "Live",
"audit": {
"T24_time": 8024,
"responseParse_time": 18,
"requestParse_time": 1
},
"aaaId": "AAACT20108KNGQLYV5",
"status": "success"
},
"body": {
"arrangementActivity": {
"arrangementId": "AA201085TJ9W",
"productId": "CONSUMER.LOAN",
"activityRef": "LENDING-NEW-ARRANGEMENT",
"customerId": 100100,
"currencyId": "USD"
}
}
}
Workshop 3 – Create Customer - POST
CUSTOMER,TEST.API.V.1.0.0

Create Provider Api

 Remove {id} from URL

File > New > Maven Project


Copy the file created from workbench to src/main/resources (remove existing)

Before:

After:

Run As > Maven Clean

Run As > Maven Install


Got Error:
Errors in swagger file demo-api-v1.0.0-swagger.json:
[INVALID_DESCRIPTION:Description is mandatory and should be in same
line:credentials, INVALID_DESCRIPTION:Description is mandatory and should
be in same line:companyId]

 Add description field in credentials & companyId in swagger file.

Maven Clean

Maven Install

[INFO] BUILD SUCCESS

Target File Created.

Now it is time to deploy in the container file.

Open the jar file. And go to the directory and open pom.xml file to get groupId, VersionId, artifact id.
<groupId>com.temenos.demo</groupId>

<artifactId>IRIS-Demo-Customer</artifactId>

<version>0.0.1-SNAPSHOT</version>

In the container file, add dependency for this

Add the jar file to web-inf/lib


Update deployments file.

Time to test webservice.

URL:
http://localhost:9089/IRIS-DemoContainer/api/v1.0.0/party/customers/customer/testing

Headers:

Request:

{
"header": {
},
"body": {
"Name": [
{
"Name": "Ali Qazi"
}
],
"SecondName": [
{
"SecondName": "Sadan"
}
],
"Mnemonic": [
{
"Mnemonic": "C19990"
}
],
"ShortName": [
{
"ShortName": "Ali"
}
],
"Sector": [
{
"Sector": "1001"
}
],
"Language": [
{
"Language": "1"
}
]
}
}
Response:

{
"header": {
"transactionStatus": "Live",
"audit": {
"T24_time": 748,
"responseParse_time": 1,
"requestParse_time": 0,
"versionNumber": "1"
},
"id": "190298",
"status": "success"
},
"body": {
"Language": [
{
"Language": "1"
}
],
"Sector": [
{
"Sector": "1001"
}
],
"Mnemonic": [
{
"Mnemonic": "C19990"
}
],
"ShortName": [
{
"ShortName": "Ali"
}
],
"SecondName": [
{
"SecondName": "Sadan"
}
],
"Name": [
{
"Name": "Ali Qazi"
}
]
}
}
Workshop 4 – Create Customer with Multivalues – POST

Multi-value field:

Request:

{
"header": {
},
"body": {
"Name": [
{
"Name": "Ali Name 1"
},
{
"Name": "Ali Name 2"
}
],
"SecondName": [
{
"SecondName": "Ali ShortName 1"
},
{
"SecondName": "Ali ShortName 2"
}
],
"Mnemonic": [
{
"Mnemonic": "C19991"
}
],
"ShortName": [
{
"ShortName": "Ali"
}
],
"Sector": [
{
"Sector": "1001"
}
],
"Language": [
{
"Language": "1"
}
]
}
}

Response:

{
"header": {
"transactionStatus": "Live",
"audit": {
"T24_time": 2248,
"responseParse_time": 10,
"requestParse_time": 5,
"versionNumber": "1"
},
"id": "190299",
"status": "success"
},
"body": {
"Language": [
{
"Language": "1"
}
],
"Sector": [
{
"Sector": "1001"
}
],
"Mnemonic": [
{
"Mnemonic": "C19991"
}
],
"ShortName": [
{
"ShortName": "Ali"
}
],
"SecondName": [
{
"SecondName": "Ali ShortName 1"
},
{
"SecondName": "Ali ShortName 2"
}
],
"Name": [
{
"Name": "Ali Name 1"
},
{
"Name": "Ali Name 2"
}
]
}
}
Workshop 5 – Reverse FundsTransfer – DELETE

Reverse FT

Set function to reverse in …service…xml file in services folder of generated artifacts


Same steps:

Request:
http://localhost:9089/IRIS-DemoContainer/api/v1.0.0/party/payments/FT2009405KLT/generic

id mentioned in the URL

Response:

{
"header": {
"transactionStatus": "Reversed",
"audit": {
"T24_time": 5495,
"responseParse_time": 1,
"requestParse_time": 1844,
"versionNumber": "2"
},
"id": "FT2009405KLT",
"status": "success"
},
"body": {
"transactionType": "AC",
"debitCurrencyId": "CAD",
"processingDate": "2020-05-01",
"customerRate": "1.362924",
"creditCurrencyId": "USD",
"debitAccountId": "79607",
"creditAccountId": "20656",
"overrides": [
{
"override": "DATE.GT.14}DATE MORE THAN 14 DAYS AHEAD"
},
{
"override": "DR.GT.FWD}DEBIT VALUE EXCEEDS MAX FWD VALUE"
},
{
"override": "GT.CR.VAL}CREDIT VALUE EXCEEDS MAX FWD VALUE"
}
],
"creditAmount": 132
}
}

From T24:
General
This is used to list all the available services:

http://localhost:9089/IRIS-DemoContainer/api/v1.0.0/meta/apis

{
"services": [
{
"service": "party-payments-demo-api.service.v1.0.0",
"endPoints": [
{
"method": "DELETE",
"uri": "/v1.0.0/party/payments/{id}/generic"
}
]
},
{
"service": "party-products-demo-api.service.v1.0.0",
"endPoints": [
{
"method": "POST",
"uri": "/v1.0.0/party/products/"
}
]
},
{
"service": "party-customers-demo-api.service.v1.0.0",
"endPoints": [
{
"method": "POST",
"uri": "/v1.0.0/party/customers/customer/testing"
}
]
}
],
"key": "demo-api-v1.0.0-swagger"
}
Workshop 6 – Enquiry for Account Details – GET
Remove resources and replace with generated ones

Add dependency for this ws

<groupId>com.temenos.demo</groupId>
<artifactId>IRIS-Demo-getAccountList</artifactId>
<version>0.0.1-SNAPSHOT</version>

Add the jar file in web-inf/lib


Testing the webservice

http://localhost:9089/IRIS-DemoContainer/api/v1.0.0/party/accountlist?accountId=16837

Response:

{
"header": {
"audit": {
"T24_time": 902,
"responseParse_time": 0,
"requestParse_time": 1
},
"page_start": 1,
"page_token": "202004174800777782.01,99",
"total_size": 1,
"page_size": 99
},
"body": [
{
"accountId": "16837",
"customerId": "100391",
"mnemonic": "PACKERK",
"currency": "USD"
}
]
}
Go to:
C:\Temenos\java\jdk1.8.0_162\bin>keytool -genkey -alias temenos -keyalg RSA -keystore
temenos.keystore -validity 365

Microsoft Windows [Version 6.3.9600]


(c) 2013 Microsoft Corporation. All rights reserved.

C:\Temenos\java\jdk1.8.0_162\bin>keytool -genkey -alias temenos -keyalg RSA -keystore temenos.keystore -validity 365
Enter keystore password:
Re-enter new password:
What is your first and last name?
[Unknown]: localhost
What is the name of your organizational unit?
[Unknown]: IT
What is the name of your organization?
[Unknown]: temenos
What is the name of your City or Locality?
[Unknown]: Birmingham
What is the name of your State or Province?
[Unknown]: WestMidlands
What is the two-letter country code for this unit?
[Unknown]: GB
Is CN=localhost, OU=IT, O=temenos, L=Birmingham, ST=WestMidlands, C=GB correct?
[no]: yes

Enter key password for <temenos>


(RETURN if same as keystore password):
Re-enter new password:

Warning:
The JKS keystore uses a proprietary format. It is recommended to migrate to PKCS12 which is an industry standard format
using "key
tool -importkeystore -srckeystore temenos.keystore -destkeystore temenos.keystore -deststoretype pkcs12".

You might also like