Kartu identitas nasional bukanlah paspor berukuran kecil. Kartu ini punya zona baca mesinnya sendiri, di bagian belakang dan bukan di sisi foto, dalam tiga baris berisi 30 karakter, bukan dua baris berisi 44. ICAO menyebut tata letak itu TD1, dan di Uni Eropa tata letak ini tidak lagi opsional: setiap kartu identitas yang diterbitkan negara anggota untuk warganya sendiri kini wajib memilikinya, dan kartu tanpa zona yang berfungsi kehilangan keabsahannya pada tanggal yang sudah ditetapkan.
Tulisan ini menyandingkan dua sumber primer. Yang pertama adalah ICAO Doc 9303 Bagian 5, yang menetapkan letak setiap karakter TD1. Yang kedua adalah hukum UE: Peraturan (UE) 2019/1157 dan Peraturan Dewan (UE) 2025/1208, yang mewajibkan zona TD1 pada kartu identitas negara anggota. Setiap baris pada tabel di bawah dikutip dari teks-teks tersebut dan diberi tautan, sehingga Anda bisa mengutipnya. Jika suatu negara tidak bisa dinyatakan berdasarkan teks-teks itu, negara tersebut tidak dicantumkan.
Ini adalah blog doc.cheap, sebuah API OCR paspor dan kartu identitas yang membaca paspor maupun kartu identitas dan memeriksa ulang digit pemeriksa MRZ-nya di server. Tidak ada isi di bawah ini yang bergantung padanya.
Apa itu kartu TD1
ICAO Doc 9303 adalah standar internasional untuk dokumen perjalanan yang dapat dibaca mesin. Standar ini dibagi menjadi beberapa bagian, dan tiga di antaranya menjelaskan tiga ukuran MRZ: Bagian 4 mencakup paspor dan dokumen lain berukuran TD3, Bagian 5 mencakup "TD1 Size Machine Readable Official Travel Documents", dan Bagian 6 mencakup ukuran TD2.
Bagian 5 (Edisi Kedelapan, 2021) menetapkan kartu fisik berukuran ID-1 menurut ISO/IEC 7810: 85,60 × 53,98 mm, seukuran kartu bank. Bagian ini menempatkan zona di sisi belakang: "MRZ terletak di bagian belakang TD1." Satu kalimat itu menjelaskan sebagian besar kegagalan membaca kartu identitas dalam praktik. Foto sisi depan kartu memuat wajah, nama, dan nomor, tetapi tidak ada zona yang bisa diperiksa.
Perbandingan tiga format MRZ:
| Format | Baris × karakter | Ditetapkan dalam | Dokumen umum |
|---|---|---|---|
| TD1 | 3 × 30 | Doc 9303 Bagian 5 | Kartu identitas nasional, izin tinggal |
| TD2 | 2 × 36 | Doc 9303 Bagian 6 | Beberapa kartu dan dokumen perjalanan lama |
| TD3 | 2 × 44 | Doc 9303 Bagian 4 | Paspor berbentuk buku |
Halaman format MRZ menampilkan ketiga tata letak itu berdampingan.
90 karakter, kolom demi kolom
Berikut spesimen TD1 fiktif milik ICAO sendiri, diterbitkan oleh "Utopia" (UTO, kode yang hanya ada di spesimen):
I<UTOD231458907<<<<<<<<<<<<<<<
7408122F1204159UTO<<<<<<<<<<<6
ERIKSSON<<ANNA<MARIA<<<<<<<<<<
Bagian 5 §4.2.2 menetapkan setiap posisi. Posisi dihitung mulai dari 1, sebagaimana ICAO menghitungnya.
| Baris | Posisi | Kolom | Pada spesimen |
|---|---|---|---|
| 1 | 1–2 | Kode dokumen; karakter pertama adalah A, C, atau I |
I< |
| 1 | 3–5 | Negara atau organisasi penerbit | UTO |
| 1 | 6–14 | Nomor dokumen | D23145890 |
| 1 | 15 | Digit pemeriksa nomor dokumen | 7 |
| 1 | 16–30 | Data opsional untuk penerbit | pengisi |
| 2 | 1–6 | Tanggal lahir, YYMMDD | 740812 |
| 2 | 7 | Digit pemeriksa tanggal lahir | 2 |
| 2 | 8 | Jenis kelamin: F, M, atau < |
F |
| 2 | 9–14 | Tanggal kedaluwarsa, YYMMDD | 120415 |
| 2 | 15 | Digit pemeriksa tanggal kedaluwarsa | 9 |
| 2 | 16–18 | Kewarganegaraan | UTO |
| 2 | 19–29 | Data opsional untuk penerbit | pengisi |
| 2 | 30 | Digit pemeriksa gabungan untuk baris 1 dan 2 | 6 |
| 3 | 1–30 | Nama: pengenal utama, <<, pengenal kedua |
ERIKSSON<<ANNA<MARIA |
Ada tiga hal yang berbeda dari paspor dan sering menjebak parser yang ditulis untuk TD3:
- Nama berada di akhir, bukan di awal. Pada paspor, nama ada di baris 1. Pada kartu TD1, nama mengisi seluruh baris 3, dan nama yang panjang dipotong agar muat dalam 30 karakter.
- Kewarganegaraan dan negara penerbit ada di baris yang berbeda. Baris 1 memuat penerbit, baris 2 memuat kewarganegaraan pemegang. Pada kebanyakan kartu kodenya sama, tetapi parser tidak boleh mengasumsikannya.
- Digit gabungan mencakup dua baris. Digit ini mencakup data dari baris 1 dan baris 2 sekaligus, sehingga validator yang memeriksa satu baris pada satu waktu tidak bisa menghitungnya.
Semua digit pemeriksa memakai bobot 7-3-1 yang sama dengan paspor; parser MRZ menampilkan setiap digit hasil hitungan di samping digit yang tercetak.
Apa yang diwajibkan hukum UE
Aturan UE untuk kartu identitas pertama kali ditetapkan oleh Peraturan (UE) 2019/1157, yang berlaku sejak 2 Agustus 2021. Aturan yang sama, dengan tanggal yang sama, dimuat dalam Peraturan Dewan (UE) 2025/1208 tertanggal 12 Juni 2025, yang diterbitkan dalam Jurnal Resmi pada 20 Juni 2025. Tabel ini mengutip teks tahun 2025.
| Aturan | Isi teks | Letak |
|---|---|---|
| Format | Kartu identitas "harus dibuat dalam format ID-1 dan harus memuat zona baca mesin (MRZ)", mengikuti Dokumen ICAO 9303 | Pasal 3 ayat (1) |
| Data | Elemen data kartu mengikuti Dokumen ICAO 9303, bagian 5 | Pasal 3 ayat (2) |
| Cip | Media penyimpanan yang memuat citra wajah dan dua sidik jari | Pasal 3 ayat (5) |
| Kartu lama, umum | Kartu yang tidak memenuhi Pasal 3 "tidak lagi berlaku saat masa berlakunya habis atau paling lambat 3 Agustus 2031, mana yang lebih dulu" | Pasal 5 ayat (1) |
| Kartu lama tanpa MRZ yang berfungsi | Kartu tanpa standar keamanan minimum ICAO bagian 2, atau tanpa "MRZ yang berfungsi", tidak lagi berlaku "saat masa berlakunya habis atau paling lambat 3 Agustus 2026, mana yang lebih dulu" | Pasal 5 ayat (2) huruf (a) |
| Pemegang berusia 70+ | Kartu milik orang yang berusia 70 tahun ke atas pada 2 Agustus 2021, dengan standar keamanan minimum bagian 2 dan MRZ yang berfungsi, tetap berlaku sampai masa berlakunya habis | Pasal 5 ayat (2) huruf (b) |
Makna praktisnya bagi siapa pun yang membangun alur kartu identitas: sejak 3 Agustus 2026, kartu identitas yang diterbitkan negara anggota untuk warganya sendiri, dan masih berlaku menurut aturan ini, memiliki zona baca mesin TD1. Sebelum tanggal itu, kartu lama tanpa zona yang berfungsi masih bisa berlaku, sehingga pemeriksaan yang mewajibkan MRZ bisa menolak kartu yang sah. Ini adalah ringkasan teks, bukan nasihat hukum.
Negara mana saja yang dicakup aturan ini
Teks tahun 2025 menyebutkan batas-batasnya sendiri. Berikut baris-baris yang didukung oleh teks itu sendiri:
| Kelompok | Status menurut Peraturan Dewan (UE) 2025/1208 | Letak dalam teks |
|---|---|---|
| Negara anggota yang menerbitkan kartu identitas | Terikat: kartu mengikuti Pasal 3, kartu lama dihapus bertahap menurut Pasal 5 | Pasal 3 dan 5 |
| Negara anggota tanpa kartu identitas nasional | Tidak wajib membuatnya: teks ini "tidak mewajibkan Negara Anggota untuk memperkenalkan kartu identitas … apabila kartu tersebut tidak diatur dalam hukum nasional" | Konsiderans (9) |
| Denmark | "Tidak ikut serta dalam pengesahan" dan "tidak terikat olehnya maupun tunduk pada penerapannya" | Konsiderans (47) |
| Irlandia | Memberitahukan "melalui surat tertanggal 18 Oktober 2024, keinginannya untuk ikut serta" | Konsiderans (48) |
| Kartu paspor Irlandia | Di luar cakupan: dokumen perjalanan bagian 5 "yang tidak berfungsi untuk tujuan identifikasi di Negara Anggota penerbit, seperti kartu paspor yang diterbitkan oleh Irlandia" | Konsiderans (12) |
Ada dua konsekuensi. Kartu TD1 dengan MRZ tidak membuktikan bahwa dokumen itu adalah kartu identitas nasional: kartu paspor Irlandia juga merupakan dokumen Bagian 5, dan hukum memperlakukannya secara terpisah. Selain itu, tidak adanya kartu nasional di suatu negara bukanlah celah hukum, karena hukum memang tidak pernah memintanya.
Untuk kartu dari negara tertentu, acuannya adalah spesimen itu sendiri. Sekretariat Jenderal Dewan menerbitkan gambar dokumen asli dalam apa yang oleh Peraturan (UE) 2020/493 disebut "Daftar Publik Daring Dokumen Perjalanan dan Identitas Asli, yang dikenal sebagai PRADO", di consilium.europa.eu/prado. Setiap entri menampilkan kedua sisi kartu, sehingga Anda bisa melihat di mana penerbit itu menempatkan zonanya dan apa isi kolom data opsionalnya.
Artinya bagi alur unggah kartu identitas
- Minta sisi belakang. Zona itu menurut definisi ada di sana, sehingga alur yang hanya meminta sisi depan tidak mendapatkan MRZ untuk diperiksa.
- Harapkan tiga baris, dan parse berdasarkan bentuk. Tiga baris berisi 30 karakter adalah TD1; dua baris berisi 36 adalah TD2; dua baris berisi 44 adalah TD3. Deteksi formatnya sebelum membaca kolom.
- Jangan menanamkan kode dokumen secara tetap di kode. Bagian 5 mengizinkan
A,C, atauIsebagai karakter pertamanya, sehingga pemeriksaan yang hanya menerimaIakan menolak kartu yang sah. - Perlakukan kolom data opsional sebagai milik penerbit. Bagian 5 menyerahkan isinya kepada negara penerbit, jadi parse kolom ini per penerbit, bukan sebagai satu kolom tetap.
- MRZ yang lolos berarti konsisten, bukan asli. Digit pemeriksa membuktikan bahwa zona terbaca dengan benar, bukan bahwa kartunya asli.
Cara doc.cheap menangani kartu TD1
API menerima satu gambar per panggilan, jadi dua sisi kartu adalah dua panggilan yang berbagi reference yang sama. Panduan Mengenali kartu identitas membahas alur tersebut: sisi belakang biasanya menghasilkan mrz.status: passed, dan sisi depan tanpa zona menghasilkan mrz.status: absent, bukan galat. Saat zona terbaca, mrz.lines memuat baris-baris itu persis seperti tercetak (tiga untuk kartu TD1, dua untuk paspor TD3), sehingga Anda bisa menghitung ulang digit pemeriksa sendiri; server memeriksa digit TD1 berdasarkan posisi dalam Bagian 5 §4.2.4. Kolom document.country memuat kode tiga huruf penerbit.
Untuk paspor dari negara-negara yang sama, OCR paspor per negara membahas sisi TD3. Jika Anda sedang membandingkan API terkelola, perbandingan API OCR paspor mencantumkan harga yang dipublikasikan dan apakah setiap layanan menagih pemindaian yang gagal. doc.cheap menyertakan 100 pengenalan gratis setiap bulan.
Setiap pernyataan hukum di atas dikutip dari teks EUR-Lex yang ditautkan dan ICAO Doc 9303 Bagian 5; setiap pernyataan tentang doc.cheap telah diperiksa terhadap kodenya.
Pertanyaan untuk Anda: apakah alur kartu identitas Anda meminta sisi belakang kartu, dan bagaimana Anda menangani unggahan yang hanya berisi sisi depan? Ceritakan di kolom komentar di bawah.