Aggregation Widget

Overview

The aggregation widget allows to import personal data, account balances, and full statements from any supported bank into your system. In order to do that, the aggregation widget requires end-user bank credentials (i.e. a bank login and password). Asking the end-user for their credentials may not be very convenient, hence we are offering a widget that can be embedded on your website as an HTML5 iframe.
The aggregation widget handles bank credentials, ensuring that sensitive information will never pass through your servers, thus greatly reducing security risks. The widget supports many unusual login scenarios (e.g. masked passwords, hardware tokens, SMS codes, CAPTCHAs, multiple login paths, etc.) and supports all edge-cases of invalid credentials, blocked accounts, expired sessions, etc.


Embedding the Widget

To embed the widget on your website:
  • Add the Nordigen widget script to your documents head: <script src="https://js.nordigen.com/js/instantiateNordigen.js"></script>;
  • Add an empty <div id=”nordigen-widget” /> element where you want the widget to be rendered, referencing the specified id;
  • Call the instantiateNordigen() JS function, specifying the divId, country and nordigenId.
...

The nordigenId can be received from Nordigen API Dashboard as the client_id.


Parameters

PARAMETERDESCRIPTIONOPTIONAL
divIDElement where the Nordigen widget will be rendered in
countryOrigin country of the end-user bank
nordigenIDThe client ID which can be found in the Dashboard
operationsDefines which products to apply to input data; multiple products can be requested at the same time. If the operations parameter is omitted, all products ('categorisation', 'kyc', 'income', 'loans', and 'risk') will be usedYes
widgetTestUse the value 'true' to use dummy data. Contact support for dummy credentialsYes
localeWidget interface language: contact our support for more infoYes
importPeriodAllows to specify the import period for transaction dataYes

Adding a Message Listener to Your App

Add a message listener to your window object to receive the request_id:

...

Similar to request_id, you will receive the error from failed connections in the message listener.
After successful call from Emb.JS library, you will be receiving request_id in event.data parameter that can be used to receive analysis results via GET result API call.


Aggregation Error Handling

Error KeyError Description
NETWORK_ISSUEUnable to get data due to network issues at the bank or between TPP and the bank
SESSION_ERRORSession has been expired or session limit is exceeded
UNKNOWN_ERRORAn unknown error, requires investigation by Nordigen
AGGREGATOR_ERRORUnhandled condition occurred by aggregator
ACCESS_BLOCKEDAccess to the account is blocked
MANUAL_REQUESTUser needs to perform actions inside his online bank
INVALID_CREDENTIALSInvalid credentials provided by the user
UNSUPPORTED_LANGUAGEThe language of the bank UI is not supported
AUTH_INTERRUPTEDThe authentication process has been interrupted by an external factor or agent