Apostille & PP — Flow Coverage vs Origin Codebase
Research only — tidak di-commit.
Sumber: ahu-codebase/ahu-apostille (Node/TypeScript + TypeORM) & ahu-codebase/ahu-ptp (Node/TypeScript).
Pembanding: flow OCR kita di ahu-ocr-dev/dev_1.
1. APOSTILLE / LEGALISASI
1.1 Flow yang ada di origin (ahu-apostille)
Origin hanya punya 2 flow utama, dibedakan oleh applicationType:
| Kode |
Nama |
Prefix Nomor |
Keterangan |
1 |
Apostille |
AP-XXXXXX |
Untuk negara anggota Konvensi Hague (~160 negara) |
2 |
Legalisasi |
LGL-XXXXXX |
Untuk negara non-Apostille (~200+ negara) |
Di dalam setiap flow, dokumen dibagi lagi berdasarkan jenis tanda tangan:
isElectronic |
Nama |
Alur |
1 |
Elektronik |
Ada QR-code → langsung verifikasi, tanpa spesimen |
2 |
Konvensional |
Tanda tangan manual → harus ada spesimen pejabat → baru verifikasi |
Kategori dokumen (13 jenis) — sudah sama di origin dan kita:
| Kode kita |
Label |
TERJEMAHAN |
Dokumen Terjemahan |
PENDIDIKAN |
Dokumen Pendidikan |
KEPENDUDUKAN |
Dokumen Kependudukan |
PERNIKAHAN |
Dokumen Pernikahan |
PERCERAIAN |
Dokumen Perceraian |
SKCK |
SKCK |
NOTARIS |
Dokumen Notaris |
PERDAGANGAN |
Dokumen Perdagangan |
PERIZINAN |
Dokumen Perizinan |
KESEHATAN |
Dokumen Kesehatan |
KARANTINA |
Dokumen Karantina |
HAKI |
Dokumen HAKI |
LAIN_LAIN |
Lain-lain |
SPESIMEN_PEJABAT |
Spesimen Pejabat (lampiran) |
File yang diupload per permohonan (origin):
| Jenis File |
Keterangan |
Wajib? |
identityFile |
KTP / Paspor pemohon |
✅ |
documentFile |
Dokumen yang akan di-apostille/legalisasi (max 12 file) |
✅ |
filePoa |
Surat kuasa (jika dikuasakan, bermaterai) |
Kondisional |
poaIdentityFile |
KTP penerima kuasa |
Kondisional |
spesimenFile |
File spesimen tanda tangan pejabat |
Hanya konvensional |
1.2 Coverage kita vs origin
| Fitur |
Origin |
Kita |
Status |
| Flow Apostille |
✅ |
✅ apostille.ts |
Ada |
| Flow Legalisasi |
✅ |
✅ via applicationType flag |
Ada |
| Klasifikasi 13 kategori dokumen |
✅ |
✅ ApostilleClassificationPage |
Ada |
| Spesimen signer matching |
✅ |
✅ apostille-spesimen-db.ts + review projector |
Ada |
| Upload & list permohonan |
✅ |
✅ ApostilleUploadPage, ApostilleListPage |
Ada |
| Review page |
✅ |
✅ ApostilleReviewPage |
Ada |
| Path Elektronik (QR, tanpa spesimen) |
✅ |
✅ isElectronic flag di review |
Ada |
| Path Konvensional (spesimen wajib) |
✅ |
✅ spesimen match + ranking C1–C5 |
Ada |
| Surat Pengantar auto-generate (konvensional tanpa spesimen) |
✅ (origin generates PDF, sends email) |
❌ |
Belum — scope origin (workflow management), bukan OCR |
Regional office / placeOfPublicationStickers Legalisasi |
✅ |
❌ |
Belum — ini field submission origin, out of scope OCR |
| Verifikasi 2-tahap (Verifikator → Kasi) |
✅ |
❌ |
Out of scope — workflow management, bukan OCR |
| Payment / voucher integration |
✅ |
✅ sebagian (simpadhu billing) |
Ada |
Kesimpulan Apostille: Coverage OCR kita sudah mencakup semua yang relevan untuk klasifikasi + ekstraksi + verifikasi spesimen. Yang belum (Surat Pengantar, regional office, 2-step verifikasi) adalah workflow management yang bukan domain OCR kita.
1.3 Bedanya Apostille dari PT
| Aspek |
PT (Akta Notaris) |
Apostille / Legalisasi |
| Dokumen utama |
Akta Notaris (terstruktur, panjang) |
Dokumen apapun (ijazah, perjanjian, KK, dll) |
| Fokus OCR |
Ekstrak field korporat (nama, modal, direksi, dll) |
Klasifikasi jenis + match tanda tangan pejabat |
| Jumlah dokumen |
1 akta + supporting docs |
1–12 file per permohonan |
| Spesimen |
Tidak relevan |
Kunci — harus match spesimen pejabat |
| Kategori |
Flow type (pendirian, perubahan, dll) |
13 kategori dokumen + elektronik/konvensional |
| Validasi |
RUPS quorum, SABH lookup, NIK vs akta |
Signer match, kategori dokumen, masa berlaku spesimen |
| Kompleksitas ekstraksi |
Tinggi (teks hukum panjang) |
Rendah–menengah (baca nama pejabat, tanggal, nomor) |
2. PP (PERSEROAN PERORANGAN)
2.1 Flow yang ada di origin (ahu-ptp)
Origin punya 5 flow utama + 1 sub-flow:
| ID Transaksi |
Flow |
Nama Lengkap |
Keterangan |
1 |
Pendirian |
Pendirian PP |
Registrasi baru |
2 |
Perubahan |
Perubahan PP |
Ubah data (6 sub-jenis) |
2 (sub) |
Peralihan Pemilik Usaha |
Peralihan Pemilik Usaha |
Sub-type perubahan, 2-pihak konfirmasi |
4 |
Pembubaran |
Pembubaran PP |
Bubarkan entitas |
13 |
Perbaikan |
Perbaikan PP |
Koreksi data |
| — |
Laporan Keuangan |
Laporan Keuangan PP |
Neraca + L/R per periode |
Sub-jenis Perubahan PP:
| Kode |
Bidang yang Diubah |
nama_perseroan |
Nama Perseroan |
alamat_perseroan |
Alamat Perseroan |
kegiatan_usaha |
Kegiatan Usaha (KBLI) |
modal_usaha |
Modal Usaha |
email_perseroan |
Email Perseroan |
pemilik_usaha |
Data Pemilik Usaha |
peralihan_pemilik_usaha |
Transfer ke Pemilik Baru (2-pihak) |
2.2 File yang diupload per flow (origin)
| Flow |
File yang Diupload |
Keterangan |
| Pendirian |
KTP Pemilik Usaha, NPWP Pemilik |
SP Pendirian di-generate otomatis (bukan upload) |
| Perubahan (data saja) |
KTP Pemilik (jika ada perubahan owner) |
SP Perubahan di-generate otomatis |
| Perubahan (Peralihan Pemilik) |
KTP Pemilik Lama, KTP Pemilik Baru, Akta/Perjanjian Peralihan |
Konfirmasi 2 pihak (7 hari + 3 hari) |
| Pembubaran |
KTP Pemilik |
SP Pembubaran di-generate otomatis |
| Perbaikan |
KTP Pemilik (jika ada perubahan identitas) |
SP Perbaikan di-generate otomatis |
| Laporan Keuangan |
— (semua input form, tidak ada upload dokumen fisik) |
Laporan PDF di-generate dari form data |
Catatan penting: PP berbeda dari PT — dokumen "SP Pendirian/Perubahan/dll" di-generate oleh sistem, bukan diupload oleh notaris. Yang diupload hanya KTP dan kadang NPWP pemilik. Ada SpPendirianPpGeneratorPage di kita yang mencerminkan ini.
2.3 Coverage kita vs origin
| Flow |
Origin |
Kita |
Status |
| Pendirian PP |
✅ |
✅ pp-pendirian.ts + PpPendirianReviewPageV2 |
Ada |
| Perubahan PP (data) |
✅ |
✅ pp-perubahan.ts + PpPerubahanReviewPageV2 |
Ada |
| Perubahan PP — Peralihan Pemilik |
✅ |
✅ PP_TRANSFER_DEED_PRESENT/AUTHENTIC rules di pp-perubahan |
Ada (sebagai rule dalam perubahan) |
| Pembubaran PP |
✅ |
✅ pp-pembubaran.ts + PpPembubaranReviewPageV2 |
Ada |
| Perbaikan PP |
✅ |
✅ pp-perbaikan.ts + PpPerbaikanPpReviewPageV2 |
Ada |
| Peralihan PP → PT |
✅ (via modification_pp_pt) |
✅ pp-peralihan-pt.ts + PpPeralihanPtReviewPageV2 |
Ada |
| SP Pendirian Generator |
✅ (server-side generate) |
✅ SpPendirianPpGeneratorPage, SpPendirianPpListPage |
Ada |
| Laporan Keuangan PP |
✅ (form input → PDF generate) |
❌ Tidak ada flow PP-nya |
Belum |
Laporan Keuangan PP — detail gap:
Origin punya form input Neraca (Aktiva + Modal) dan Laporan L/R per bulan/tahun, hasilnya di-generate jadi PDF. Kita punya laporan-keuangan-extract.ts (untuk Laporan Keuangan PT di flow berakhirnya/pembubaran), tapi tidak ada flow khusus Laporan Keuangan PP sebagai submission tersendiri.
Apakah perlu? Laporan Keuangan PP adalah pelaporan rutin (bukan perubahan akta), jadi cukup berbeda dari domain OCR kita yang fokus ke verifikasi dokumen. Scope-nya lebih ke workflow form → PDF, bukan OCR ekstraksi.
2.4 Bedanya PP dari PT
| Aspek |
PT (Perseroan Terbatas) |
PP (Perseroan Perorangan) |
| Dokumen utama |
Akta Notaris (panjang, penuh klausul hukum) |
Surat Pernyataan (pendek, 1–2 halaman, di-generate sistem) |
| Pemilik/pengurus |
Direksi + Komisaris + Pemegang Saham (banyak pihak) |
1 orang (pemilik tunggal) |
| Notaris |
Wajib (tanda tangan + cap notaris) |
Tidak ada notaris — cukup deklarasi mandiri |
| Kompleksitas OCR |
Tinggi (teks hukum, tabel saham, identitas banyak pihak) |
Rendah–menengah (KTP pemilik + SP singkat) |
| Perubahan modal |
Akta Perubahan, kadang RUPS |
Form langsung, tidak ada RUPS |
| Validasi RUPS |
Ada quorum check (Ps.86/88/89) |
Tidak ada RUPS |
| Transfer kepemilikan |
Akta Peralihan Saham (kompleks) |
Konfirmasi 2 pihak online (3 hari window) |
| Pembuktian identitas |
KTP + NPWP pengurus (banyak) |
KTP + NPWP pemilik tunggal |
| Keuangan |
Laporan Keuangan dilaporkan ke OJK/SABH via PT |
Laporan Keuangan PP built-in (per bulan) |
| Pembubaran |
Liquidasi + RUPS + akta |
SP Pembubaran sederhana + voucher |
| Perbaikan |
Akta Perubahan via notaris |
SP Perbaikan mandiri (sekali per periode) |
| KBLI |
Ada (bidang usaha) |
Ada (bidang usaha) — sama |
| SABH lookup |
Cek data perseroan di SABH |
Cek data PP di database PP terpisah |
3. Ringkasan Status Coverage
Apostille / Legalisasi
✅ Flow Apostille & Legalisasi — satu flow, dibedakan applicationType flag
✅ Klasifikasi 13 kategori — APOSTILLE_DOCUMENT taxonomy
✅ Spesimen signer matching — C1–C5 ranking, apostille-spesimen-db
✅ Elektronik vs Konvensional — isElectronic flag di review projector
✅ Upload / List / Review pages — semua ada
❌ Surat Pengantar auto-gen — workflow management, out of scope OCR
❌ Regional office Legalisasi — submission-level field, out of scope OCR
❌ 2-step verifikasi (Kasi) — workflow management, out of scope OCR
PP (Perseroan Perorangan)
✅ Pendirian PP — pp-pendirian.ts
✅ Perubahan PP (termasuk peralihan pemilik) — pp-perubahan.ts + transfer deed rules
✅ Pembubaran PP — pp-pembubaran.ts
✅ Perbaikan PP — pp-perbaikan.ts
✅ Peralihan PP → PT — pp-peralihan-pt.ts + AKTA_PERALIHAN_PP_PT
✅ SP Pendirian Generator — SpPendirianPpGeneratorPage
❌ Laporan Keuangan PP — form + PDF generate, bukan domain OCR kita
Skala Kompleksitas: PP vs PT vs Apostille
PT Akta Notaris ████████████ Paling kompleks (teks hukum panjang, banyak pihak, RUPS)
Apostille ██████ Sedang (klasifikasi + signer match, dokumen bebas)
PP ████ Paling sederhana (KTP + SP pendek, 1 pemilik)
Dokumen ini berdasarkan inspeksi kode per 2026-07-24.