Verify an Identity
Collect and verify identity information, and process the results.
Verify Identity using Personally Identifiable Information
Verify identity using the name, address and date of birth provided by a user. This information is verified using trusted data sources.
Name and address fields are case-insensitive.
City and state are optional fields.
The country value must be an ISO 3166-1 alpha-2 code returned from the
listSupportedCountries()
API.The format required for dateOfBirth is
yyyy-mm-dd
As well as returning a boolean indicator of the result of identity verification, the verified identity also provides the following information about the state of the identity verification attempt:
The
verificationMethod
property indicates the level of identity verification achieved for this user. Possible values areNONE
,KNOWLEDGE_OF_PII
andGOVERNMENT_ID
.For successfully verified identities, the
verifiedAtEpochMs
property specifies when verification succeeded. Where verification is not successful, the property will be set to 0 and can be ignored.The
verificationLastAttemptedAtEpochMs
property specifies when the user last attempted identity verification, irrespective of whether verification was successful or not. For a user where identity verification has never been attempted, or where identity verification has not been attempted since an administrative reset of their identity verification status, the value will be 0.The
requiredVerificationMethod
property indicates the level of identity verification required for this user in order to successfully complete identity verification. Different Sudo Platform environments may have different minimum required levels as well as cases where some users may require to achieve a higher level of verification, either to unlock greater entitlements or to manage risk.The
canAttemptVerificationAgain
property indicates whether the Sudo Platform will accept new identity verification attempts for this user. This property will be set tofalse
if the configured maximum number of retries is exceeded or earlier verification results do not permit retries to mitigate the risk of fraud, e.g. providing the PII of a deceased person.In Sudo Platform environments performing identity verification against live data sources, the
idScanUrl
property provides a link to a web page where a user can interactively take photos of their government issued identity documents and upload them for verification.
The requiredVerificationMethod
and canAttemptVerificationAgain
properties can be used in a client application to guide a user's identity verification journey. For example, an application might attempt to verify using PII until achieving success, or canAttemptVerificationAgain
is set to false. In the latter case, if the requiredVerificationMethod
is set to GOVERNMENT_ID
, the user could be directed to upload their id document, either via the verifyIdentityDocument
API described below, or by rendering the web page indicated by the idScanUrl
property described above.
When requiredVerificationMethod
is returned set to GOVERNMENT_ID
, the acceptableDocumentTypes
list will be set to the list of document types that can be accepted to verify the user's identity.
Once the user's identity has been verified successfully the verification status, including verification method, is persisted on the user record in Sudo Platform and the user is not required to verify their identity again.
Determine if a Face Image is Required with ID Document Verification
To check if a face image must be provided along with ID document (see verifyIdentityDocument method described below):
The isFaceImageRequired()
API returns a boolean value.
Verify Identity using Identity Documents
Verify identity by validating images of a driver's license, passport or other government issued identity document.
Before a user's identity can be verified using identity documents, they must first attempt identity verification using personally identifiable information (see the API above).
Identity documents must be issued by a government agency.
The document type can be one of
driverLicense
,passport
oridCard
.The country value must be an ISO 3166-1 alpha-2 code returned from the
listSupportedCountries()
API.Images of identification documents should be taken against a dark background, in a well-lit room and fill the majority of the image, with only a small border of the background surface showing.
All four corners of the identification document must be visible in the image.
Prior to Base64 encoding, the images should be in PNG, JPG or GIF format, and not exceed 5 MB in size each.
When submitting a passport for verification, use the photo page image for both the front and back images.
The face image parameter must only be included if required, based on the result of the
isFaceImageRequired
API described above.
Once submitted the document verification process can be immediate or may take some time. The status of the document verification process is returned in the documentVerificationStatus
property of the result. The documentVerificationStatus
property of the returned VerifiedIdentity
can have the following values:
notRequired
Required verification method does not require submission of an ID document
notAttempted
Required verification method requires submission of an ID document but ID document submission has not yet been performed.
pending
Document verification could not be completed synchronously and status will need to be periodically checked. To check, call the checkIdentityVerification
method.
documentUnreadable
The submitted document images could not be processed because they do not meet one or more of the criteria documented above.
succeeded
The submitted document images were able to be used to successfully verify the user's identity. This is a final state.
failed
The submitted document images were not able to be used to successfully verify the user's identity. This is a final state.
Once the user's identity has been verified successfully the verification status is persisted on the user record and the user is not required to verify their identity again.
Capture and Verify Identity Document
Use this API to initiate an on-boarding process. ID document images are provided to this API, which attempts to extract the identity information from the images of government issued ID documents, and then verify the identity using the extracted information.
Unlike the verifyIdentityDocument()
API described above, verifyIdentity()
API does not need to be called before calling the captureAndVerifyIdentityDocument()
API.
Identity documents must be issued by a government agency.
The document type can be one of
driverLicense or
idCard
. Passport images cannot be used as they do not provide a mechanism to verify address.The country value must be an ISO 3166-1 alpha-2 code returned from the
listSupportedCountries()
API.Images of identification documents should be taken against a dark background, in a well-lit room and fill the majority of the image, with only a small border of the background surface showing.
All four corners of the identification document must be visible in the image.
Prior to Base64 encoding, the images should be in PNG, JPG or GIF format, and not exceed 5 MB in size each.
The face image parameter must only be included if required, based on the result of the
isFaceImageRequired
API described above.
Last updated