KYC onboarding
Verify a new customer’s identity at signup in fintech and banking — capture the ID, extract the fields, and match them against the application in one step.
ID Card OCR API
Turn a photo of a national ID card into structured JSON in seconds. Our ID card OCR API reads native scripts — Thai, Chinese, Arabic and more — and returns the exact fields each country prints, ready for KYC and identity verification.

POST an image with a country-specific documentType and get clean JSON back. The documentType (e.g. th_id_card, de_id_card) tells the engine which national ID format to read — see every value in the supported-countries grid below.
curl -X POST "https://pictotext.io/api/v1/ocr" \ -H "Authorization: Bearer sk_live_YOUR_API_KEY" \ -F "image=@id_card.jpg" \ -F "documentType=th_id_card"{ "documentType": "national_id_card", "idNumber": "S1234567A", "fullName": "ALEX MORGAN TAYLOR", "dateOfBirth": "1990-01-01", "sex": "M", "address": "12 CENTRAL AVENUE, CAPITAL CITY", "issueDate": "2020-01-01", "expiryDate": "2030-01-01"}A representative national-ID response. Exact fields — and native-script values where the card uses them — follow each country’s document; open the relevant country in the grid below for its precise schema.
These data categories are returned across national ID cards. Exact field names — and any country-specific extras — follow each document, so different countries return different keys.
idNumberThe national identity number — Thai 13-digit, German document number, Chinese 18-digit, and more — returned as printed.
name (native script)Full name in the card’s own script — Thai, Chinese or Arabic — preserved exactly as printed, not forced into Latin.
name (Latin)Romanized or Latin name when the card prints one, so you get a Latin handle alongside the native-script original.
dateOfBirthNormalized to ISO 8601 (YYYY-MM-DD), including conversion from local calendars such as the Thai Buddhist year.
issue & expiry datesThe validity window, normalized to ISO 8601, returned for the cards that carry issue and expiry dates.
addressThe full registered address as printed on the card, in its native script.
sex / genderReturned where the document prints it, in the document’s own wording.
country-specific fieldsReligion (Thailand), ethnicity (China), height and eye color (Germany), place of birth, issuing authority and more — see each country’s reference for the full list.
Need the exact fields for one country? Open that country’s reference from the supported-countries grid below.
Three stages turn a real-world photo of a national ID into clean, structured data.
The engine detects the card and its country format, then deskews, de-glares and corrects rotation — built for mobile photos, not just flatbed scans.
Text is recognized in the card’s own script — Thai, Chinese, Arabic and Latin — returning the native-script value and a Latin form when the card prints one.
Recognized text is mapped to structured fields, and dates are normalized to ISO 8601 — including local calendars such as the Thai Buddhist year.
Anywhere a national ID has to become structured data for identity verification.
Verify a new customer’s identity at signup in fintech and banking — capture the ID, extract the fields, and match them against the application in one step.
Open accounts remotely. Native-script extraction means a customer in Bangkok or Berlin can onboard with their local ID, no manual data entry.
Onboard drivers, couriers and sellers across markets by reading whatever national ID they hold, with per-country fields ready for your risk checks.
Digitize citizen identity intake — registrations, benefits, appointments — directly from the national ID card, in the country’s own script.
Meet KYC-mandated SIM activation rules common across Asia and Africa by extracting ID fields at the point of sale.
Pull a consistent, structured identity record from ID cards in different countries to feed sanctions and AML screening.
Each country links to its field reference — exact JSON fields and native-script handling for that document.
Don't see your country? Request a new document type — we add most in 1–2 days.
Practical answers on coverage, fields and scripts for developers integrating the ID card OCR API.
Start free, scale as you grow
$0
100 API calls on signup, plus unlimited web OCR. No card required.
$29.90/month
10,000 API calls included. Best value for growing teams.
$249/month
100,000 API calls included. Lowest cost per call.
Pay-as-you-go from $3.33/1,000 calls · credits never expire
Start with a free trial — 100 API calls included. Run your real IDs through the ID card OCR API and see the JSON.