Analysis Lifecycle
The analysis lifecycle describes how financial data is processed and analyzed within finoOS.
Each analysis run is identified by a unique correlationID, which is used to track its execution and retrieve results.
An analysis can either be triggered automatically or manually, depending on the integration flow. Have a look at the following two common patterns that are
Using Banking Connect
This sequence applies when end users connect their bank accounts using the fino Banking Connect UI.
Step-by-step flow
- Create a user
- Create the user with
automaticAnalysis: active(default). - This ensures that an analysis is triggered automatically after a successful connection.
- Start a banking connect session
- Call the Connect User Session endpoint.
- The response includes a
Finoos-Correlation-Idheader. - This correlation ID identifies the entire connect + analysis process.
- End user connects their data
- The end user completes the connection using the fino Banking Connect UI.
- If the connection succeeds, the analysis is triggered automatically.
- Track analysis progress Depending on your integration, you can:
- Receive a webhook notification containing the
Finoos-Correlation-Id, or - Poll analytics correlation endpoints, for example Get Categorization Correlation
Possible responses:
404→ Analysis still in progress or connection was canceled200→ Analysis completed successfully
Uploading existing financial data via Banking Upload
This sequence applies when you already have financial data and want to upload it before triggering analysis.
Step-by-step flow
- Create a user
- Create the user with
automaticAnalysis: suspended. - This prevents automatic analyses on incomplete data.
- Upload financial data
- Upload, update, and patch accounts and transactions using Banking Upload.
- Repeat this step until all required data has been provided.
- Trigger analysis manually
- Call the Analyze User endpoint.
- The response includes a
Finoos-Correlation-Idheader identifying this analysis run.
- Track analysis progress Depending on your integration, you can:
- Receive a webhook notification containing the
Finoos-Correlation-Id, or - Poll analytics correlation endpoints, for example Get Categorization Correlation
Possible responses:
404→ Analysis still in progress200→ Analysis completed successfully
Best Practices
- Prefer using webhooks to receive notifications when analyses are completed. This provides results as soon as they are available and reduces the number of required API calls.
- If polling is required, implement an exponential backoff strategy to reduce load on both your systems and ours. Do not poll more than twice per second initially, and increase the interval over time.
- Only start polling after a successful connection or upload. If the user canceled the process or an error occurred, no analysis results will be available.