Onfido Integration
The solution verifies the identity of a customer by scanning an ID (its front and back) to authenticate the document, it declares if the ID is genuine or fraudulent. Furthermore, it compares the ID document with a photo for the customer using AI and human experts to analyze biometric data points. The system compares the two and confirms or denies the identity.
The data that Onfido will handle must be under GDPR acceptance. This flow needs to be handled in the custom implementation. If the data needs to be deleted from Onfido it will be done so from the Onfido account by hand.
Client script on edit mode form
To start the Onfido component, use loadComponent
function from FTOS.DFP library:
loadComponent(componentName, processorSettings, recordId, existingFile)
Example:
var dfpHelper = ebs.importClientScript('FTOS.DFP');
var componentName = 'FTOS_DFP_Onfido'; //name of the component
var recordId = formData.id;
var flowSettingsName = formData.FlowSettings;
var p = {};
var accountApplicationId = recordId;
p.accountApplicationId = accountApplicationId;
p.toStatus = "OCR in Progress";
ebs.callActionByName("FTOS_BARET_AccountApplication_BusinessWorkflow", p, function(e){
var params = {};
params.flowSettingsName = flowSettingsName;
params.processorSettingsType = 'Onfido';
params.processorSettingsName = 'Onfido_Settings';
ebs.callActionByName("FTOS_DFP_FlowProcessorSettingsByType", params, function(f)
{
var processorSettingsId = f.UIResult.Data.ProcessorSettingsId;
dfpHelper.loadComponent(componentName, processorSettingsId, recordId, false);
});
});
Client script on insert mode form
To start the OCR component, use loadComponent
function from FTOS.DFP library. The recordId
parameter is null, as we are running the component from a form in insert mode.
Example:
var dfpHelper = ebs.importClientScript('FTOS.DFP');
var componentName = ' FTOS_DFP_Onfido'; //name of the component
var flowSettingsName = formData.FlowSettings;
var p = {};
var accountApplicationId = recordId;
p.accountApplicationId = accountApplicationId;
p.toStatus = "OCR in Progress";
ebs.callActionByName("FTOS_BARET_AccountApplication_BusinessWorkflow", p, function(e){
var params = {};
params.flowSettingsName = flowSettingsName;
params.processorSettingsType = 'Onfido';
params.processorSettingsName = 'Onfido_Settings';
ebs.callActionByName("FTOS_DFP_FlowProcessorSettingsByType", params, function(f)
{
var processorSettingsId = f.UIResult.Data.ProcessorSettingsId;
dfpHelper.loadComponent(componentName, processorSettingsId, null, false);
});
});
Localization
If the setting key is "UseLocalization": true
, the text is the one from the client script FTOS_DFP_OnfidoLocalization. The texts are now set for en-GB.
If another language is needed then another key will be inserted the same as the ones from en-GB, there is already the Romanian key available, but not translated.
{key:"ro-Ro", value:{ }
}];
The keys are the ones used in FintechOS, if the site is used in another language then that language must be configured here. For other localized JSONs, please see here.
Logging
All the logged responses are inserted here, FTOS_OnfidoIntegration.