Skip to main content

Document and Document Two Service

Shufti Pro provides document verification through various types of documents. The supported formats are passports, ID Cards, driving licenses and debit/credit cards. You can opt for more than one document type as well. In that case, Shufti Pro will give an option to end-users to verify their data from any of the given document types.

In case of off-site verification, you can provide more than one document image and use “additional proof” parameter for this. This is to ensure that the required credentials are easily visible e.g. a document might have name and image of individual at the front but the date of birth of that person is printed at the back of the document or on another page of the passport. If you opt for both facial and document verification, face of individual from document will be used to validate uploaded selfie.

{ 
// for document-two service write object name as "document_two"
"document" : {
"proof" : "",
"additional_proof" : "",
"supported_types" : ["id_card","driving_license","passport"],
"name" : {
"first_name" : "Johon",
"last_name" : "Livone"
},
"dob" : "1990-10-10",
"age" : 18,
"issue_date" : "2015-10-10",
"expiry_date" : "2025-10-10",
"gender" : "M",
"document_number" : "1234-1234-ABC",
"allow_offline" : "1",
"fetch_enhanced_data" : "1",
"backside_proof_required" : "0",
"show_ocr_form" : "1"

}
}
ParametersDescription
proofRequired: No
Type: string
Image Format: JPG, JPEG, PNG, PDF Maximum: 16MB
Video Format: MP4/MOV Maximum: 20MB
Provide valid BASE64 encoded string. Leave empty for an on-site verification.
additional_proofRequired: No
Type: string
Image Format: JPG, JPEG, PNG, PDF Maximum: 16MB
Video Format: MP4/MOV Maximum: 20MB
Provide valid BASE64 encoded string. Leave empty for an on-site verification.
supported_typesRequired: No
Type: Array
Document verification have two parameters: proof and additional_proof. If these two are not set or empty, it means that it should be an on-site verification. You can provide any one, two or more types of documents to verify the identity of user. For example, if you opt for both passport and driving license, then your user will be given an opportunity to verify data from either of these two documents. Please provide only one document type if you are providing proof of that document with the request. All supported types are listed here
Example 1: ["driving_license"]
Example 2: ["id_card", "credit_or_debit_card", "passport"]
dobRequired: No
Type: string
Format: yyyy-mm-dd
Provide a valid date.
Example: 1990-12-31
ageRequired: No
Type: integer/array
Allowed values are integers or array.
The Age parameter allows the client to set a minimum and maximum limit for acceptance of a user. The minimum age is defined as min and the maximum is defined as max within this object.
Example: 18
For More Details: Age
document_numberRequired: No
Type: string
Maximum: 100 characters
Allowed Characters are numbers, alphabets, dots, dashes, spaces, underscores and commas.
Example: 35201-0000000-0, ABC1234XYZ098
issue_dateRequired: No
Type: string
Format: yyyy-mm-dd
Provide a valid date.
Example: 2015-12-31
expiry_dateRequired: No
Type: string
Format: yyyy-mm-dd
Provide a valid date.
Example: 2025-12-31
genderRequired: No
Type: string
Accepted Values: M,F,O,m,f,o
Provide the gender which is given in the document.
F: Female
M: Male
O: Others
Example: M
allow_offlineRequired: No
Type: string
Accepted Values: 0, 1
Default Value: 1
This parameter allows user to upload their document in case of non-availability of a functional webcam. If value is 0, users can only perform Document Verification with the camera only.
allow_onlineRequired: No
Type: string
Accepted Values: 0, 1
Default-Value: 1
This parameter allows users to capture their document in real-time when internet is available. If value: 0 users can upload already captured document.

Note: if allow_offline: 0 priority will be given to allow_offline
fetch_enhanced_dataRequired: No
Type: string
Value Accepted: 1
Provide 1 for enabling enhanced data extraction for the document. Shufti Pro provides its customers with the facility of extracting enhanced data features using OCR technology. Now, instead of extracting just personal information input fields, Shufti Pro can fetch all the additional information comprising more than 100 data points from the official ID documents supporting 150 languages. For example height, place_of_birth, nationality, marital_status, weight, etc.(additional charges apply)
Extracted data will be returned in object under the key additional_data in case of verification.accepted or verification.declined.
For Details on additional_data object go to Additional Data
nameRequired: No
Type: object
In name object used in document service, first_name is required if you don't want to perform OCR of the name parameter. Other fields are optional.
Example 1: { "first_name" : "John", "last_name" : "Doe" }
Example 2: { "first_name" : "John", "last_name" : "Doe", "fuzzy_match" : "1"}
Parameters for name are listed here
backside_proof_requiredRequired: No
Type: string
Accepted Values: 0, 1
Default Value: 0
If the value of this parameter is set to 1, Shufti Pro will require the end-user to capture/upload both sides of the document to verify the identity. Enabling this parameter will also activate the front and back sides document match feature, which will verify if captured/uploaded front and back sides belong to the same document.
verification_instructionsRequired: No
Type: Object
This key allows clients to provide additional instruction for the service (document, document_two and address service). Such as if the client wants to allow paper-based, photocopied, laminated, screenshot, cropped or scanned documents for verification.
Example: {"allow_paper_based" : "1"}
For more details on Instructions Parameters click here
show_ocr_formRequired: No
Type: boolean
Accepted Values: 0, 1
default value: 1
The default value for this is 1. If this is set to 0, the user will not be shown the OCR form to validate the extracted information. This can be used within the Document, Document Two, and Address service. This value can also be applied to all services collectively. However, preference will be given to the value set within the service.

Note: Setting the value at 0 may cause data inaccuracy as the user does not have option to validate the extracted information.