Saudi Arabia Driving Licence OCR API
Read the Saudi driving licence from a photo and get the licence number, name, dates and classes as structured JSON. Upload an image below to test it free.
200 free credits = 100 Driver License scans, no credit card. Then from $5 for 500 credits, pay as you go. See pricing

What Makes the Saudi driving licence Hard to Parse
The Saudi driving licence is issued by the General Directorate of Traffic (Muroor). Saudi licences are printed in Arabic and English and carry the holder's national ID number for citizens or Iqama number for residents. Some dates can appear in the Hijri calendar, so a pipeline that expects Gregorian dates has to check what it receives.
One API Call, Named Fields
The StructOCR Driver License OCR API returns the licence number, the holder's name in Latin script, the ID or Iqama number, date of birth, expiry date and licence type. Dates are returned as YYYY-MM-DD. Send a JPG, PNG, WebP or PDF as Base64 JSON or as a multipart upload; there is no SDK to embed in your app, although official Python and Node.js SDKs are available. Step-by-step code is in the Python guide. Usage is billed per successful scan with pay-as-you-go pricing.
Live Demo: Driver License OCR Scanner
No registration required. Upload a file to test the extraction.
Drop files here or click to browse
JPG · PNG · PDF · TIFF · up to 500 files · max 4.5 MB each
No document handy?
Where Teams Use It in Saudi Arabia
Car Rental
Read residents' licences at pickup and keep the ID or Iqama number with the rental agreement.
Delivery Platforms
Collect licence details for couriers and drivers during onboarding.
Motor Insurance
Prefill policyholder details from a photo of the licence.
Technical Specs
- Endpoint: POST https://api.structocr.com/v1/driver-license
- Input: JPG, PNG, WebP or PDF up to 4.5 MB, as Base64 JSON or multipart upload
- Price: 2 credits per successful scan; new accounts get 200 free credits (100 scans)
- Retention: Images and results are kept for at most 24 hours for quality spot-checks, then deleted
Key Features
- Named fields: The licence number, the holder's name in Latin script, the ID or Iqama number, date of birth, expiry date and licence type.
- Normalized dates: Dates are returned as YYYY-MM-DD.
- Good to know: If a date is printed only in the Hijri calendar, check the returned value before using it in a Gregorian date comparison.
Integration & AI Prompts
Install the official SDK and pass a photo of the licence. Full request and response details are in the driver license API reference.
# pip install structocr
import os
from structocr import StructOCR
client = StructOCR(api_key=os.environ["STRUCTOCR_API_KEY"])
result = client.scan_driver_license("licence.jpg")
if result.get("success"):
data = result["data"]
print(data["document_number"], data["surname"], data["date_of_expiry"])Standardized JSON Output
An illustrative response for a Saudi driving licence, with fictional values.
{
"success": true,
"data": {
"type": "drivers_license",
"country_code": "SAU",
"region": null,
"document_number": "1234567890",
"personal_number": "2123456789",
"surname": "AL QAHTANI",
"given_names": "FAISAL",
"sex": null,
"date_of_birth": "1992-03-14",
"place_of_birth": null,
"date_of_issue": null,
"date_of_expiry": "2031-05-20",
"date_of_first_issue": null,
"issuing_authority": null,
"address": null,
"vehicle_class": "PRIVATE"
}
}Frequently Asked Questions
Can I test the Saudi driving licence scan for free?
Yes. Upload a photo in the live demo on this page without an account, or create an account to get 200 free credits, enough for 100 licence scans through the API.
Does it return the Iqama number for residents?
When it is printed and legible it is returned as personal_number.
Does it return Arabic text?
Names are returned in Latin script as printed; Arabic text is not returned as a separate field.
Do I need an SDK?
No. It is a plain REST API that accepts Base64 JSON or a multipart upload. Official Python and Node.js SDKs are available if you prefer them.
Explore More Driver License OCR Solutions
School Visitor Management with License and ID Barcodes
Scan US driver licenses and state ID cards for school front offices. Pre-fill AAMVA fields from the PDF417 barcode and route unreadable cards to a retake.
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.
Senior Living Visitor Check-In with ID Barcode Scanning
Scan US driver licenses and state ID cards for senior living communities. Pre-fill AAMVA fields from the PDF417 barcode and route unreadable cards to a retake.
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.
Singapore Driving Licence OCR API
Extract the licence or identification number, the holder's name, date of birth, issue date and licence classes from the Singapore driving licence as JSON with one API call. Try it free in the browser; new accounts get 100 free licence scans.
South African Driving Licence OCR API
Extract the licence number, the holder's name, ID number, date of birth, card validity dates and licence codes from the South African driving licence as JSON with one API call. Try it free in the browser; new accounts get 100 free licence scans.
South Korea Driver's Licence OCR API
Extract the licence number, the holder's name, date of birth, issue date, licence type and the card's renewal period from the Korean driver's licence as JSON with one API call. Try it free in the browser; new accounts get 100 free licence scans.
Spain Driving Licence (Permiso de Conducción) OCR API
Extract the licence number, apellidos and nombre, date and place of birth, issue and expiry dates, issuing authority and categories from the Spanish permiso de conducción as JSON with one API call. Try it free in the browser; new accounts get 100 free licence scans.
Retail Sportsbook ID Scanning with a PDF417 API
Scan US driver licenses and state ID cards for retail sportsbooks. Pre-fill AAMVA fields from the PDF417 barcode and route unreadable cards to a retake.
Staffing Agency Worker Onboarding with ID Barcodes
Scan US driver licenses and state ID cards for staffing agencies. Pre-fill AAMVA fields from the PDF417 barcode and route unreadable cards to a retake.
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.
Tesseract OCR vs. StructOCR API for ISO 6346 Container Numbers
A technical comparison for developers evaluating open-source Tesseract vs. a dedicated cloud API for extracting shipping container numbers.
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.