0% found this document useful (0 votes)
39 views14 pages

NBFC Account Aggregator API Specs

The document outlines the API specifications for the Non-Banking Financial Company (NBFC) Account Aggregator (AA) system, detailing its architecture, interfaces, and functionalities for secure financial information sharing. It includes various APIs for account discovery, consent management, data flow, and notifications between customers, financial information providers (FIPs), and financial information users (FIUs). The document also defines financial information types and their structure to ensure interoperability within the AA ecosystem.

Uploaded by

Ashok Lamba
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
39 views14 pages

NBFC Account Aggregator API Specs

The document outlines the API specifications for the Non-Banking Financial Company (NBFC) Account Aggregator (AA) system, detailing its architecture, interfaces, and functionalities for secure financial information sharing. It includes various APIs for account discovery, consent management, data flow, and notifications between customers, financial information providers (FIPs), and financial information users (FIUs). The document also defines financial information types and their structure to ensure interoperability within the AA ecosystem.

Uploaded by

Ashok Lamba
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 14

NBFC - Account Aggregator (AA)

API Specification
Version 2.0.0

Version History:
Version: 2.0.0 Date: August 9, 2023
Version: 1.1 Date: November 8, 2019

Contact:
[email protected]

NBFC-Account Aggregator (AA) - API Specification 0|Page


I. Introduction
The Reserve Bank of India (RBI) has published the Master Direction1 for the non-banking
financial companies (NBFC) undertaking the business of Account Aggregator (AA). As

defined in section 3(1) (iv) of the Master Direction1, the business of an account
aggregator means the business of providing under a contract, the service of, retrieving
or collecting such financial information pertaining to its customer, as may be specified
by RBI from time to time; and consolidating, organizing, and presenting such
information to the customer or any other financial information user as may be specified
by RBI.

High-level Architecture
AA acts as an intermediary and helps connect the Customer to multiple Financial
Information Provider (FIP)s through standardized API interfaces. In this process, the
NBFC-AA ecosystem needs an interoperable, consent-driven architecture, and a set of
standard APIs that will facilitate secure, seamless, and consented sharing of various
kinds of financial information. The below diagram is the high-level architecture which
shows various interfaces and system interactions in the AA ecosystem as follows:

1
Master Direction- Non-Banking Financial Company - Account Aggregator (Reserve Bank) Directions, 09 Nov 2017,
https://rbi.org.in/Scripts/BS_ViewMasDirections.aspx?id=10598
NBFC-Account Aggregator (AA) - API Specification 1|Page
As shown above, the Customer interacts with the AA for requesting services. The AA
client component interfaces with the AA either directly or via the API exposed by the AA
to facilitate this interaction. Further, the Customer interacts with the AA to link accounts
and generates consent. All the interactions of account linking, and consent management
must happen directly between the Customer and the AA through AA application or AA
Client.

The AA Client, provided by AA, is authorized software that interacts with the AA service.
It may be implemented as a library, Software Development Kit (SDK) or might interact via
direct authorized AA API calls. The AA Client could be a web-based application, a mobile-
based application offered by the AA, or SDK/library with limited data flow. AA is the
owner of the AA Client.

The architecture uses an asynchronous API design by defining the call-back notification
APIs. This design approach facilitates not to wait for a response from the API provider,
thereby decoupling the execution of when the request is made and when the response
is received by the requester.
NBFC-Account Aggregator (AA) - API Specification 2|Page
As shown in the high-level architecture diagram above, the following Interfaces have
been defined:

Interface Summary

FIP A/C Discovery & This API enables the discovery and linking of FIP account(s)
Linking API of the Customer with an AA account.
A linked FIP account can only be associated using the consent
artefact, and the Customer then allows the FIU to access
his/her financial information.

FIP Data Flow API This API provides an interface for AA to retrieve financial
information of a customer programmatically. The collected
information is based on a digitally signed consent artefact
approved by the customer.

FIP Notification API This API provides an interface for AA to send the consent
artefact and consent status update notifications to FIP.

A/C Linking and FI This interface is hosted by the FIP to notify the Customer
Access Notification about the A/C linking events and FI data access request
events.

AA Consent Flow This AA interface collects Customer consent and enables


management of all consent artefacts throughout its lifecycle.

AA Data Flow A FIU uses this interface to receive financial information from
AA.

AA notification API This interface is hosted by the AA to receive notifications


about the A/C linking events and Financial Information
events.

FIU Notification API This interface, hosted by a Financial Information User (FIU), is
used by AA to send consent status updates and Financial
Information related notifications.

NBFC-Account Aggregator (AA) - API Specification 3|Page


II. High-level Specifications
The high-level specifications of the AA ecosystem have been categorized into the
following flows.
1. Account discovery and linking flow
2. Consent flow
3. Consent handle management flow
4. FI data flow
5. Notification flow
6. Monitoring flow

Below are the functionalities hosted by the participating entities with respect to the
categories.

Category AA FIP FIU

Account N/A • Account Discovery N/A


Discovery • Account
and Linking Linking/Delinking
• Authenticating
Link/Delink Request
Consent • Consent Request • Posting Consent N/A
Consent • Consent Status N/A N/A
Handle Request
Management • Getting Consent
FI Data Flow • FI Data - Request • FI Data - Request N/A
• FI Data - Fetch • FI Data - Fetch
Notification • Linking Status • Consent Status • Consent Status
• Consent Status • FI Data Status
• FI Data Status
Monitoring • Heartbeat API • Heartbeat API N/A

N/A – API is not applicable

NBFC-Account Aggregator (AA) - API Specification 4|Page


Account Aggregator (AA) APIs

The description of AA APIs is given as follows:

Entity Account Aggregator

Method API Path Description

Consent

Consent Request

