Bank integration guide
Last updated
Last updated
This section guides you on how to interact with our API to access banking data of your users. You must have followed the steps in “Add a first user and connection” section.
Our banking connectors are subject to the revised Payment Service Directive (PSD2) that requires a new user consent every 180 days to access the web banking platform or the bank's API. You must implement proper handling of SCA-related connection states (SCARequired
and webauthRequired
) as explained in the dedicated guide.
The Bank product exposes bank accounts and transactions.
Bank accounts are linked to a connection (they are deleted with the connection).
The accounts list reflect the set of accounts found when synchronizing with a bank, using a safe archiving rule:
when a new bank account is discovered, it is added;
Transactions are linked to a bank account (they are deleted with the bank account).
Some banking connectors support connecting to the bank plateform both through their web interface and their PSD2-compliant API. While the connection resource exposes an abstraction above these two sources of data, we also support fine grained access to each source and expose the individual synchronization state of each source. Our Connect webview properly takes care of managing the sources, so handling them is optional when using it.
You can get the list of the supported sources of a connector:
Make sure the disabled
property of a source is null before interacting with it. Also, you must honor the priority
order of sources when adding them sequentially.
On a connection, you can access the specific state
or last_update
of a connection source:
We provide a view to the bank accounts of a user with :
when a bank account is no more found, it is marked with a and is not listed by default, but it can still be accessed by its ID or with the .
GDPR enforcement requires an explicit end-user approval before fully synchronizing a bank account. By defaut, bank accounts are disabled
when discovered and have a very limited set of values available (name), and no transactions. The webview takes care of activating them, or you can build your own user-consent interface and .
We provide a view to the history of transactions of a user with , which are .