Insurance Customer Intake with Driver License PDF417
Use the parsed record to pre-fill an application, clearly mark it as customer-provided data, and ask the applicant to confirm before submission. The workflow captures structured data for confirmation without treating a barcode decode as proof of identity or authenticity.
200 free credits = 100 Driver License scans, no credit card. Then from $5 for 500 credits, pay as you go. See pricing

The Data-Entry Problem in insurance intake
Agents and online forms repeatedly request name, address, license number, and date information already encoded on a US license. Teams also need to distinguish a readable barcode from a verified person or authentic credential; combining those concepts creates compliance and product risk.
Deterministic Barcode Parsing with Human Confirmation
Use the parsed record to pre-fill an application, clearly mark it as customer-provided data, and ask the applicant to confirm before submission. StructOCR's driver license PDF417 API decodes the barcode and parses the AAMVA record without asking a generative model to reconstruct unreadable values. Do not treat barcode output as proof of coverage, identity, risk, or claim validity.
Live Demo: US Driver License PDF417 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
Photograph the barcode on the back, not the whole card. Let it fill the frame and tap on it to focus.
No document handy?
Workflow Applications
Policy applications
Pre-fill document_number, address, date_of_birth and require confirmation before committing the record.
Claims intake
Return explicit retake instructions when the barcode is cropped, blurred, or affected by glare.
Agent-assisted forms
Keep the data-capture result separate from approval, eligibility, fraud, and compliance decisions.
Technical Specs
- Endpoint: POST https://api.structocr.com/v1/driver-license-pdf417
- Inputs: JPG, PNG, or WebP; Base64 JSON or multipart upload; maximum 4.5 MB
- Output: Normalized AAMVA identity, address, credential, class, restriction, and endorsement fields when encoded
- Errors: Explicit PDF417_NOT_DECODED and AAMVA_NOT_VALID responses support retake and review flows
- Cost: 2 credits for a successful decode; processing failures are refunded
- Decision boundary: The API extracts data and does not make identity, authenticity, eligibility, or legal-compliance decisions
Key Features
- Server-side credentials: Keep the StructOCR API key out of browsers, kiosks, and mobile application bundles.
- Data minimization: Persist only the fields the documented workflow actually requires.
- User confirmation: Present extracted fields for correction before they enter a system of record.
- Recoverable capture: Ask for a clearer image instead of guessing from a failed barcode.
- Independent decisioning: Do not treat barcode output as proof of coverage, identity, risk, or claim validity.
Server-Side PDF417 Integration
Send the complete license-back image from a protected backend. This example selects fields relevant to insurance intake and handles HTTP 422 as a retake or review state.
import base64
import os
import requests
with open("license-back.jpg", "rb") as image_file:
image = base64.b64encode(image_file.read()).decode("ascii")
response = requests.post(
"https://api.structocr.com/v1/driver-license-pdf417",
headers={"x-api-key": os.environ["STRUCTOCR_API_KEY"]},
json={"img": image},
timeout=30,
)
if response.status_code == 422:
print("Retake or review:", response.json().get("error"))
else:
response.raise_for_status()
data = response.json()["data"]
print("document_number:", data.get("document_number"))
print("address:", data.get("address"))
print("date_of_birth:", data.get("date_of_birth"))Illustrative AAMVA Data
This wholly fictional response demonstrates the API shape for product design and testing. It is not a real person's credential data.
{
"success": true,
"data": {
"type": "drivers_license",
"source": "pdf417",
"country_code": "USA",
"region": "CA",
"document_number": "SAMPLE1234",
"surname": "SAMPLE",
"given_names": "ALEX MORGAN",
"first_name": "ALEX",
"middle_name": "MORGAN",
"sex": "X",
"date_of_birth": "1990-01-15",
"date_of_issue": "2025-01-15",
"date_of_expiry": "2030-01-15",
"address": "100 EXAMPLE AVE",
"city": "SAMPLE CITY",
"postal_code": "00000",
"vehicle_class": "C",
"restrictions": null,
"endorsements": null,
"document_discriminator": "SAMPLE-DISCRIMINATOR",
"issuer_identification_number": null,
"aamva_version": 10,
"jurisdiction_version": 0
}
}Frequently Asked Questions
Which fields are useful for insurance intake?
Common fields include document_number, address, date_of_birth. Optional values can be null when they are not encoded in the submitted record.
Does a successful PDF417 response verify identity or document authenticity?
No. Do not treat barcode output as proof of coverage, identity, risk, or claim validity.
How should unreadable barcode images be handled?
Use the 422 error code to request a glare-free photo of the complete license back. Do not automatically retry the same image or guess missing values.
Explore More Driver License OCR Solutions
Malaysian Lesen Memandu OCR API
Extract the IC number, identity fields, and vehicle classes from Malaysian driving licenses (Lesen Memandu). Test our edge-routed API with a free image upload.
Philippine LTO Driver License OCR API
Accurately extract data from Philippine LTO driver's licenses. Parse restriction codes, conditions, and identity fields via our edge-routed API. Test for free.
Ride-Share Driver License Barcode Onboarding API
Use PDF417 and AAMVA parsing for ride-share onboarding. Pre-fill document_number, date_of_expiry, region, handle unreadable barcodes, and keep API credentials server-side.
Self-Storage Rental Intake with a Driver License Barcode
Use PDF417 and AAMVA parsing for self-storage leasing. Pre-fill given_names, surname, address, handle unreadable barcodes, and keep API credentials server-side.
Indonesian SIM OCR API
Extract NIK, identity, and category data from Indonesian driver's licenses (Surat Izin Mengemudi). Test our low-latency, edge-routed API with a free image upload.
Telecom Customer Onboarding with Driver License PDF417
Use PDF417 and AAMVA parsing for telecom account opening. Pre-fill given_names, surname, date_of_birth, handle unreadable barcodes, and keep API credentials server-side.
UK Driving Licence OCR API
Extract name, licence number (field 5), address (field 8), dates and categories from UK DVLA driving licences as JSON. Free upload test and 100 free API scans.
US Driver License Scanner API & SDK
Scan US driver's licenses from all 50 states with a REST API or our Python and Node SDKs. Extract name, DOB, address and the Document Discriminator (DD). 100 free scans.
Vehicle Test-Drive License Scanning with PDF417
Use PDF417 and AAMVA parsing for automotive dealerships. Pre-fill document_number, given_names, surname, handle unreadable barcodes, and keep API credentials server-side.
Visitor Management with Driver License PDF417 Data
Use PDF417 and AAMVA parsing for visitor registration. Pre-fill given_names, surname, document_number, handle unreadable barcodes, and keep API credentials server-side.
Technical Comparisons & Integrations
Explore platform integrations and competitive analysis
Add Driver's License OCR to Your Bolt.new App in 5 Minutes
Step-by-step guide to integrating the StructOCR Driver's License scanner API into a Bolt.new app. Build car rental and mobility onboarding flows right in your browser.
Add Driver's License OCR using Cursor in 5 Minutes
Step-by-step guide to integrating the StructOCR Driver's License scanner API using the Cursor AI code editor. Build car rental and mobility onboarding flows rapidly.
Add Driver's License OCR to Your Lovable.dev App in 5 Minutes
Step-by-step guide to integrating the StructOCR Driver's License scanner API into a Lovable.dev app. Build car rental and mobility onboarding flows with zero backend.
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 Driver's License OCR to Your v0 App in 5 Minutes
Step-by-step guide to integrating the StructOCR Driver's License scanner API into a v0 by Vercel app. Build car rental and mobility onboarding flows with zero backend.
Add Container OCR to Your Bolt.new App in 5 Minutes
Step-by-step guide to integrating the StructOCR shipping container API into a Bolt.new app. Build logistics and yard management tools right in your browser.
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.