Temenos

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.

picture

Solution contents

Temenos integration

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.

Example flows

For each core method in the Temenos integration, the solution contains a corresponding example flow:

  • User asks to retrieve list of Accounts
  • User asks to retrieve list of Customers
  • User asks to retrieve list of payment orders
  • User asks to filter the accounts based on currency code
  • User asks to filter the customers based on nationality
  • User asks to filter the payment orders based on payment status
  • Bot asks an user to login into Temenos
  • User asks to logout from Temenos

Authentication 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.

Getting started

Prerequisites

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.

Request API key (Sandbox environment)

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

  1. Using your developer community account, log in to your Temenos base camp portal.
  2. After login, Click on Getting Started With Temenos APIs tile located under the search box.
  3. Click on Request an API Key button.
  4. Fill up the web form as you prefer and tick the checkbox for Terms and Service and click on the 'Submit' button.

    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.

  5. Click on the 'Edit' button and fill up the Country as you wish and click on the 'Save' button.
  6. Repeat the #2 step and you will be able to Submit the web form for Request an API key process.
  7. After submitting the form, you will be notified with an message You will also receive consumer key through email. Save the email for future reference..

    Getting the API key may take some time as it has to be approved by Temenos base camp admin team.

  8. Your Temenos transact API key request is fulfilled and you're free to access the developer sandbox by using this API key now onwards.

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.

Add configuration to your solution (Optional)

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.

To update the global variables, proceed as follows:

  1. In a text editor, you can update the Global variable by manually editing the values as you wish.
  2. In you Temenos solution, click the 'Solution' tab and select 'Globals' in the purple navigation bar.
  3. Select the 'Variables' tab at the top, select the variable called Temenos_nPageSize.
  4. In the panel on the right, click 'Edit'. You can now update the value of the variable by pasting the updated string values.
  5. When done, click 'Save All' in the top right corner.

Test in tryout

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.

Example conversations

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.
User: Yefxxxxxxx3exxxxxxxxxyi
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
User: American
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
User: 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.

More on authentication

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:

image

For more details on Temenos and API Key based authentication, see: Digging Deeper into API Key in Temenos

Download

  • Download the solution from the following link: Temenos.solution.
  • Import the solution into Teneo. For more details see: How to import solutions.
  • Once imported, please make sure to assign the Lexical Resources called 'Teneo Lexical Resource English'.

Was this page helpful?