Onfido Identity Verification
Onfido support was added to CAS in version 20210427.
Onfido helps companies see real identity – the humans behind the screens – using world-leading AI and identity experts. Your customers can prove their identities, wherever they are, with just an ID and their face.
- from https://onfido.com/
Architecture
Before setting up the Onfido it is important to understand key components that the solution consists of following components:.
Components
User - a customer using ATM and later his mobile to perform the verification.
BATM server - operator’s CAS server that contains all identity data and server that communicates with our terminals.
Verification site - an opensource web server application that runs on a separate server than CAS is. This is the website to which are customers redirected by ATM and which they open on their mobiles at the beginning of the verification process.
Onfido cloud service - Onfido paid identity verification service. CAS server uses its Onfido Verification Provider to talk and listen to Onfido service calls.
Interaction
User (End Customer) visits ATM and requests a registration.
BATM Server obtains an unique applicant’s id and pairs it with an identity (i.e. phone number)
BATM Server calls verification site and tells to Verification site to expect the visit of an applicant XYZ.
BATM Server sends SMS to a User with a link to a Verification site to start verification.
User visits verification site. Verification site contains JS+IFRAME to website with Onfido verification service.
User goes trough complete verification.
Verification site calls BATM Server and informs it that applicant has finished the verification.
Onfido is performing background checks on a User.
BATM Server is informed by Onfido services that verification is finished with particular result. CAS also downloads identity information such as ID card photo from Onfido service.
BATM Server informs the User by SMS that their registration is finished with particular result.
User is now registered and revisits the ATM and performs the purchase.
Alternatively you can use Open Extension to change the automatic registration for example not to autoregister older people or kids.
Process described above is described bellow in the diagram
Configuration
To use Onfido identity verification in your Operation, you must modify your CAS configuration as described in this article.
Your services behind SSL
Onfido service needs to be able to call your CAS via webhook. Onfido service requires you to be able to receive its webhook calls via HTTPS using valid SSL certificate.
Users need to open Verification-site on their mobiles also via HTTPS that has valid SSL certificate.
Hide your services behind HTTPS by our recommended procedure:
Install NGINX and Let’s Encrypt before continuing.
A reverse proxy is required: https://generalbytes.atlassian.net/l/cp/nfb1x7Xd
Alternatively, you can use Cloudflared instead: https://generalbytes.atlassian.net/l/cp/V4Me1X2b
Activate Onfido in your Organization settings:
Api Key: Setup your account with them to acquire the necessary API key.
Verification Site URL: guidelines found here on our Github page.
Onfido region: EU, US, or CA (default = “EU”)
Change your AML/KYC settings
Set your Registration requirements to “Nothing. Direct customer to identity verification service via SMS”:
Set your Authentication methods & limits as you normally would.
A phone number is (the minimum) required for Authentication.
Choose the Autoregister type:
After Onfido processes your customer at the BATM, any newly proven Identity will be added to one of these two categories: Registered, or Not Registered.
Click the edit icon on the “Nothing….” button to view this option.
Disabled
the customer Identity will be added to “Not Registered”
Enabled
the customer Identity will be added to “Registered”:
Save the AML/KYC setting!
How Onfido works at the BATM:
Your customer chooses Registration during a transaction.
Their (required) phone number is collected.
Your customer will be sent further instructions via SMS (from Onfido). The link expires in 90 minutes.
They click through and submit the requested documents.
They’re notified of the results via SMS.
Registration procedure on CAS:
If the Autoregister option is enabled, and the customer is approved, then a new Registered Identity is automagically created.
If Autoregister is disabled, or Onfido has trouble with any of the submitted documents, then a new “Awaiting Registration” Identity is created.
Footnotes at the bottom of the Identity page will show what (if any) documents failed inspection.
Messages to your customers can be set in your Terminal’s Custom Strings:
See https://generalbytes.atlassian.net/l/c/FmAMHNPM for more details about Custom Strings.
Troubleshooting:
If the SMS link steers you to a blank page, please check your hostname
file.
See: hostname
Notes:
Onfido results | CAS status of Identity | |
---|---|---|
1 | CLEAR | Registered when auto-registration is enabled. When auto-registration is disabled, the Identity becomes: Awaiting Registration |
1 | Onfido results | CAS status of Identity |
---|---|---|
2 | SUSPECTED_COMPROMISED_DOCUMENT | Identity rejected |
3 | SUSPECTED_DATA_CONSISTENCY | |
4 | SUSPECTED_POLICE_RECORD
| |
5 | SUSPECTED_VISUAL_CONSISTENCY | |
6 | SUSPECTED_DATA_VALIDATION | |
7 | SUSPECTED_FACE_COMPARISON |
Onfido results | CAS status of Identity | |
---|---|---|
1 | REJECTED_AGE_VALIDATION | Rejected. The customer will need to retry the registration process again. |
2 | REJECTED_IMAGE_INTEGRITY |
Onfido results | CAS status of Identity | |
---|---|---|
1 | CAUTION_VISUAL_CONSISTENCY | Awaiting registration. Demands manual verification, even if auto registration set up. |
2 | CAUTION_IMAGE_INTEGRITY | |
3 | CAUTION_DATA_COMPARISO | |
4 | CAUTION_FACIAL_COMPARISON | |
5 | CAUTION_DATA_VALIDATION | |
6 | CAUTION_DATA_CONSISTENCY |
Copyright © 2020-2024 General Bytes USA LLC