Indonesian SIM (Surat Izin Mengemudi) OCR API
Automate eKYC and driver onboarding in Southeast Asia. Instantly extract the NIK (National ID Number), SIM number, and vehicle category from Indonesian driver's licenses. Upload a sample image below to test the extraction accuracy for free.

The Challenge of Indonesian eKYC Verification
In Indonesia, the Surat Izin Mengemudi (SIM) serves as a primary identity document alongside the KTP. However, extracting data from it is highly challenging. The cards frequently suffer from intense lamination glare, and the critical NIK (Nomor Induk Kependudukan) is often printed in varying alignments depending on the issuance year and local Polda (police region). Standard OCR tools frequently misread these densely packed alphanumeric strings or confuse a SIM A (Car) with a SIM C (Motorcycle). To see how our layout-aware identity models overcome these specific regional hardware and optical challenges, explore our core driver license OCR infrastructure.
Zero-SDK Architecture & Edge-Routed Speed
In the Southeast Asian market, mobile app size is critical. We deliver our SIM OCR engine as a pure REST API, completely eliminating the need to force heavy SDKs onto users' devices. Furthermore, Indonesia is a vast archipelago where centralized cloud servers cause massive latency. StructOCR is natively deployed on Cloudflare's global edge network, meaning requests from Jakarta or Bali are processed at the nearest local node for lightning-fast TTFB (Time to First Byte). Simply send a Base64 string or file upload, and receive structured JSON instantly.
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 · WebP · up to 500 files · max 4.5 MB each
Ready to use this in production? Get 20 free API calls — no credit card needed.
Get 20 Free API Calls →High-Growth Use Cases in Indonesia
Digital Wallets & Fintech eKYC
Accelerate user onboarding for e-wallets and crypto platforms. Instantly extract the 16-digit NIK from the SIM to cross-reference with Dukcapil databases. To bypass local credit card friction, you can manage your enterprise subscription using USDT/USDC directly. Explore our pricing plans.
Ride-Hailing & Logistics Onboarding
Automate fleet registration. Instantly verify if a new courier holds the correct SIM C (for motorcycles) or SIM A (for cars) before authorizing them to take orders. Read more about our mobility driver verification solutions.
Vehicle Rental & Tourism
Streamline motorcycle and car rentals in high-traffic tourist areas like Bali. Capture the driver's details and license expiry date accurately using just a smartphone photo, removing manual data entry bottlenecks.
Technical Specs
- Edge Processing Architecture: Deployed on Cloudflare Workers, ensuring API requests from Southeast Asia are handled by regional edge nodes for near-zero routing latency.
- Input Versatility: Fully supports multipart file uploads and raw Base64 strings, eliminating the need to compile and maintain native Android/iOS SDKs.
- Glare & Lamination Resilience: Advanced computer vision pipelines filter out the intense reflections typical of physical Indonesian SIM cards.
- Cryptocurrency Payments: For LatAm and SEA developers facing fiat payment gateways friction, API credits can be seamlessly funded via USDT and USDC.
Key Features
- Precise NIK Extraction: Contextually differentiates the 16-digit NIK from the similarly formatted SIM serial number, mapping it reliably to the `personal_number` field.
- Categorical Accuracy: Extracts the specific SIM category (e.g., A, C, B1) and maps it to `vehicle_class` for immediate fleet authorization.
- Date Standardization: Natively converts the Indonesian `DD-MM-YYYY` formats into strict, database-ready `YYYY-MM-DD` ISO strings.
Integration & AI Prompts
Integrating our API takes minutes. We natively process direct file uploads, public URLs, and Base64-encoded strings (automatically cleaning up illegal whitespaces). For comprehensive endpoint parameters, consult our developer documentation.
import requests
import base64
# 1. Prepare Base64 Image of the Indonesian SIM
with open("indonesian_sim_sample.jpg", "rb") as image_file:
base64_image = base64.b64encode(image_file.read()).decode('utf-8')
url = "https://api.structocr.com/v1/driver-license"
headers = {
"x-api-key": "YOUR_API_KEY",
"Content-Type": "application/json"
}
# Pass the pure Base64 string directly
payload = {
"img": base64_image
}
response = requests.post(url, headers=headers, json=payload)
result = response.json()
if result.get('success'):
data = result['data']
print(f"✅ Extracted NIK: {data['personal_number']}")
print(f"✅ SIM Number: {data['document_number']}")
print(f"✅ Vehicle Category (SIM Type): {data['vehicle_class']}")Standardized JSON Output
Observe how the unique data points of an Indonesian SIM are mapped into a standardized schema. The NIK is securely placed in `personal_number`, while the SIM category is cleanly extracted to `vehicle_class`.
{
"success": true,
"data": {
"type": "drivers_license",
"country_code": "IDN",
"region": "DKI JAKARTA",
"document_number": "1234-5678-900123",
"personal_number": "3171234567890001",
"surname": "SANTOSO",
"given_names": "BUDI",
"sex": "M",
"date_of_birth": "1990-08-17",
"place_of_birth": "JAKARTA",
"date_of_issue": "2023-08-17",
"date_of_expiry": "2028-08-17",
"date_of_first_issue": null,
"issuing_authority": "POLDA METRO JAYA",
"address": "JL. SUDIRMAN NO 45, RT 01/02, KEBAYORAN BARU, JAKARTA SELATAN",
"vehicle_class": "C",
"extra_details": {}
}
}Frequently Asked Questions
Can I test the Indonesian SIM OCR before purchasing?
Yes! You can use the free image upload testing widget at the top of this page. Upload a sample photo of a SIM A or SIM C to see the extraction speed and accuracy instantly.
Do I need an SDK for Android or iOS to use this?
No, StructOCR is a pure REST API. You can simply capture the image using the device's native camera, convert it to a Base64 string, and POST it to our endpoint. This keeps your app lightweight and fast.
Does the API extract the NIK or just the SIM Number?
It extracts both. The API is trained to distinguish between the two numbers, placing the NIK inside the `personal_number` field and the license serial number inside the `document_number` field.
Explore More Drivers-license Solutions
Brazilian CNH (Driver's License) OCR API
Extract CPF, RG, and identity fields from Brazilian Carteira Nacional de Habilitação (CNH) instantly. High-accuracy OCR API deployed on edge networks for fast LatAm eKYC.
Automated CPF Extraction from Brazilian Driver Licenses
Accurately extract the CPF (Tax ID) and RG from Brazilian driver licenses (CNH). Try our free image upload tool and integrate our fast, edge-routed OCR API.
Automated Document Discriminator (DD) Extraction
Instantly extract the Document Discriminator (DD) and audit numbers from US driver's licenses. Test our edge-routed OCR API for free using image uploads.
Precise Data Extraction and Seamless
Integration with AI-powered OCR API.
Empower your solutions with automated data extraction by
integrating best-in class StructOCR via API seamlessly.
No credit card required • Full API access included