...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
Table of Contents |
---|
Welcome to Data Intelligence!
...
Risk Reports section provides reports related to the user's banking transactions which might indicate a payment risk , if for e.g. our customer provides goods with a payment plan to this consumer. We detect these risky transactions , and bundle them under one report, which an application on our customer's side can consume within seconds.
To gain a deeper understanding of the cash flows of your end users, we offer the Cash Flow Reports section. Here is a variety of income and expenditure-related reports, in which we aggregate and summarize the according transactions belonging to a specific field, like insurancesinsurance, income or rent and living, etc.
To provide data in the highest possible quality, Data Intelligence Open Finance services analyse the external data received from finAPI Access (https://docs.finapi.io/ ) via finAPI Web Form 2.0 (WebForm 2.0 Documentation), such as account data, transactions, bank data, by using a combination of an expert knowledge system, driven by clear clearly defined rules, and machine learning approaches approach for providing a label coverage for approximately 80% of all transactions and aggregation the information into the decision-ready state.
Furthermore, we use cutting-edge technology for constantly enhancing our services, from data analysis pipelines to an event-driven system, which is build in scalable modules, that you also may use in a proprietary environment or as a SaaS. If you are interested in this kind of usage or want to know more, please feel free to contact us for an offer. We are looking forward to hearing from you!
...
The following sections describe the technical steps needed for an integration. It is an additional resource which completes our Swagger description of the REST API. If you experience any problems with our integration or just have some questions, please contact our support at any time under at support@finapi.io. Our customer success team is happy to help you to bring your services consuming finAPI REST APIs to success.
...
Bank Connection Data Source
Initial Import
The major prerequisites for creating a data source in DI is:
Obtaining a user access token from Access
...
Drawio | ||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
To create a data source (bank connection) in DI:
Authorize/create a user (-identity), as described in Getting Started - Authorization as a Process or User. The sequence diagram above show authorization as a user. Alternatively it is possible to create a process and obtain a OAuth token for the process.
Import the Bank Connection with the help of finAPI Web Form 2.0 (POST / webForms/bankConnectionImport).
Upon successful completion of the SCA (web form), make a call to the DI POST / dataSources / bankConnections / synchronizationwith included
callbackUrl
(optional) and retrieve the imported bank connection with the DIdataSourceId.
3a. In case the callbackUrl has been provided, DI will send a notification to the client once the Data Source synchronization is finalized (with SUCCESSFUL
or ERROR
)
...
Data source synchronization call returned bank connection in status
FAILED
Calling GET/dataSources/{dataSourceId}/status resulted in status
FAILED
and codeUPDATE_REQUIRED
.
...
To create a report of a particular type (Chargebacks, Gambling, B2B Balances, Insurance) and of particular category (Risk, Cash Flow, B2B, Contracts ) , make a call to POST/cases/{caseId}/reports/ <report_category>/<report_type>.
NOTE: If there is a need for report to be re-generated automatically in particular time periods without additional user interaction, the interval
and intervalPeriod
fields need to be specified. Such a report will be considered continuous and will have associated with it child reports, created automatically inside of the same case file.
...
To get a report of a particular type (Chargebacks, Gambling, B2B Balances, Insurance) and of particular category (Risk, Cash Flow, B2B, Contracts) , make a call to GET/cases/{caseId}/reports/ <report_category>/<report_type>.
NOTE: Every case file may have maximum one report of a particular type: e.g. 1 case file may have 1 Chargebacks report, 1 Gambling report and 1 Insurance Report (child reports are not taken into account for this count).
...
The case file id
returned in the response of the call should be used as an input path parameter for GET cases/{caseId}/reports to retrieve the DAC report results.
...
Select one of the pre-defined triggers via POST /reports/{reportId}/triggers/cashFlow
Create your own trigger via POST /reports/{reportId}/triggers
Pre-defined triggers
For example, if the client wants to get notified, when the user’s salary amount will change, he can use SALARYAMOUNTCHANGE
pre-defined trigger. For this make a call to POST /reports/{reportId}/triggers/cashFlow with the triggerType
= SALARYAMOUNTCHANGE
and reportId
of the created by the client continuous Income Report, that contains salary transactions.
...
For example, if the client wants to get notified once the user concluded a new health insurance contract, the following trigger for continuous Contracts Report for Insurances can be set via POST /reports/{reportId}/triggers. To do this the client should find the contracts of contractType
= HEALTHINSURANCE
AND newContract
=true
, to ensure that the contract is new for the user.
...
In case it is needed to remove the DI data of the user, such as the created Data Sources, Reports, Cases, theDELETE/ userendpoint can be used.
To delete the user’s data it is mandatory to pass a valid user access_token
.
...
To ensure whether the deletion process has been finalized for the user, the obtained deletionId
should be used for GET /user/status/delete/{deletionId}call. The response of the call is aimed at providing the detailed data on the status of data deletion at each DI module (application).
...