Indian Passport Family Details OCR
Automate background checks and visa applications by securely and accurately extracting family lineage and relationship data from Indian passport bottom pages.

The Bottleneck in Background Verification
Background verification (BGV) agencies, immigration consultants, and visa processors spend countless hours manually typing out Father, Mother, and Spouse names from passport scans. The proximity of these fields to the address block and varying label structures often confuse generic OCR systems, causing data spillage across fields. Discover how we solve these complexities globally in our travel identity verification solutions.
StructOCR: Precision Relationship Parsing
Powered by our core Passport OCR engine, our dedicated relationship module isolates the exact line items for family members, ignoring surrounding noise. Deployed on secure Cloudflare edge nodes with a strict process-and-forget architecture, StructOCR delivers precise JSON key-value pairs for lineage data while ensuring zero data retention, radically accelerating the pre-processing phase for visa applications.
Live Demo: Passport scanner
No registration required. Upload a file to test the extraction.
Drop files here or click to browse
JPG · PNG · WebP · up to 500 files · max 4.5 MB each
Core Industry Applications
Corporate Background Checks (BGV)
Automate the data entry phase of employee screening globally. We support borderless USDT/Crypto payments for international SaaS operators. View our straightforward API pricing.
Visa & Immigration Processing
Auto-populate complex DS-160 or Schengen visa application forms with accurate family details extracted in milliseconds.
Matrimonial & Dating Verification
Verify family details for premium tier users on trust-based platforms seamlessly, keeping sensitive data off public cloud storage.
Educational Admissions
Streamline university admissions for international Indian students by parsing required parental data automatically via pure API calls.
Technical Specs
- Field Isolation: Advanced NLP logic to accurately separate closely printed parent names from preceding labels.
- Null Handling: Safely returns null for absent fields (e.g., unmarried individuals with no spouse listed).
- Base64 & File Native: Designed for server-to-server data streams, keeping PII completely off public URLs.
- Cloudflare Routing: Ensures high availability, low latency, and strict zero-data-retention processing.
Key Features
- Father Name Extraction: Accurate capture ignoring preceding labels and noise.
- Mother Name Extraction: Reliable extraction even in tightly packed, poorly aligned layouts.
- API-First Architecture: Pure HTTP integration completely eliminates SDK bloat and version conflicts.
Integration & AI Prompts
StructOCR is API-first, eliminating the need for bulky SDKs. Extract specific family nodes directly from the JSON response using raw files or Base64 strings. See our Passport OCR Developer Documentation for full schema details.
import requests
import base64
# 📚 Developer Docs: https://structocr.com/developers/passport-ocr
# Note: StructOCR is strictly API-first. It natively supports File Uploads,
# Base64-encoded strings, and direct Image URLs without requiring an SDK.
with open("passport_family.jpg", "rb") as image_file:
base64_image = base64.b64encode(image_file.read()).decode('utf-8')
url = "https://api.structocr.com/v1/passport/india/back-page"
headers = {
"x-api-key": "YOUR_API_KEY",
"Content-Type": "application/json"
}
payload = {
"img": base64_image
}
try:
# Processed in-memory at the edge with zero data retention
print("Extracting Family Details...")
response = requests.post(url, headers=headers, json=payload)
result = response.json()
if result.get('success'):
print("✅ Family Details Extracted!\n")
# Core identity context
core = result['data']
print(f"Applicant: {core.get('given_names')} {core.get('surname')}")
# Deep family linkage from the back page
family = core['country_specific']['last_page']
print(f"Father: {family.get('father_name')}")
print(f"Mother: {family.get('mother_name')}")
print(f"Spouse: {family.get('spouse_name', 'N/A')}")
else:
print(f"❌ Extraction Failed: {result.get('error')} - {result.get('message')}")
except Exception as e:
print(f"Error: {e}")Standardized JSON Output
Receive clean key-value pairs for family lineage, perfectly formatted for your database schema.
{
"success": true,
"data": {
"type": "passport",
"country_code": "IND",
"nationality": "INDIAN",
"passport_number": "Z1234567",
"surname": "SHARMA",
"given_names": "RAHUL",
"sex": "M",
"date_of_birth": "1988-07-22",
"place_of_birth": "NEW DELHI",
"date_of_issue": "2021-04-10",
"date_of_expiry": "2031-04-09",
"issuing_authority": "MINISTRY OF EXTERNAL AFFAIRS",
"country_specific": {
"last_page": {
"father_name": "AMIT SHARMA",
"mother_name": "SITA SHARMA",
"spouse_name": "PRIYA SHARMA",
"address": "FLAT 4B, GREENWOOD APARTMENTS, NEW DELHI PIN: 110001, INDIA",
"old_passport_number": "P7654321",
"old_passport_issue_date": "2010-01-05",
"old_passport_issue_place": "DELHI",
"file_no": "DL1076071103622",
"ecr_status": null
}
}
}
}Frequently Asked Questions
Do you provide an SDK for mobile integration?
StructOCR is intentionally designed as an API-first platform rather than providing proprietary SDKs. This allows you to use your preferred language wrappers and eliminates app size bloat, while natively supporting file uploads and Base64 directly from your backend.
What happens if a field (like spouse name) is blank on the passport?
The API dynamically detects missing fields and will return a null for that specific JSON key, ensuring your application schema remains intact without throwing errors.
Does it process both Hindi and English text?
Currently, our engine is highly optimized for the English printed text on the document, which serves as the primary standardized data point for global BGV and immigration processing systems.
Explore More Travel & KYC Solutions
ISO 8601 Passport Date Parsing API
Stop writing complex regex. Automatically extract and normalize passport dates to strict ISO 8601 (YYYY-MM-DD) format. Upload an image to test our free live demo.
Passport VIZ Extraction API for Airlines
Automate airline check-ins by extracting both MRZ and VIZ passport data instantly via a pure REST API. Upload an image to test our free live demo today.
Proof of Address (PoA) OCR API
Automate PoA verification. Extract and validate permanent residential addresses from Indian passport back pages. Zero-retention API-first integration.
Remote Hiring Identity OCR API
Automate global remote hiring with our zero-retention identity OCR API. Extract passport data securely without SDKs. Upload an image to test our free live demo.
REST API for Global Passport MRZ
Extract global passport MRZ data instantly via our fast, zero-retention REST API. No SDK required. Upload an image to test our live demo for free.
Right-to-Work Passport Verification API
Automate global HR compliance. Extract passport data instantly with our zero-retention OCR API. No SDK required. Upload an image to test our free live demo.
Zero-Retention Passport OCR for Neo-Banks
Secure your digital onboarding with our zero-retention passport OCR API for neo-banks. Process global KYC data in-memory. Upload an image to test free.
Automated Hotel Check-In Passport Scanner API
Streamline hotel check-ins with our automated passport scanner API. Extract global guest data instantly without SDKs. Upload an image to test our free live demo.
Crypto KYC Passport API (No SDK Required)
Zero-retention Passport OCR API for Web3 and Crypto KYC. Extract global MRZ and VIZ data instantly without SDK bloat. Upload an image to test our free live demo.
DPDP Compliant Indian Passport OCR
DPDP-compliant, zero data retention OCR API for Indian passports. Securely extract back-page PII (Address, Parents' Names) for KYC workflows. File, Base64, and URL supported.
Technical Comparisons & Integrations
Explore platform integrations and competitive analysis
Add Passport OCR to Your Bolt.new App in 5 Minutes
Step-by-step guide to integrating the StructOCR Passport scanner API into a Bolt.new app. Build travel, hospitality, and global KYC flows right in your browser.
Add Passport OCR using Cursor in 5 Minutes
Step-by-step guide to integrating the StructOCR Passport scanner API using the Cursor AI code editor. Build travel, hospitality, and global KYC flows rapidly.
Extracting ECR Status & File Numbers: Generic OCR vs. StructOCR Indian Passport API
Learn why generic text extractors fail to capture critical Indian KYC fields like ECR status and File Numbers, and how a specialized API structures this data automatically.
Heavy KYC SDKs vs. StructOCR Passport API for Mobile Apps
Discover why modern app developers are abandoning bulky on-device OCR SDKs in favor of lightweight, edge-deployed Passport APIs.
Add Passport OCR to Your Lovable.dev App in 5 Minutes
Step-by-step guide to integrating the StructOCR Passport scanner API into a Lovable.dev app through a secure server-side function for travel and KYC flows.
Add Passport OCR to Your Replit App in 5 Minutes
Step-by-step guide to integrating the StructOCR Passport scanner API into a Replit application. Build travel, hospitality, and global KYC flows using Replit Agent and Secrets.
From tutorial to production in 5 minutes.
You've seen the code. Now get your API key, grab your 200 free credits, and see it work with your own images. No credit card required.