Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

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:

  1. Obtaining a user access token from Access

...

Drawio
zoom1
simple0
inComment0
pageId2344648793
custContentId3183116330
lbox1
diagramDisplayNameDatasourceCreation
contentVer1
revision1
baseUrlhttps://finapi.jira.com/wiki
diagramNameDatasourceCreation
pCenter0
width1023
links
tbstyle
height1103

To create a data source (bank connection) in DI:

  1. 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.

  2. Import the Bank Connection with the help of finAPI Web Form 2.0 (POST / webForms/bankConnectionImport).

  3. 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 DI dataSourceId.

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)

...

  1. Data source synchronization call returned bank connection in status FAILED

  2. Calling GET/dataSources/{dataSourceId}/status resulted in status FAILEDand 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.

...

  1. Select one of the pre-defined triggers via POST /reports/{reportId}/triggers/cashFlow

  2. 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).

...