Skip to main content
Tuteliq Verification is a production-grade identity and age verification pipeline that combines document intelligence, biometric matching, liveness detection, and multi-layer fraud prevention in a single API call. Most verification providers give you OCR and a face match. Tuteliq cross-references every data source on the document against every other — MRZ check digits, barcode data, OCR text, front vs. back, document vs. selfie — and flags any inconsistency as potential tampering. This catches forgeries that pass single-layer checks.

Cross-device flow

Recommended integration path for mobile, web, and native apps. Create a session on your server, open the URL in a webview or QR code, get the result back via Server-Sent Events. Includes code samples for iOS (Swift), Android (Kotlin), React Native, Flutter, and web (iframe).

Age Verification

Confirm user age via document analysis, biometric estimation, or both. Direct-submission API for same-device flows.

Identity Verification

Full identity confirmation with document authentication, face matching, liveness detection, and fraud prevention.

Document Checks

45 countries with algorithmic validation. ICAO 9303 MRZ. PDF417 barcode decoding.

Fraud Prevention

7 cross-referencing layers, deterministic document validation, and IP geolocation checks.

What makes Tuteliq different

45-Country Document Validation

Algorithmic check digit validation for CPF, personnummer, Aadhaar, Codice Fiscale, CURP, SSN, and 39 more. Not just format checks — full mathematical verification.

7-Layer Cross-Referencing

MRZ vs. OCR. Barcode vs. OCR. Front vs. back. Document vs. selfie. Declared type vs. detected type. IP vs. document country. OCR confidence gating. Every inconsistency is flagged.

No Image Ever Reaches a Model

Document validation is deterministic: ICAO 9303 check digits, PDF417/AAMVA decoding, and field cross-referencing. Age comes from our own model on our own infrastructure. No identity document or selfie is sent to a language model.

Tier availability


Age Verification

POST /api/v1/verify/age/submit Verify a user’s age through document analysis, biometric age estimation, or both. Returns a verified age range, confidence score, and detailed document intelligence.

Verification methods

Request

Response

Response fields

Age extraction sources

DOB is extracted from multiple sources and cross-referenced. Priority order:
  1. MRZ (Machine Readable Zone) — Most reliable. ICAO 9303 check digit validated.
  2. PDF417 barcode — US/Canadian driver’s licenses. AAMVA-encoded structured data.
  3. OCR labels — Text patterns like “Date of Birth:”, “DOB:”, date formats.
  4. Selfie estimation — AgeNet, our own convolutional age-estimation model, run on our infrastructure (fallback). No LLM and no third-party vision API touches a verification image.
When multiple sources disagree, the verification flags the inconsistency.

Supported documents

Documents must be a clear, well-lit photo in JPEG or PNG format. Maximum file size: 10MB.

Identity Verification

POST /api/v1/verify/identity/submit Full KYC identity verification combining document authentication, face matching, liveness detection, and country-specific national-ID validation. Assure plan and above.

What it checks

Every identity verification runs all of these checks automatically:

Request

cURL
Pass passport=@passport.jpg instead of id_front/id_back when verifying a passport. The liveness_token is issued by the liveness challenge step (see Liveness detection doc).

Response

All identity fields are null when not extractable (e.g. height_cm for national ID cards that don’t print height, or national_id for countries without a per-country extractor in this release).

Response fields

national_id object

Returned only when the document’s country has a per-country extractor in this release. Countries with validators but no extractor yet (returns null for national_id until extractors land): DEU, FRA, ITA, NLD, GBR, IRL, CHE, AUT, CZE, ROU, HRV, BGR, GRC, HUN, EST, LVA, LTU, ARG, MEX, CHL, COL, PER, ECU, URY, CAN, USA, JPN, KOR, ZAF, THA, TUR.

Verification outcomes


Integration patterns

Age gate on sign-up

Moderator/admin verification

Verification plans with a monthly allowance

Some plans are sold as a monthly verification allowance, with verification packs you can buy on top. On these plans:
  • The allowance is a hard limit. Each month the included verifications are used first, then purchased packs, oldest first. Packs carry over from month to month and do not expire. Once both are used, new verifications are refused until the next period starts or more are bought; nothing is billed as overage.
  • The check happens when a verification starts: when a cross-device session is created, and on the direct submit routes. A refused request does no verification work and is not counted. Sandbox keys count toward the allowance like any other key.
  • The period is a calendar month in the plan’s timezone.
  • Usage stays readable. GET requests to /api/v1/usage/* are available on these plans. /api/v1/usage/monthly adds a verification object for the current period:
Endpoints outside verification and usage return 403 with SUB_7006 on these plans.

Redirect URLs must use https

The redirect URL a user returns to after a hosted verification is set in the dashboard, for the account or per API key. It must use https. If it does not, creating a verification session is refused with VERIFY_11011 (403), and the message says which setting to update.

Error handling

Verification errors use the VERIFY_11xxx code range:
cURL example error response

Data handling

Verification involves sensitive personal data. Tuteliq processes documents and selfies in real time and does not store images or extracted PII after the verification is complete. Only the verification result (age range, pass/fail) is retained. See the GDPR page for data handling details.

Next steps

Document Checks

Deep dive into 45-country document validation, MRZ parsing, and barcode reading.

Liveness Detection

How visual liveness analysis prevents spoofing attacks.

Fraud Prevention

Multi-layer cross-referencing, MRZ check-digit validation, and geographic consistency checks.