Own list for bank selection
Kontomatik offers a solution where you can create your own frontend for the list of banks instead of users selecting a bank through our widget. To implement this, you simply need to pass the selected bank identifier to the SignIn Widget code. However, please note that this solution has some limitations. You will not have control over the subsequent verification steps, as they must remain unchanged for security and compliance reasons.
We do not recommend using this option as it’s not simple to implement, and it is difficult to diagnose any problems if they arise.
Obtaining a List of Enabled Banks
To obtain a list of enabled banks and their identifiers to be passed to the widget, we provide the Catalog (AIS) command.
The response returned by the
catalog command will contain all currently available targets, along with information about the currently used interface type, a list of available commands, and other relevant information. In our case, we are particularly interested in the
institution attributes, which are necessary to identify the bank and check the currently used interface. This information is essential for passing the appropriate values to the widget code.
You shouldn’t hard-code the targets in your solutions because they may change dynamically, e.g. when a bank API is down and the banks move to a fallback interface or when a new target appears or when a target gets switched to another version.
Identifying the target and institution
institution attribute, you can identify the bank that your customer will be using. For example, the value could be “KontoBank”. Then, you need to check the value available in the
name attribute, which indicates the currently used interface. In this case, it could be the value “KontobankApi”. This value should be passed as the
target parameter in the widget code - see the Widget parameters.
The next time you run this command, the
institution will be still showing “KontoBank”, but it might happen that the target got switched to another type, for example, fallback interface, and this time the attribute
name has a value of “KontoBank”. In this situation, the value passed as the
target parameter in the widget will change to “KontoBank”.
You can use the
institution information to map the bank logo and bank name. The
institution name won’t change when we switch targets within. You can also implement a verification mechanism to alert you if a new
institution appears in the Catalog response or if there’s a missing one.
As an example, let’s say that you’ve made a command catalog request and received a response that contains the following snippet:
<target country="pl" name="MBankApi" institution="MBank" officialName="mBank" officialUrl="https://www.mbank.pl" psd2="true">
In this case, you should identify the bank using the institution field, which is “MBank”. And then, you should pass the
name value, which in this case is “MBankApi”, to the widget in order to proceed with verification. The widget code should look like this: