Optional Technical Configurations
This page contains technical details for certain parts of the solution to help users understand how it works and what more can be configured to fit your business requirements.
Homepage
For Account Alias in FTOS_IB_UserXBankAccount_After_Insert the alias is updated because there are several places to insert the record in FTOS_IB_UserXBankAccount. When a new record is created in FTOS_IB_UserXBankAccount the sustem gets the data from FTOS_IB_BankAccount, FTOS_BP_BankingProduct, FTOS_BP_Category, FTOS_BP_SubCategory and FTOS_CMB_Currency based on FTOS_IB_UserXBankAccountid in order to create aliases and update it. After the user clicks the Save button a server script for update FTOS_IB_UpdateUXBAliasByEndUser runs.
Depending on the type of product, the system creates aliases based on the following rules:
- Current accounts (basic+standard): “Current Account”+” “+<FTOS_IB_BankAccount>CurrencyId (of that account)
- Term deposits: “Term Deposit”+” “+<FTOS_IB_BankAccount>CurrencyId (of that account) + <FTOS_IB_BankAccountExtLiabilities>Tenor + “Months” (if tenor exists)
- Saving Accounts: “Savings Account”+” “+<FTOS_IB_BankAccountExtLiabilities>CurrencyId (of that account)
- Loans: <FTOS_BankingProduct>subcategory+< FTOS_IB_BankAccountExtAssets>TotalAmountBorrowed+<FTOS_IB_BankAccount>CurrencyId
Payments
Foreign Exchange
For the payments that include foreign exchange (foreign exchange between own customer accounts or when the payer account currency is different than the payment currency), after the selection of the payment schema (auto select by the system or manually by the user) the information related to the equivalent of the payment amount in the payer account currency is calculated based on the FTOS_CMB_FxRates and displayed in Total debited amount and FX rate. Total debited amount is calculated based on the Equivalent amount in payer account currency + Fee.
The Payment Currency field from the Make a Payment page is returned by calling the Accounts_AcquireAccountSummaryData API.
Foreign Exchange Rates mechanism
The server script FTOS_IB_GetExchangeRates calculates the rates:
- FixRate: it is applicable only for calculating the fees
- BuyCash: it is applicable for withdraw money
- SellCash: it is applicable for withdraw money
- BuyNonCash: it is applicable for all transfers with conversions (including foreign exchange operations)
- SellNonCash: it is applicable for all transfers with conversions (including foreign exchange operations).
This script calls the server library function FTOS_IB_GetAllCurrentUserAdminData that has the parameters isBalance, fromCurrency, toCurrency.
Errors from the Payments Execution
For Initializing a Local Currency Instant Payment and for Initializing a SEPA Instant EUR Payment conditions must be met for one for the message below to be displayed. A code is received from the entity FTOS_IB_InstantPymtErrorCodes that is mapped to each of the messages below:
- Please ensure sufficient funds for the payment execution no later than: {<FTOS_IB_PymtTypes>Cut Off time OR <Currency>Currenct Cut Off (depending on the type of payment)} on {<FTOS_IB_Payment>executionDate}
It is indicated to access the application on the {<FTOS_IB_Payment>executionDate} to verify the status of the payment by accessing the Order List menu
After the available amount is checked in Core Banking and if is lower than the payment amount, according to settlement type, the following messages are displayed:
- For SAME settlement type: Not enough available funds in your account. The payment will be processed when funds will be available but no later than {Cut Off time OR Currency Cut Off } on {Execution Date}. Please ensure the sufficient funds to the ordering account
- For TOM or SPOT settlement types: Not enough available funds in your account. The payment will be processed when funds will be available but no later than End Of Day {Execution Date}. Please ensure the sufficient funds to the ordering account
- Not enough available funds in your account. The payment will be processed when funds will be available but no later than End of Day {<FTOS_IB_Payment>executionDate}
Please ensure the sufficient funds to the ordering account
- Not enough available funds in your account. The payment will be processed when funds will be available but no later than {<FTOS_IB_PymtTypes>Cut Off time OR <Currency>Currenct Cut Off (depending on the type of payment)} on {<FTOS_IB_Payment>executionDate}
Please ensure the sufficient funds to the ordering account
- Your payment has been registered successfully.
If a second authorization is required, the following message is added to one of the messages above: The payment has been posted in the Order List for the joint authorized Approver to sign.
Bulk Payments
After authorization, for the process to be complete, two steps were implemented:
- Sending
Authorizedbulk payments to Core Banking via two APIs (Create and Aquire):- PaymentRequests_CreateMassPaymentRequest: the retrieved statuses can be Success/Failure, and it is mapped as Successful/Rejected Core
- PaymentRequests_AcquireMassPaymentRequestStatus: updates the business status for each massPaymentID from
Authorizedto:Business status Mass payment status (API) Sent 2-Registered Successful 4-Posted Rejected Core 3-Partially Posted
- Implement a job server FTOS_IB_BulkPaymentsListJobs that will check all the bulk instructions that have the business status
Authorized:- runs every 5 min
- calls FTOS_IB_BulkPaymentsListJob server automation script using the customer flow FTOS_IB_BulkPaymentsList
runs the job for all bulk payments with status
Not Rejectedand withcoreBankingMassIdnot null andcoreBankingValidationIdnot null.- retrieves the updated business status according to the mapping of the statuses in the API (
Sent,Successful,Rejected Core) - after one day in status registered the bulk file is considered
Rejected.
Email and SMS Generation
There are several email generated throughout the process:
- Enrolment request: The OTP
One-Time-Password. It is a password generated by the system to validate a piece of information or sign a document. is generated in the step Online User Enrolment Request. - Migration process: The OTP is generated in the step Online User Migration.
SMS
The Innovation Studio is able to send texts using the FtosSmsNotificationService channel provider. To configure it open the web.config file in a text editor and add a new entry in the <configSections> node:
<add key="FtosNotificationServiceUrl" value="service Url”/>
Additionally, insert the subscription key:
<add key="FtosNotificationServiceSubscriptionKey" value="my-subscription-key-value"/>
After these steps, these SMSes are send using the server-side function server.messaging.sendSMS used in the scripts FTOS_IB_PaymentSCA and FTOS_DFP_GenerateOTP. For details, see the Server SDK Reference Guide.
There are several SMSes generated throughout the process:
- Multi-Factor Authentication
Strong customer authentication (SCA) is a requirement of EU Revised Directive on Payment Services (PSD2) on payment service providers within European Economic Area. The requirement ensures that electronic payments are performed with multi-factor authentication, to increase the security of electronic payments.[1] Physical card transactions already commonly have what could be termed strong customer authentication in EU (Chip and PIN), but this has not generally been true for Internet transactions across EU prior to the implementation of the requirement,[1] and many contactless card payments do not use a second authentication factor.: The six-digit OTP is used at the login step in the Online and Mobile Banking application, after the insertion of the username and password.It is done using Notification Service.
- Change password: The OTP is generated when a user tries to change the current password in the step Changing your password.
It is done using Notification Service and Processor Settings.
- Authorization of a payment: This OTP is generated when a user initiates a payment and the system asks them to sign the transfer in the step .
It is done using Notification Service.
Campaign Management
Configurations for the payment signature
There are two channels used are SCA and ContentTemplate. Access them by Innovation Studio > Admin > Omnichannel Communication Automation >Communication Channels > Communication Channels List:
| Code | Name | Bus Communication Channel | Bus Communication Provider |
|---|---|---|---|
| sms | ContentTemplate | GatewayEmailOTP | |
| SCA | SCA | Sms | FtosSmsNotificationService |
These channels are used to send the templates presented below. The body of with the content of the SMS received when authorizing a payment as explained in are configured in Innovation Studio > Hyper-personalization > Personalized Content > Content Templates List:
|
Name |
Status |
|---|---|
| FTOS_IB_BulkSCAContent | Draft |
| FTOS_IB_PaymentSCAContent | Draft |
| FTOS_IB_UtilitySCAContent | Draft |
It is used for Initiating and Authorizing a Bulk Payment.
| Name | Subject | Channel | Culture | Content |
|---|---|---|---|---|
| FTOS_IB_BulkSCAContent | contentTemplateName | ContentTemplate | English GB | {id}Bulk Payment File {bulkFileName} from account {bankAccountIban}, total amount paid including commissions {amount} {lcy}, OTP = {OTPCode} |
| FTOS_IB_BulkSCAContentSMS | contentTemplateName | SCA | English GB | Bulk Payment File {bulkFileName} from account {bankAccountIban}, total amount paid including commissions {amount} {lcy}, OTP = {OTPCode} |
| Name | Subject | Channel | Culture | Content |
|---|---|---|---|---|
| FTOS_IB_PaymentSCAContent | contentTemplateName | ContentTemplate | English GB | {id}paymentAmount = {paymentAmount}, OTP = {OTPCode} |
| FTOS_IB_PaymentSCAContentSMS | contentTemplateName | SCA | English GB | paymentAmount = {paymentAmount}, OTP = {OTPCode} |
It is used in Initiating and Authorizing a Utility Payment.
| Name | Subject | Channel | Culture | Content |
|---|---|---|---|---|
| FTOS_IB_UtilitySCAContent | contentTemplateName | ContentTemplate | English GB | {id}For the contract with subscriber number {subscriberNumber} the OTP code is {OTPCode} |
| FTOS_IB_UtilitySCAContentSMS | contentTemplateName | SCA | English GB | For the contract with subscriber number {subscriberNumber} the OTP code is {OTPCode} |
Signing Payments
The following details are sent as payment details parameters to the Operation Authorization:
- <FTOS_IB_Payment>PaymentAmount
- <FTOS_IB_Payment>BeneficiaryAccount
- a timestamp, the moment at which the authorization page named Teams & Conditions is reached.
When this page is reached, the following things happen:
- the method is called (with the above parameters for details)
- the OTP code is sent (using Operation Authorization)
- the Teams & Conditions page is displayed.
The system parameter sets the number of times the user can retry to insert the code.