Validations

Fields used in Online and Mobile Banking have conditions which must be meet in order for the process the fields are part of to be successful. The input values are checked by the system to validate the structure and content. These types of validations are paramount for the system to examine and run some processes in the back-end.

Validations for Online User Enrolment Request, Bulk payments and Make a payment screen

There are three types of validations for three types of data in the server automation script library named FTOS_IB_BudgetFormulaValidation:

  

Then, the library does the remainder of the division. If it is less than 10, then it is taken as a check digit, otherwise the control digit is 0. The control character is the last character of Bulstat value. Then, it compares with last digit of value.

Payments

IBAN

In the in the field Account, the IBAN or Account number are distinguished based on:

  • the first two characters inputted to be letters and representing the country code
  • the country code will be checked against the FTOS_IB_BankNameIBAN.
  • For cases B, D, E, F, G the country code is the one in CountryISOCode.

If the system detects it is an IBAN, the following validations are done:

  • Permitted IBAN characters are the digits 0 to 9 and the 26 Latin alphabetic characters A to Z
  • Length has to be fixed based on the country 22-34 characters, checking that the total IBAN length is correct as per the country.
  • Characters 3 and 4 represent the check digits.

The following validations are done for the budget payments available in the Bulgarian market. The automation script library with FTOS_IB_ValidationRuleBulkPaymentsLib contains the validations called by the endpoint FTOS_IB_BudgetFormulaValidation. The library calculates the execution date and validates the balance account, the funds in the account. It validates the IBAN structure to match the Bulgarian structure. It also separates budget payments from the other payments.

Server Script LibraryFTOS_IB_BudgetFormulaValidation
Server Automation Script/EndpointFTOS_IB_BudgetFormulaValidation
Server Automation ScriptFTOS_IB_ValidateBulkPayment
Server Script LibraryFTOS_IB_ValidationRuleBulkPaymentsLib
Form Driven FlowFTOS_IB_Payment Step Make a payment after js

BIC identification from IBAN

The system uses data from two entities: FTOS_IB_IBANStructure si FTOS_IB_BankNameIBAN. For an IBAN, the system access the FTOS_IB_IBANStructure to get the country code and the length of the bank branch, the position of the bank branch, the length of the bank identificator and the position of the bank identificator. Based on these attributes, a code is calculated from the IBAN. The system reaches in the entity FTOS_IB_BankNameIBAN based on this code to get the BIC. If no BIC results from this search, the system gets the code based on the attributes length of the bank identificator and position of the bank identificator.

Amount

It must be bigger than zero.

Execution Date

Results from comparing the current date and time towards:

For validations on each payment schema, see Payments Split Schema.

Redo Payments Functionality

Payments can be re-done if:

  • they have the status Executed,
  • they were initiated by the user in the Online and Mobile Banking application, i.e., they were not over-the-counter transactions
  • they are not Utility payments and bulk payments (those payments do not have a correspondent transaction ID in FTOS_IB_Payment).

Attachments

For payment in foreign currency, only if the Beneficiary Bank is outside of EEA [Outside regulation nomenclator 518], and the payment amount is higher than the system parameter FCYTrasholdthe field are displayed to the user to be collected and will be mandatory.

Budget Payment

If the default currency is Bulgarian, BGN and if the 813th and 914th digit of the inputted IBAN in Beneficiary Account (only Bulgarian IBANs) matches the digit in the FTOS_IB_BGBudgetRule Budget Digit Rule, then the payment type is budget.

EIK/Bulstat of the obligated party

Validation of the value in the field for companies in BG:

Setting the password for Online and Mobile Banking

In the step Online User Migration, a user sets their username and password for Online and Mobile Banking. The authentication provider manages the password conditions and validations:

  • not recently used
  • not sequence, letters, name of bank
  • minimum 8 characters for the password
  • password and username must be different
  • the password must not be the email address
  • the password must include digits, upper and lowercase, special characters
  • the username must be unique, start with zero and have exactly 10 characters

Bulk Payments

The type of payment can be Domestic Payments, Direct Debits, Intrabank EUR Payments, Budget Payments. The file for import is analyzed by the system to match the validations:

  • alphanumeric and digits are allowed
  • for the amount: only numeric characters and “.” to separate 2 decimals are allowed
  • date: only numeric characters and the format must be yyyymmdd:
    • first 2 characters can only be “20”
    • 3rd character needs to be equal or higher to “2”
    • 4th character can be any number 0 to 9
    • 5th and 6th characters can only be from 01 to 12
    • 7th and 8th characters have to be a number equal or lower to 31 (from 1 to 31 depending on the month)
  • IBAN: its is validated to have the IBAN structure
  • SWIFT: it is validated with the data from the dedicated entity FTOS_IB_BICSWIFT.