MDAL APIs for TPH
The Scope of the new APIs are related to Standalone TPH / Payment Initiation TBC, where the payment system is built on top of a Transact base system which will not hold Customers and their account details for Payment processing, instead it has the capability to interact with an external system to perform customer and account validation and also get their restrictions that are required for further processing the payments.
Here the proposed external systems for persisting customer and account details along with their restrictions are Party Microservice and Arrangement Microservice and then access them through MDAL (Master Data Access Layer) layer. Here MDAL is a Temenos Framework that has been developed to enable Transact based Business Applications to uniformly access all the data that are common in nature which are either maintained on the same platform or externally.
For example: Customer, Account static information, Currency and its rate, and Interest Rates etc.
Two new APIs are developed in this scope, namely getAccountPaymentDetailsV5 and getAccountPostingRestrictionsV5.
In AMS, a new enterprise API is introduced (compatible with MDAL function) to retrieve the customer account details by allowing to pass the alternate reference id without passing the alternate type.
Example: This new API will accept the IBAN number or BBAN number, Legacy Account Number and many more and return the account details for an account for further Payment processing at Standalone TPH system or PI TBC system.
The New API getAccountPayementDetails will take IBAN number, BBAN number, Legacy Account Number and many more, as path param and returns the account details. There are other query parameters which are required to process the request.
Path URL: /holdings/accounts/{accountId}/accountPaymentDetails
The following are the parameters:
- accountId (path param) - Identifier of the Account. Often referred to as the account number.
- accountCompany (query param) - Company of the account to be created. It's a mandatory parameter.
- paymentCurrency (query param) - This field holds the transaction currency or currency in which payment is initiated.
- accountSwitch (query param) - Indicates if availability of account switch details should be checked.
- beneficialCustomer (query param) - Indicates if beneficial owners of the account should be checked.
The following is the response for getAccountPaymentDetailsResponse.
{
"accountTitles": {
"accountTitle": "string"
},
"beneficialOwners": {
"beneficialOwner": "string"
},
"switchDetails": {
"isSwitchEnabled": "string",
"switchAccountId": "string",
"switchIBAN": "string",
"switchBic": "string",
"switchClearingCode": "string"
},
"accountStatusDetails": {
"accountStatus": "string",
"failureType": "string",
"failureCode": "string",
"failureMessage": "string"
},
"accountId": "string",
"accountCompany": "string",
"accountCurrency": "string",
"customerId": "string",
"accountIBAN": "string",
"accountOfficer": "string",
"categoryId": "string",
"accountClassification": "string",
"reportingCompany": "string"
}
The new enterprise API accepts the path parameter of account ID where account ID is of Transact account number or any non-transact core banking system and accepts the query parameters for evaluating and return the posting restring details.
Path URL: /holdings/arrangements/{accountId}/postingRestrictions
The following are the parameters:
- accountId(path param) - Identifier of the Account. Often referred to as the account number.
- txnSign(query param) - Transaction Type for the Account.
- txnCode(query param) - Transaction Code for the Account.
The following is the response for getAccountPostingRestrictionsResponse.
{
"postingRestrictionDetail": [
{
"postingRestrictionCode": "25",
"restrictionType": "DEBITS",
"restrictionDescription": "Post No Credits"
}
]
}
In this topic