What is a Verification?
A Verification is the result of running checks against an identity document. When you create a verification, Beltic processes the associated document, performs a series of authenticity and data-quality checks, and returns a detailed result. Verifications are the core of the Identity API’s value — they tell you whether a document is genuine, whether the data can be trusted, and whether any issues were detected.Verification Types
| Type | Resource Type | Description |
|---|---|---|
| IDV | verification/idv | Verifies government-issued identity documents (passports, driver’s licenses, etc.) |
| Address | verification/address | Verifies proof of address documents |
How Verification Works
When you create a verification, the following happens synchronously:- Document processing — The document images are analyzed using advanced document recognition
- Data extraction — Personal information is extracted from the document (name, DOB, document number, etc.)
- Check execution — Multiple verification checks are run against the document
- Status determination — An overall status is computed from individual check results
- Response — The complete verification result is returned
Verification creation is a synchronous operation. The response includes the full result — no polling required.
Creating a Verification
With a Session and Document
The most common pattern — verify a document within a session:Standalone (Without a Session)
You can also run a verification without a session — useful for API-only integrations:Verification Response
A verification response contains the status, extracted data, and check results:Verification Statuses
| Status | Description |
|---|---|
initiated | Verification has been created and processing has started |
passed | All required checks passed |
failed | One or more required checks failed |
requires_retry | The verification could not be completed — typically due to image quality issues. The applicant should retry with better images. |
canceled | The verification was canceled |
Understanding Checks
Each verification includes an array of checks — individual tests performed against the document. Every check has:| Field | Description |
|---|---|
name | Identifier of the check (e.g., optical_mrz, status_optical) |
status | Result: passed, failed, or not_applicable |
requirement | How the check affects the overall result: required, not_required, or requires_retry |
reasons | Array of reason strings if the check failed |
metadata | Additional details about the check |
Check Categories
Status Checks
Status Checks
High-level status indicators from the document processing engine:
status_optical— Overall optical analysis resultstatus_portrait— Portrait/photo analysis resultstatus_rfid— RFID chip reading result (if applicable)
Optical Checks
Optical Checks
Detailed analysis of the document’s visual elements:
optical_doc_type— Document type recognitionoptical_expiry— Document expiration checkoptical_image_qa— Image quality assessmentoptical_mrz— Machine Readable Zone validationoptical_security— Security feature analysisoptical_text— Text consistency and validity
Authenticity Checks
Authenticity Checks
Advanced fraud detection checks:
authenticity_uv_luminescence— UV luminescence patternsauthenticity_ir_b900— Infrared B900 analysisauthenticity_image_pattern— Image pattern analysis- And more — the exact checks vary by document type and capture method
Image Quality Checks
Image Quality Checks
Ensure the document images meet minimum quality standards:
image_quality_glare— Glare detectionimage_quality_focus— Focus/sharpness assessmentimage_quality_resolution— Resolution adequacy- And others for colorness, perspective, bounds, etc.
How Status is Determined
The overall verification status is computed from the individual checks:- If any check with
requirement: "required"hasstatus: "failed"→ verification isfailed - If any check has
requirement: "requires_retry"→ verification isrequires_retry - If all required checks pass → verification is
passed
Auto-Update Session
When you include"auto_update_session": true in the verification meta, the session is automatically updated with the extracted data from the document:
- Person name (first, middle, last)
- Date of birth
- Sex
- Address (if present on the document)