Skip to main content

Onsite Integration

In onsite verification, Shufti Pro will directly interact with the end user to collect the required proofs for verification purposes.

Parameters and Description

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 has 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 the 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 an 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.
Examples 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 the users to upload their document in case of non-availability of a functional webcam. If the 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 the users to capture their document in real-time when the internet is available. If the value is 0, users can upload already captured documents.

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 the 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 or laminated 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.
verification_modeRequired: No
Type: string
Accepted Values: any, image_only, video_only
This key specifies the types of proofs that can be used for verification. In the "video_only" mode, Shufti Pro's client is restricted to submitting "Base64" encoded videos, which must be in the MP4 or MOV format. The "any" mode allows a combination of images and videos to be submitted as proofs for verification. If there is a conflict between the service level key and the general level key, priority is assigned to the service level key.
process_only_ocrRequired: No
Type: string
Accepted Values: 0, 1
Default Value: 0
This key enables the OCR-only mode, which is used for extracting text from documents without further verification. When this mode is activated, the service immediately concludes the operation after the required data is extracted. The process completes as soon as the text extraction is finalized, making it ideal for systems that require quick data retrieval from documents without additional verification steps.

info

The supported documents, onsite and offsite parameters, requests, responses, and decline reasons remain consistent for both the Document and Document Two services

Document Request Object

Run in Postman

document-service-onsite-with-ocr
{
"document": {
"proof": "",
"supported_types": ["id_card", "driving_license", "passport"],
"name": {
"first_name": "",
"last_name": ""
},
"additional_proof": "",
"dob": "",
"age": "",
"issue_date": "",
"expiry_date": "",
"document_number": "",
"allow_offline": "1",
"allow_online": "1",
"fetch_enhanced_data": "1",
"backside_proof_required": "0",
"verification_mode": "any",
"gender": "",
"show_ocr_form": "1",
"nationality": ""
}
}

Document Two Request Object

document-two-service-onsite-with-ocr
{
"document_two": {
"proof": "",
"supported_types": ["id_card", "driving_license", "passport"],
"name": {
"first_name": "",
"last_name": ""
},
"additional_proof": "",
"dob": "",
"age": "",
"issue_date": "",
"expiry_date": "",
"document_number": "",
"allow_offline": "1",
"allow_online": "1",
"fetch_enhanced_data": "1",
"backside_proof_required": "0",
"verification_mode": "any",
"gender": "",
"show_ocr_form": "1",
"nationality": ""
}
}