Full-Field Italy Vehicle Registration (Carta di Circolazione) OCR
Test for free with image upload! Accurately extract all structured data—including VIN, Plate, and specific EU codes—from the folded 4-quadrant Italian Carta di Circolazione.

The Challenge: 4-Quadrant Layouts and Cryptic EU Codes
The Italian vehicle registration certificate (Carta di Circolazione or 'Libretto') is a dense, multi-page paper document folded into 4 quadrants. When users photograph it, perspective distortion and fold creases are inevitable. Crucially, like France and Germany, it relies on cryptic EU standard alphanumeric codes (e.g., J.1 for vehicle class, P.5 for engine type) rather than explicit labels, making template-based extraction impossible. Learn more about our robust semantic parsing capabilities on our Vehicle Registration OCR product page.
Fold Correction & Dynamic EU Fallback
StructOCR is specifically engineered to conquer EU documents like the Carta di Circolazione. Our visual models flatten fold creases and deskew perspective distortion. Our semantic Key-Value mapping intelligently maps universal fields (VIN, Make) while dynamically sorting cryptic Italian/EU codes into a `localized.generic.unmapped_fields` object, preserving all regulatory data. Discover how this fits into cross-border workflows in our Vehicle Registration Solutions guide.
Live Demo: Vehicle Registration OCR
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
Car Rental & Fleet Management
Digitize paper Librettos in bulk. Validate all vehicle specifications and emissions limits automatically for corporate fleets.
Auto Insurance Underwriting
Accelerate policy quoting by extracting precise engine specifications (P.5) and environmental classes directly from customer uploads.
Used Car Marketplaces
Instantly verify inventory by automatically extracting the VIN and registration details from dealer uploads.
Automated Toll & Parking Systems
Streamline municipal parking permits and toll enforcement by automatically extracting and verifying vehicle registration dimensions and emission classes.
Technical Specs
- Template-Free Architecture: Processes highly variable formats dynamically without needing manual bounding boxes.
- Dynamic Fallback Schema: Automatically extracts Italy-specific parameters into the `unmapped_fields` node.
- Format Support: Processes JPG, PNG, and WebP images up to 4.5MB.
- Free Testing: Start immediately with our interactive free image upload test in the dashboard.
Key Features
- Universal Fields: Extracts VIN, Plate, Make, Model, Year, and Color into standardized English nodes.
- Regional Field Mapping: Contextually identifies and groups unique regulatory codes and formats.
- Robust Visual Processing: Ignores holograms, Moiré patterns, and physical creases.
Integration & API Documentation
Easily integrate our full-field OCR API. For full technical details, visit our Developer API Documentation.
import requests
import base64
# 📸 Test for free with your own image upload: https://structocr.com/developers/vehicle-registration-ocr
with open("italy-carta-di-circolazione-full-ocr.jpg", "rb") as image_file:
base64_image = base64.b64encode(image_file.read()).decode('utf-8')
url = "https://api.structocr.com/v1/vehicle-registration"
headers = {
"x-api-key": "YOUR_API_KEY",
"Content-Type": "application/json"
}
payload = {
"img": base64_image
}
response = requests.post(url, headers=headers, json=payload)
result = response.json()
if result.get('success'):
data = result.get('data', {})
std = data.get('standardized', {})
print("✅ Standardized VIN:", std.get('vin'))
# Italy specific fields are captured in the generic fallback
loc = data.get('localized', {})
if 'generic' in loc and loc['generic'].get('unmapped_fields'):
unmapped = loc['generic']['unmapped_fields']
print("✅ J 1:", unmapped.get('j_1'))
print("✅ P 5:", unmapped.get('p_5'))Standardized + Generic JSON Output
Our API delivers a structured JSON response, separating universal vehicle specs and placing region-specific data into the generic fallback object.
{
"success": true,
"data": {
"document": {
"country_code": "IT",
"document_type": "VEHICLE_REGISTRATION",
"confidence_score": 0.98
},
"standardized": {
"vin": "SAMPLEVIN12345678",
"plate": {
"number": "ABC-123",
"formatted": "ABC 123"
},
"make_normalized": "Toyota",
"year": 2020
},
"localized": {
"generic": {
"unmapped_fields": {
"j_1": "M1",
"p_5": "199A3000",
"v_9": "2003/76/CE-B"
}
}
}
}
}Frequently Asked Questions
How can I test the API before committing?
You can perform a free image upload test directly from our API documentation page or dashboard. Simply upload a sample document to see the JSON output instantly.
Does the API understand specific local formats?
Yes. While standard fields like VIN and Make are mapped globally, unique Italy specific labels are systematically captured into the `generic.unmapped_fields` node.
Can it read degraded or poor quality photos?
Yes, our neural network actively compensates for physical creases, low lighting, and smartphone camera glare.
Explore More Vehicle-registration Solutions
Global Vehicle Registration OCR API
Our flagship API for parsing complex global vehicle documents. Unified extraction for over 150+ countries with dynamic localization.
Full-Field Japan Vehicle Registration (Shaken-sho (車検証)) OCR
Test our Japan Shaken-sho (Vehicle Inspection Certificate) OCR API with a free image upload. Extract full fields including high-density Kanji, VIN, and chassis numbers.
Full-Field Mexico Vehicle Registration (Tarjeta de Circulación) OCR
Test our Mexican Tarjeta de Circulación OCR API with a free image upload. Extract full fields including VIN and REPUVE details across all 32 fragmented state formats.
Full-Field Netherlands Vehicle Registration (Kentekenbewijs) OCR
Test our Dutch Kentekenbewijs OCR API with a free image upload. Overcome severe plastic card holograms and glare to extract VIN and MRZ-style data.
Ride-Hailing Driver Onboarding Workflow Automation
Scale your ride-hailing or delivery platform globally. Automate driver background checks by instantly scanning vehicle registration documents.
Full-Field Saudi Arabia Vehicle Registration (Istimara) OCR
Test our Saudi Istimara OCR API with a free image upload. Extract full fields including the 9-digit sequence number, plate details, and VIN from bilingual registrations.
Full-Field South Africa Vehicle Registration (NaTIS Document / RC1) OCR
Test our South African NaTIS Document OCR API with a free image upload. Extract full fields including VIN, Tare, and GVM from A4 printed certificates.
Full-Field Spain Vehicle Registration (Permiso de Circulación) OCR
Test our Spanish Permiso de Circulación OCR API with a free image upload. Extract full fields including complex EU codes and VIN from green folded documents.
Full-Field Thailand Vehicle Registration (Blue Book) OCR
Test our Thailand Lem Tabian (Blue Book) OCR API with a free image upload. Extract full fields including Thai script, VIN, and engine numbers from complex vehicle registrations.
Full-Field UAE Vehicle Registration (Mulkiya) OCR
Test our UAE Mulkiya OCR API with a free image upload. Extract full fields including engine number, origin, vehicle class, and VIN from bilingual Arabic/English registrations.
Full-Field UK Vehicle Registration (V5C Logbook) OCR
Test our UK V5C Logbook OCR API with a free image upload. Overcome perspective distortion to extract full fields including VIN, Document Reference Number, and vehicle specs.
Technical Comparisons & Integrations
Explore platform integrations and competitive analysis
Add VIN OCR to Your Lovable.dev App in 5 Minutes
Step-by-step guide to integrating the StructOCR VIN scanner API into a Lovable.dev app. Build automotive and fleet tools with zero backend required.
Manual TOS Entry vs. Container OCR Automation API
Analyzing the ROI and operational efficiency of replacing manual gate checkers with an automated Container OCR API in logistics yards.
OpenALPR vs. StructOCR API for VIN Decoding
Why traditional License Plate Recognition (ALPR) engines are not suitable for scanning Vehicle Identification Numbers (VINs).
Add Container OCR to Your Replit App in 5 Minutes
Step-by-step guide to integrating the StructOCR shipping container API into a Replit application. Build logistics and yard management tools using Replit Agent and Secrets.
Add Driver's License OCR to Your Replit App in 5 Minutes
Step-by-step guide to integrating the StructOCR Driver's License scanner API into a Replit application. Build car rental and mobility onboarding flows using Replit Agent and Secrets.
Add HIN OCR to Your Replit App in 5 Minutes
Step-by-step guide to integrating the StructOCR HIN (Hull Identification Number) scanner API into a Replit application. Build marine and boat management tools 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.