El Salvador DUI OCR API with Python
Extract the DUI number, names, and dates from the El Salvador Documento Único de Identidad (DUI) with the StructOCR Python SDK and a server-side integration.
Working with the Documento Único de Identidad (DUI)
The DUI number has eight digits followed by a check digit and is also used as a tax number. Re-keying these values is slow, and generic OCR still leaves your team to map each text fragment to the right field.
Structured Extraction for Your Backend
The National ID OCR API returns the DUI number, names, dates, and address when they are printed on the submitted side of the card. Test it with the free ID card scanner.
Common Integration Scenarios
- Customer onboarding: Pre-fill identity fields from the Documento Único de Identidad (DUI) before the customer confirms them.
- Account operations: Reduce manual transcription when staff enter identity data.
- Document review: Store normalized output next to your own review decision.
El Salvador DUI OCR API with Python
The official Python SDK reads a local file and calls /v1/national-id from your backend.
Prerequisite: `pip install structocr`; set the server-side `STRUCTOCR_API_KEY` environment variable.
Prefer another stack? Open the Node.js SDK + Express integration.
import os
from structocr import StructOCR
client = StructOCR(os.environ["STRUCTOCR_API_KEY"])
result = client.scan_national_id("id-card.jpg")
if result.get("success"):
data = result["data"]
print(data.get("document_number"))
print(data.get("given_names"), data.get("surname"))
else:
print(result.get("error"))Technical Specs
- •Endpoint: POST /v1/national-id
- •Input: Base64-encoded JPG, PNG, WebP, or PDF in JSON (Max 4.5MB)
- •Authentication: Server-side x-api-key header handled by the SDK
- •Cost: 2 credits per successful scan; failed requests are not billed
- •Output: Structured JSON
Key Features
- •Local document: Handles the Documento Único de Identidad (DUI) as a national identity document.
- •Identifier output: Returns the DUI number when visible.
- •Normalized names and dates: Consistent JSON keys across countries.
- •Server integration: The API key stays on your backend.
JSON Response Example
Fictional values showing the normalized shape for a readable Documento Único de Identidad (DUI); unavailable fields are null.
{
"success": true,
"data": {
"type": "national_id",
"country_code": "SLV",
"document_number": "00000000-0",
"personal_number": null,
"surname": "DOE",
"given_names": "ALEX",
"sex": null,
"date_of_birth": "1990-01-01",
"place_of_birth": null,
"date_of_issue": null,
"date_of_expiry": null,
"issuing_authority": null,
"address": "SAN SALVADOR",
"additional_fields": {}
}
}Frequently Asked Questions
Does the API validate the DUI number?
It extracts the number as printed. Database checks and authenticity verification require official channels or your own review.
Which inputs are supported?
JSON with a Base64-encoded JPG, PNG, WebP, or PDF up to 4.5MB; the SDK handles encoding.
Is there a version for the other SDK language?
Yes. A paired Node.js version of this tutorial covers the same document.
You May Also Like
Related tutorials, platform guides, and comparisons
El Salvador DUI OCR API with Node.js
Extract the DUI number, names, and dates from the El Salvador Documento Único de Identidad (DUI) with the StructOCR Node.js SDK and a server-side integration.
Japan My Number card OCR: Extract Fields with Python
Extract visible fields from Japan my number card images into JSON. Map identifiers, names and dates, with a review workflow for incomplete results.
Honduras DNI OCR API with Python
Extract the DNI number, names, and dates from the Honduras Documento Nacional de Identificación (DNI) with the StructOCR Python SDK and a server-side integration.
Jordan National ID OCR API with Python
Extract the national number, names, and dates from the Jordanian national identity card with the StructOCR Python SDK and a server-side integration.
Kuwait Civil ID OCR: Extract Fields with Python
Extract visible fields from Kuwait civil id images into JSON. Map identifiers, names and dates, with a review workflow for incomplete results.
Côte d'Ivoire CNI (Carte Nationale d'Identité) OCR Python SDK
Python Tutorial: Automate KYC in Côte d'Ivoire. Extract French text, NNI, and validate TD1 MRZ from the ONECI CNI using StructOCR Python SDK.
France Carte Nationale d'Identité OCR Python SDK
Python Tutorial: Automate KYC in France. Extract data from Carte Nationale d'Identité and validate TD1/TD2 MRZ using StructOCR Python SDK. Supports native text.
Indonesia KTP OCR with Node.js SDK
Extract NIK, names, dates and other visible fields from Kartu Tanda Penduduk (KTP) with the StructOCR Node.js SDK and Express.
India Aadhaar OCR with Node.js SDK
Extract Aadhaar number, names, dates and other visible fields from Aadhaar card with the StructOCR Node.js SDK and Express.
Estonia ID-kaart OCR Python SDK
Python Tutorial: Automate KYC in Estonia. Extract data from the Estonian Identity Card (ID-kaart) using StructOCR Python SDK. Supports native text, Isikukood, and MRZ extraction.
Technical Comparisons & Integrations
Explore platform integrations and competitive analysis
Add National ID OCR to Your Bolt.new App in 5 Minutes
Step-by-step guide to integrating the StructOCR National ID scanner API into a Bolt.new app. Build KYC and identity verification flows right in your browser.
Add National ID OCR using Cursor in 5 Minutes
Step-by-step guide to integrating the StructOCR National ID scanner API using the Cursor AI code editor. Build KYC and identity verification flows rapidly.
Add National ID OCR to Your Lovable.dev App in 5 Minutes
Step-by-step guide to integrating the StructOCR National ID scanner API into a Lovable.dev app. Build KYC and identity verification flows with zero backend.
Add National ID OCR to Your Replit App in 5 Minutes
Step-by-step guide to integrating the StructOCR National ID scanner API into a Replit application. Build KYC and identity verification flows using Replit Agent and Secrets.
Add National ID OCR to Your v0 App in 5 Minutes
Step-by-step guide to integrating the StructOCR National ID scanner API into a v0 by Vercel app. Build KYC and identity verification flows with zero backend.
Google Cloud Vision vs. StructOCR API for Shipping Containers
Comparing generic enterprise OCR solutions like Google Cloud Vision against StructOCR's purpose-built API for ISO 6346 shipping container recognition.
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.