The FI Request API is used to initiate a request for Financial Information (FI) from the Account Aggregator system. This API triggers the data fetch process for accounts associated with an approved consent. The data flow is asynchronous, meaning the financial information is not returned immediately in this API’s response but will be available once the fetch is completed.
Automatic FI Fetch: For automatic fetch types, the FinPro system handles FI requests automatically, so Financial Information Users (FIUs) do not need to explicitly call this API.
Periodic/Recurring Fetch: For periodic or recurring fetch types, it is recommended to request incremental data only to optimize data transfer and processing.
Custom Date Range: You can optionally specify a custom date range for the financial data you want to fetch, overriding the date range specified in the consent artefact.
Since the data flow is asynchronous, the FIU will not receive the actual Financial Information (FI) in the response of this API. Instead, use the FI Request Status API to check when the data is ready.
If the fiDataRange parameters are not passed, the data is fetched according to the data range specified in the consent artefact.
For periodic fetch types, if no date range is specified, incremental data is fetched automatically.
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 the user has approved the consent. This ID links the FI request to a specific approved consent.
The start date from when the financial information statement is required. Must be in ISO 8601 date format with UTC timezone (e.g., 2021-05-01T16:49:48.297Z). If not provided, the start date from the consent artefact will be used.
The end date until when the financial information statement is required. Must be in ISO 8601 date format with UTC timezone (e.g., 2022-05-06T06:33:00.000Z). This value must be less than or equal to the current UTC timestamp. If not provided, the end date from the consent artefact will be used.
A unique session identifier generated for this particular FI request session. Use this ID with the FI Request Status API to check the status of this specific data fetch request.
Obtain Consent: Before calling this API, ensure you have successfully obtained user consent and received a consentId from the Account Aggregator.
Initiate FI Request: Call this API with the consentId to initiate the financial information fetch process. Optionally, specify custom date ranges if needed.
Store Session ID: Save the returned sessionId from the response. You will need this to check the status of the data fetch.
Poll Status: Use the FI Request Status API with the sessionId to periodically check when the data is ready for retrieval.
Retrieve Data: Once the status indicates the data is ready, use the Get All FI Data API to retrieve the actual financial information.
Incremental Data Fetching: For periodic/recurring consents, always request incremental data by specifying appropriate date ranges. This reduces processing time and bandwidth usage.
Session ID Management: Always store the sessionId returned in the response. This is crucial for tracking the status of your data fetch request.
Error Handling: Implement robust error handling to gracefully manage scenarios where the consent ID is invalid, expired, or revoked.
Asynchronous Processing: Since this API is asynchronous, implement a polling mechanism or webhook handler to know when the data is ready. Do not expect immediate data availability.
Date Range Validation: When specifying custom date ranges, ensure the fiDataRangeTo is not in the future and falls within the consent’s approved date range.
Rate Limit Management: Monitor the rate limit headers and implement backoff strategies to avoid hitting rate limits.