The Temenos example solution showcases how to connect a Teneo solution with the Temenos Transact REST api. The example flows in the solution demonstrate how customers, accounts & payment orders can be retrieved as well as how to filter customers, accounts & payment orders from T24 Transact Model Bank.
The solution contains a Temenos backend integration containing methods for authentication, retrieval of customers, accounts & payment orders as well as for filtering customers, accounts & payment orders. Since the source code of the integration is embedded in the solution, it can be easily extended or used as a starting point for new methods.
For each core method in the Temenos integration, the solution contains a corresponding example flow:
Temenos provides a support for API token based authentication method that allow a Teneo bot to interact with Temenos on the user's behalf. This example solution contains flow to demonstrate API token based authentication approach.
These instructions assume you have a Temenos developer community account. Alternatively, you can signup for a free user account. These instructions assume you have downloaded and imported the Temenos solution. See instructions below.
Please make sure that you're using your work/business email for signup process as the Base camp admin will approve your API key request only for work/business email holders.
It's time to request API key in Base camp portal in order to experience Temenos transact API resources including T24 Transact Model Bank by using Temenos Teneo bot
Note: In web form, If a Country field is empty then close the web form and click on 'user icon' located at the top most right side corner and click on My Profile menu.
Getting the API key may take some time as it has to be approved by Temenos base camp admin team.
This API key should be stored inside the global variable Temenos_sAPIKey.
|Variable Name||Example value||Description|
|Temenos_sAPIKey||'yVbACxxxxxxxmlMxxxxxxdpr5i'||Temenos user account API key.|
You can configure the number records to be fetched from a sandbox system and by default it's set to 5 records per request. The value of the global variable should be a type of String like this:
|Variable Name||Example value||Description|
|Temenos_nPageSize||'5'||Page size to limit the records in the result.|
Your solution is now ready. You can test this in Try Out by asking
I want to login followed up with
I want to retrieve list of customers. The Teneo bot would then provide the customers list, which are available in your Temenos T24 Transact Model Bank.
User: I want to login Bot: Hi there! I'm a Temenos Connector virtual assistant from Artificial Solutions. Please enter an API key provided by Temenos.
Bot: Hi there! Your login has been successful!
User: Can I retrieve list of customers
Bot: Below are list of customers available in the system and you are seeing the first 5 records of 936. NOKIA US-66052, Harry Crisp-100100, Helen Roberts-100105, Helsa Reeve-100106, Harvey Reid-100107,
User: I want to retrieve list of payment orders
Bot: Below are list of payment orders available in the system and you are seeing the first 5 records of 709. [Id: BNKCHAPSRETN00001, Sender: Coca-Cola, Receiver: JOE ROOT, Amount: 69.09 GBP], [Id: PI18008RAMYARX2Q, Sender: Nike, Receiver: Steve, Amount: 38 EUR], [Id: PI1800EBACTOUT01, Sender: Nike, Receiver: Carol Forbes, Amount: 54.7 EUR], [Id: PI1800EBACTOUT02, Sender: Nike 123, Receiver: Mike Carls, Amount: 54 GBP], [Id: PI1800EBACTOUT04, Sender: Nike, Receiver: Mike Carls, Amount: 67.7 EUR],
User: Can I retrieve list of accounts
Bot: Below are list of accounts available in the system and you are seeing the first 5 records of 2668. [AccountId: 100005, CustomerName: Warner Buffet], [AccountId: 100013, CustomerName: David Burroughs], [AccountId: 100021, CustomerName: Peugeot Family], [AccountId: 100037, CustomerName: Mrs Buffet], [AccountId: 100048, CustomerName: Robert Bosch Jr],
User: I want to filter customers based on nationality
Bot: Please choose one of the following nationality. American, British, Canadian, Indian, German, French
Bot: Below are list of customers available for a chosen nationality and the results are limited to 5. NOKIA US-66052, Harry Crisp-100100, Helen Roberts-100105, Helsa Reeve-100106, Harvey Reid-100107,
User: Can I filter the payment orders based on payment status
Bot: Please choose one of the following payment status. AcceptedCustomerProfile, AcceptedSettlementCompleted, AcceptedSettlementInProcess, AcceptedTechnicalValidation, AcceptedWithChange, PartiallyAccepted, Pending, Received, Rejected
Bot: Below are list of payment orders for a chosen payment status and the results are limited to 5. PI2007903CXTDMPQ, PI2007906C0LV94V, PI2007906KW9H0FR, PI200790CC1JWK3G, PI200790J9CR3VDV,
User: I want to filter accounts based on currency code
Bot: Please choose one of the following currency. USD, INR, CAD, GBP, EUR
User: US Dollars
Bot: Below are list of accounts for a chosen currency and the results are limited to 5. 100005, 100013, 100048, 100056, 100102,
User: I want to logout
Bot: Your logout has been successful!
For simplicity, the bot answers in this solution are text only. Depending on the channel, interactive cards can be added, for example to add buttons or allow the user to select items from a list.
Temenos transact API offers API token key based authentication. By using that API key, the developers can allow their users to authenticate with Temenos sandbox system.
This Temenos solution contains a flow called Bot asks an user to login into Temenos. This flow is responsible to set a value of global variable called Temenos_bHasUserLoggedIn which is included at the beginning of each other flows that checks the user's authentication to access the flows. This flow checks if the global variables Temenos_sAPIKey and Temenos_sInstanceEndPointUrl contains an values which is needed to perform API requests. If the Temenos_bHasUserLoggedIn variable is false, this flow answers an user authentication failure message.
By default, the Temenos Bot asks an user to login into Temenos flow uses the stored credentials from global variables to authenticate the user. This flow uses Temenos's API key based authentication mechanism, which provides instructions in the getting started section on this page explain how to prepare your solution using this authentication approach.
This authentication uses stored credentials from global variables Temenos_sAPIKey and Temenos_sInstanceEndPointUrl to prepare an authentication with Temenos sandbox environment and the API key has been used as authorization header value and it ensures an access against Temenos sandbox instance url stored on Temenos_sInstanceEndPointUrl and return a successful authentication.
This Temenos_sAPIKey can be used for subsequent requests that require authentication across flows in the Temenos solution. The global variable is used by the Temenos integration for the various REST requests.
The solution uses the stored credentials approach by default, mostly because it is easiest and quickest to get started. However, because this authentication flow passes the user’s credentials back and forth it is advised to use this authentication method for development purposes only. Additionally, using stored credentials means that all objects created by the bot are created by the same user. Therefore, it might be preferred to implement an authentication flow that enables Teneo to interact with Temenos on the user's behalf.
However, this authentication flow can still be used in production grade only when a frontend connector or a channel connector supplies necessary user credentials instead of hardcoding them in Teneo in a more secured way by using any industrial standard encryption techniques.
The authentication flow for the API Key based authentication in combination with Teneo roughly looks like this:
For more details on Temenos and API Key based authentication, see: Digging Deeper into API Key in Temenos
Was this page helpful?