POST /Consent This API is intended for AA Client/FIU to request


the generation of digitally signed consent
artefacts. The customer uses the AA application
to select accounts and approve the consent
request. Once the customer approves the
consent request on the AA application, AA
generates the digitally signed consent artefact.

Note - The AA Client/FIU never sees the account


of the customer, nor directly participates in the
consent generation.

Consent Handle Management

Consent Status Request

POST /Consent/handle This API is intended for checking the status of a


previously submitted consent artefact creation
request.

Get Consent

POST /Consent/fetch This API is intended for fetching the information


associated with the specific consent id.

NBFC-Account Aggregator (AA) - API Specification 5|Page


FI Data Flow

FI Data - Request

POST /FI/request The FIU or the customer submits the consent ID


required for fetching financial information from
the FIP(s).
A session ID is generated and returned which
enables the FIU, or the Customer, to fetch the
information from the AA, once it is available.

FI Data - Fetch

POST /FI/fetch This API is used by the FIU to fetch the financial
information from AA.

Notifications

Consent Status

POST /Consent/Notification This API can be used by AA Client, FIU and FIP to
place a request for consent status update to AA
in specific use cases.

FI Data Status

POST /FI/Notification This API is used by FIU and FIP to send


notifications related to FI data flow to AA.

Linking Status

POST /Account/link/Notification This API is intended to be used by FIP to send


account link notifications to AA.

Monitoring

NBFC-Account Aggregator (AA) - API Specification 6|Page


Heartbeat API

GET /Heartbeat This is the monitoring API Interface for checking


the service availability of AA.

NBFC-Account Aggregator (AA) - API Specification 7|Page


Financial Information Provider (FIP) APIs

The description of FIP APIs is given as follows:

Entity Financial Information Provider

Method API Path Description

Account Discovery and Linking

Account Discovery

POST /Accounts/discover This API enables the AA to discover accounts


belonging to a Customer based on the Customer
identifiers. A set of masked account information
and corresponding link reference number for
each discovered account, is returned based on
identifier matching logic at FIP.

Account Linking

POST /Accounts/link This API is used for initiating an account link


request to link selected account(s) with the AA
customer address.

Account Delinking

POST /Accounts/delink This API is used to delete a previously


established account linkage to the customer’s
profile. Once deleted, the customer cannot
share financial information for these accounts
using Account Aggregator.

Authenticate Link/Delink Request

NBFC-Account Aggregator (AA) - API Specification 8|Page


POST /Accounts/link/verify This API is used only in the case of token-based
authentication for linking or delinking the
accounts. The AA submits the token (received
from the customer) to the FIP so that account
linkage or de-linkage can be completed. In the
case of FIP direct authentication, this method
will not be used.

Consent

Post Consent

POST /Consent This API enables the AA to send the consent


artefact to the FIP on consent creation.

FI Data Flow

FI Data – Request

POST /FI/request This API enables AA to submit the FI data fetch


request coming from FIU to the FIP. FIP verifies
the request against consent artefact shared by
AA and processes it only if the verification is
successful.

FI Data – Fetch

POST /FI/fetch This API enables the AA to fetch the financial


information from FIP against a given SessionID.

Notification

Consent Status

NBFC-Account Aggregator (AA) - API Specification 9|Page


POST /Consent/Notification This API is intended to be used by AA to notify
the change in consent status due to the consent
management operations performed by the
customer.

Monitoring

Heartbeat API

GET /Heartbeat This API enables the AAs to check the service
availability of FIPs.

NBFC-Account Aggregator (AA) - API Specification 10 | P a g e


Financial Information User (FIU) APIs

The description of FIU APIs is given as follows:

Entity Financial Information User

Method API Path Description

Notification

Consent Status

POST /Consent/Notification This API is intended to be used by AA to notify


FIU about the change in consent status due to
the consent management operations performed
by the Customer.

FI Data Status

POST /FI/Notification This API is used by AA to send notifications


related to FI data flow to FIU.

For further illustrative information on NBFC-AA ecosystem API Specification, please refer
to https://api.rebit.org.in/

NBFC-Account Aggregator (AA) - API Specification 11 | P a g e


III. Financial Information (FI) Definition

The Account Aggregator (AA) ecosystem supports multiple types of FI as defined in

Section 3 of the Master Direction1. The purpose of developing FI definitions is to enable


the interoperability between the participating entities in AA ecosystem. The FI definition
has the following purposes:
a. Data description: The definition provides a common and uniform format of the
representation of FI in terms of structure (syntax) and meaning (semantics)
interoperability.

b. Data context: The definition defines a minimal set of representational states of


financial information corresponding to the financial information types.

c. Data sharing: The definition provides semantic interoperability in the NBFC-AA


ecosystem.

d. Data harmonization: The definition enables a common format for analysing,


viewing, and processing the transaction of financial information.

The structure of FI type definition adheres with the consent definition that has the
following sections:

• Profile: This includes the basic profile of the Customer having details such as
account owner information, masked account number and linked account
reference numbers, type of account specific to the FI type and other generic
details as might be pertinent for the specified FI type.
• Summary: This includes the value of the account, term of the deposits, if relevant
and any other data that summarizes the funds in the account.
• Transactions: This include the transaction details that are posted in an account.

In this process, the FI type information is defined in XML (Extended Markup Language)
format will be validated against the corresponding XSD (XML Schema Definition).
The XML structure of Financial Instrument is depicted below:

NBFC-Account Aggregator (AA) - API Specification 12 | P a g e


<Account type="">
<Profile />
<Summary />
<Transactions />
</Account>

For further illustrative information, please refer to https://api.rebit.org.in/ or email: aa-


[email protected].

NBFC-Account Aggregator (AA) - API Specification 13 | P a g e

You might also like