Data Integrations
How to connect to third-party data sources in the DigiFi platform.
Overview of Data Integrations
DigiFi's platform includes the ability to set up and manage data integrations that can request and receive information from external sources. Once set up, data integrations can be used within applications to automatically retrieve information and have the outputs assigned to variables (i.e. data fields).
Common examples of data integrations include connecting to credit bureaus, collateral valuation data, fraud scores and internal company systems.
The DigiFi platform can be connected to almost any external data source!
Adding a Data Integration
To add a new data integration:
- Navigate to Lending Setup > Loan Product > Advanced Automation > Data Integrations.
- Click the "Add Integration" button.
- Provide an Integration Name (required) and Description (optional).
Standard Integration Configuration
Once your integration is created, you'll be automatically redirected to the detailed integration configuration pages. This is separated into "Standard Configuration", "Advanced Configuration" and "Other". The "Standard Configuration" section includes 4 sub-pages:
- Request Options
- Request Headers
- Request Body
- Response Data
Request Options
To begin configuring a data integration, the following information must be provided:
- URL, which consists of two parts (provider + other URL parameters). For the hostname, you can select from the list of standard options. If you need an additional option, please contact DigiFi for assistance.
- Method, which is either POST, GET, PUT, DELETE or PATCH.
Request Headers
Almost every request requires headers to be sent. These can be standard headers (such as "Content-Type") or custom headers which are used to send credentials or specific header parameters.
Every data integration requires a "Content-Type" to be specified. This is mandatory because it defines how request data will be formatted. "Content-Type" can be one of the following options:
- JSON
- XML
- Form-data
- SOAP+XML
- Multipart/Form-Data
Every custom header can use a static value or use a variable's value (see screenshot below).
Request Body
The request body is built using either JSON or XML. You can reference variables inside a request body by wrapping their system name like {{variable_system_name}}
.
For example, if your configuration looks like this:
{
"borrower_type": "person",
"borrower_email": "{{borrower_email}}"
}
When the request is sent, {{borrower_email}} will be replaced by the borrower's actual email like this:
{
"borrower_type": "person",
"borrower_email": "[email protected]"
}
For example:
Request Body: Transferring Files
By selecting Multipart/Form-Data as the Content-Type, you will be able to send files as part of your request. This can be achieved by using document labels, which help the integration identify the specific documents that need to be transferred. For example, you can automatically generate a document, assign a label to it and then pass it through an integration. The transferred files will be reflected in the integration results.
The following integration document types can be transferred: zip, ico, pdf, jpg, jpeg, png, svg, gif, doc, docx, xls, xlsx, ppt, pptx, csv, txt, json and xml. We accept the documents with max size of 25 MB. A maximum of 5 files can be transferred in a single integration.
Response Data
When an API response is received, DigiFi converts it into JSON (regardless of the response format). This response can be traversed through the traversal path.
For each field you would like to extract from the response, you'll need to select a DigiFi variable (which the value will assign to) and provide a traversal path (which is where the value can be found in the response).
Traversal path is used to get response data items. For example if response data looks like:
{
"variables": {
"borrower_company_name": "Wholesale",
"borrower_phones": ["+372348545", "+3443534636"]
}
}
The traversal path may look like: variables.borrower_company_name
.
Response Data: Working With Table Variables
By selecting the table variable for “Extracted Field“ to match the result from the response file, the system shows additional fields for columns mapping.
To configure the traversal path for each column, provide the traversal path to the main object. Add the property path to map the values.
Column requirement (*) depends on the variable-column setting. If the column in the table is optional, the path filling can be omitted.
When running the integration, the response file will be parsed into the table according to the configured settings.
Response Data: Array Parsing Configuration
In case of arrays in the response data additional configuration can be used for a field:
This configuration will assign 100 to Loan Amount in case if the following JSON will be received in response:
{
"variables": [{"borrower_company_name": "Best", "amount": 100}]
}
Response Data: XML Parsing Configuration
If your response will come in XML, additional options may be required to transform it to JSON. If this applies to your integration, go to 3-dots > Edit XML Response Configuration (beside the page title).
A popup will open where the following options can be set:
- explicitArray: Always put child nodes in an array if true; otherwise an array is created only if there is more than one (default: false).
- attrkey: Prefix that is used to access the attributes (default: @).
- trim: Trim the whitespace at the beginning and end of text nodes (default: false).
For example:
Advanced Configuration
The "Advanced Configuration" section includes 3 sub-pages:
- oAuth2 Authentication
- Certificate Authentication
- Automatic Retries
- JavaScript Functions
oAuth2 Authentication
If your integration requires oAuth2 authorization it is possible to configure the authorization request through DigiFi. The configuration form includes similar configurations from the "Standard Configuration" steps. Please follow the "Standard Configuration" steps to set up the sections of oAuth2 Authentication.
Once oAuth2 is configured, no other actions are required, DigiFi caches the key and sends it with the main request automatically.
Security Certificate
If your integration requires a security certificate for authentication, it needs to be uploaded in the Security Certificate section.
Once uploaded, "passphrase" needs to be added.
Automatic Retries
You can enable automatic retries for data integrations. If an initial request fails, it will be retried a set number of times. The integration will retry if the status code of the initial request is 500, 502, 503, or 504.
When toggled on, you can choose the number of retry attempts from a dropdown list. The maximum number of retry attempts is three.
All retry attempts and the initial request are logged in the request log, which is available in the integration results.
JavaScript Functions
JavaScript functions can be added to tell the integration what calculations to run on the underlying integration response when it is received.
For security reasons, data parsers can only be set up by DigiFi's professional services team. Please contact us if advanced calculations are required on the response.
Within the DigiFi platform, data parsers can be used to:
- Count the number of tradelines, inquiries and other things within a raw integration response.
- Sum the total amount of debt, payments and other things within a raw integration response.
- Perform complex loops and calculations using raw code before integration results are produced.
- ... and much more!
Parser function have access to the response data using the "json_data" variable. Outputs needs to be assigned to "_global.parsed_variables".
For example:
(function() {
if (json_data.someValue) {
_global.parsed_variables.someValuePlusOne = json_data.someValue + 1;
}
})();
After the data parser is configured, additional mapping within Response Data step needs to be added:
Other
The "Other" section includes 2 sub-pages:
- Permissions
- Change Log
Permissions
This page allows you to set access for specific permission groups to view and download data integration files that are sent or received when the integration runs. To allow or limit access:
- Check or uncheck the boxes at group and files intersection.
- Click on the “Save Changes” button to apply the changes.
Updates will take effect immediately after they have been made.
Change Log
The Change Log shows the history of changes within the selected integration. You can see the changes, who made them and when they were made.
DigiFi Professional Services
Want help setting up an integration? DigiFi offers end-to-end implementation services, which are performed by our in-house professional services team of analysts and engineers.
Contact us to discuss our implementation services!
Updated 23 days ago