The Get All FI Data API allows you to download complete financial information in JSON format for all accounts associated with a specific consent. This API provides comprehensive access to financial data including account profiles, transaction histories, balances, and account holder information. It supports all Financial Information (FI) types that are active in the Account Aggregator ecosystem.
Data will only be returned if it is available in FinPro. You must first successfully complete the FI Request and ensure the status shows DATA_READY before calling this API.
The requested data must align with the parameters and scope specified in the approved consent.
If you need data in PDF format instead of JSON, use the Get All FI Data PDF API.
For periodic/recurring consents, this API returns cumulative data. To get only incremental data since the last fetch, use the Get All Latest FI Data API instead.
The unique identifier for your application (e.g., your application’s package name or bundle ID). This helps FinPro identify which application is making the request.
The unique consent identifier provided by the Account Aggregator after consent approval. This must be a valid GUID format. Only alphanumeric characters, underscores (_), hyphens (-), and periods (.) are allowed.
The start date from when transaction data is required. Must be in ISO 8601 UTC date format (e.g., 2023-01-01T00:00:00Z). When provided, only transactions on or after this date will be included in the response.
The end date until when transaction data is required. Must be in ISO 8601 UTC date format (e.g., 2023-01-31T23:59:59Z). When provided, only transactions on or before this date will be included in the response.
An array of account objects, each containing comprehensive financial information for a linked account. Each object in the array represents one account associated with the consent.
An array of transaction objects containing the transaction history for this account. Each transaction includes details like amount, type, timestamp, and narration. This array may be filtered based on the transactionsStartDate and transactionsEndDate parameters if provided.
An object containing current balance information for the account, including the balance amount, currency, and the timestamp when the balance was calculated.
An object containing account profile information, including account holder details, account type, and account opening date. This typically includes holder names, contact information, and KYC details.
An object containing summary information about the account, such as current balance, account type (SAVINGS/CURRENT), branch details, IFSC code, MICR code, and account status.
Verify Data Readiness: Before calling this API, use the FI Request Status API to ensure the eventStatus is DATA_READY.
Retrieve Data: Call this API with the consentID to retrieve all financial information associated with the consent.
Optional Filtering: If you only need transactions for a specific period, include the transactionsStartDate and transactionsEndDate parameters.
Process Response: Parse the JSON response to extract account information, transaction details, balances, and other financial data for your application’s use case.
Handle Multiple Accounts: The response contains an array of account objects. Process each account separately as they may have different FI types and data structures.
Data Expiry Awareness: Note that the fetched data has a limited lifetime based on the consent’s data life parameter. Plan to re-fetch data before it expires if needed.
Status Check First: Always verify that data is ready using the FI Request Status API before attempting to retrieve it. Calling this API when data is not ready will result in a NoDataAvailable error.
Transaction Filtering: When you only need recent transactions, use the transactionsStartDate and transactionsEndDate parameters to reduce payload size and improve performance.
Handle Different FI Types: Different FI types have different data structures. Implement flexible parsing logic to handle various FI type schemas as per ReBIT specifications.
Error Handling: Implement comprehensive error handling for all error codes, especially:
NoDataAvailable: Indicates you need to wait longer or initiate an FI request
DataIsDeleted: Indicates data has expired and you need to fetch fresh data
InvalidConsentId: Indicates the consent may be invalid, expired, or revoked
Data Persistence: Store the retrieved financial data in your system with appropriate security measures. Do not rely on fetching data repeatedly as it may be deleted after the data life period.
Pagination: For consents with large amounts of data, use the limit and offset query parameters to implement pagination and avoid timeout issues.
Schema Validation: Validate the received data against the ReBIT FI Schema to ensure data integrity before processing.
Consent Scope: Ensure you only request and process data that falls within the scope approved by the user in the consent.
Security: Always transmit and store financial data securely. Use HTTPS for API calls and encrypt data at rest in your systems.