Data Structures
The following data structures are used within EnableNow.
Customer
A business customer of EnableNow. A customer is able to use the API's and systems provider by EnableNow.
App
An app is an entity a customer can create. Each app has it's own unique OAuth client ID which links the App to the customer.
User
A user is an end-user who uses the front-end provided by EnableNow for an app of the customer.
A user is linked directly to an app.
A user has an EnableNow ID, but also has a unique external_user_id.
A user can have multiple consents, even from different banks.
When using consent-based access, users are not stored in the system.
Consent
A user can provide one or more consents to a bank. A consent is linked to a user and accounts.
A consent is created when a consent endpoint request is made through the AppScreen. This is the start of the consent process.
A consent can contain multiple accounts.
A consent has one of the following statuses:
Consent Refreshes
A consent can be automatically or manually refreshed (see Consent Refresh) and an history of such refreshes is kept for 7 days.
A consent refresh has one of the following statuses:
Failing state
The FAILING
state is triggered after a transaction update request fails. After 20 consecutive failures, the consent state is converted to ERROR
and the automatic transaction updates will ignore this consent.
If a consent succeeds the transaction update when it is in the FAILING
state, the counter of consecutive failures will reset to 0.
TimedOut state
The consent will receive the TIMEDOUT
state automatically when a consent is created, but the end user does not complete the consent process within 4 hours of its creation.
Account
An account is a bank account from a user. It has it's own unique identifier which links this account to the consent.
The IBAN number is a unique account number in the banking world. However, the same IBAN can be linked multiple times in different Consents, for instance when two users give consent of the same account when using a shared account. Some banks do not use IBAN numbers for some accounts. So a unique EnableNow AccountId is used for managing the ID of the account.
Transaction
A transaction is a bank transaction from an account.
There is one generic transaction model which all bank services should return.
Bank
A bank is also called an ASPSP (Account Servicing Payment Service Provider) or a provider. The financial institution to provide the consent and transaction data.
All banks that can be used within EnableNow can be found in the providers section.
Authorized third-party providers (TPPs) can access account information or initiate payments on behalf of users. The two types are:
- AISP (Account Information Service Provider) – only reads account data (e.g. transaction history, balances).
- PISP (Payment Initiation Service Provider) – can initiate payments from the user’s account.
EnableNow is positioned as an AISP.