Audit Master Bagan Akun (COA SAK EP) & Remediasi 2026
Laporan Audit Master Bagan Akun (COA SAK EP) & Rencana Aksi Remediasi 2026
Entitas: BUMDes Mitra Jaya Bersama (Desa Bolulango) Standar Akuntansi: Standar Akuntansi Keuangan Entitas Privat (SAK EP) & PP No. 11 Tahun 2021 Tanggal Audit: 15 September 2026 Status Audit: Rekomendasi Siap Eksekusi (Actionable Remediation Roadmap)
1. Ringkasan Eksekutif & Metrik Audit#
Audit komprehensif terhadap seluruh basis data Bagan Akun (Chart of Accounts / COA) BUMDes Bolulango dilaksanakan dengan memindai berkas benih induk seed.sql, 174 berkas migrasi aktif, konstanta kode akun, serta seluruh rujukan kode pada logika aplikasi (Server Actions dan komponen UI).
Tabel Metrik Inventarisasi Akun
| Parameter Audit | Nilai Metrik | Keterangan & Status Evaluasi |
|---|---|---|
| Total Akun Terdaftar (Unified Master) | 184 Akun | Registri menyeluruh mencakup benih dan migrasi |
Akun Master Resmi di seed.sql | 133 Akun | Terdaftar pada data inisialisasi master BUMDes |
| Akun "Migration-Only" (Belum di-seed) | 51 Akun | Berisiko hilang jika inisialisasi ulang database dijalankan |
| Tabrakan Definisi Kode (Code Collision) | 8 Kasus | KRITIKAL: Satu kode dipakai untuk fungsi berlawanan |
| Anomali Pola & Struktur Nomenklatur | 16 Kasus | TINGGI: Akun Piutang berada di kelompok Persediaan |
| Anomali Saldo Normal (Case-Sensitivity) | 14 Kasus | SEDANG: Nilai 'debit' huruf kecil vs 'DEBIT' kapital |
| Kode Dirujuk di Codebase tapi Belum Ada di DB | 30 Kasus | TINGGI: Potensi query gagal (null pointer) di modul keuangan |
| Keseimbangan Pasangan RK Antar Kantor | 27 Aset vs 1 Liabilitas | Perlu penegasan mekanisme eliminasi konsolidasi |
2. Dimensi 1: Analisis 8 Tabrakan Definisi Kode (Code Collisions)#
Tabrakan kode terjadi ketika migrasi fitur baru menggunakan kode yang sebelumnya telah dialokasikan untuk pos lain pada data benih induk, sehingga terjadi konflik integritas data (unique constraint conflict atau penimpaan semantik):
[Tabrakan Kode 4-301 di 4 Berkas Berbeda]
├── seed.sql: "Penjualan Internal ke Unit Lain" (Eliminasi Konsolidasi)
├── 003_financial.sql: "Pendapatan Bunga Bank"
├── 004_operational.sql (Line 2275): "Pendapatan Jasa Pariwisata & Tiket"
└── 004_operational.sql (Line 2842): "Pendapatan Panen Cabai"
Tabel Rincian 8 Kasus Tabrakan Kode:
| No | Kode Akun | Definisi di seed.sql | Definisi di Berkas Migrasi | Lokasi Migrasi | Analisis Dampak Finansial & Solusi SAK EP |
|---|---|---|---|---|---|
| 1 | 4-301 | Penjualan Internal ke Unit Lain (Eliminasi Intercompany) | Pendapatan Bunga Bank | 003_financial...sql:635 | Merusak Eliminasi Konsolidasi. Bunga bank tercampur eliminasi. Pendapatan bunga bank dialihkan ke kode baku 4-201. |
| 2 | 4-301 | Penjualan Internal ke Unit Lain (Eliminasi Intercompany) | Pendapatan Jasa Pariwisata & Tiket | 004_operational...sql:2275 | Pendapatan tiket wisata akan terhapus saat laporan konsolidasi holding dihitung. Dialihkan ke 4-401. |
| 3 | 4-301 | Penjualan Internal ke Unit Lain (Eliminasi Intercompany) | Pendapatan Panen Cabai | 004_operational...sql:2842 | Omzet panen cabai terhapus di konsolidasi. Dialihkan ke 4-204.01 (Sub-akun Panen Hortikultura). |
| 4 | 5-301 | Pembelian Internal dari Unit Lain (Eliminasi Intercompany) | HPP - Produk UMKM / Oleh-oleh | 004_operational...sql:2275 | HPP toko oleh-oleh pariwisata tereliminasi secara keliru. Dialihkan ke 5-101.02 (HPP Ritel / UMKM). |
| 5 | 5-301 | Pembelian Internal dari Unit Lain (Eliminasi Intercompany) | HPP Saprotan Cabai | 004_operational...sql:2842 | HPP benih/pupuk cabai tereliminasi. Dialihkan ke 5-102.04 (HPP Saprotan Hortikultura). |
| 6 | 5-215 | Beban Pemeliharaan & Perbaikan Aset | Beban Pajak BUMDes (PPh & Retribusi) | 003_financial...sql:736 | Beban pajak tercatat sebagai biaya renovasi gedung/mesin. Dialihkan ke kode resmi 5-203 (Beban Pajak Daerah & Retribusi). |
| 7 | 4-201 | Pendapatan Bunga Bank (Konvensional) | Pendapatan Margin Murabahah (USPPS) | 013_usp_sprint3...sql:55 | Margin pembiayaan syariah tercatat sebagai bunga bank konvensional. Dialihkan ke kode khusus 4-604. |
| 8 | 4-105 | Penjualan Kredit / Tempo (Toko POS) | Pendapatan Fee Bursa Saham | 004_operational...sql:2636 | Fee bursa tercatat sebagai penjualan sembako tempo. Dialihkan ke 4-305 (Telah selesai di-resolve). |
3. Dimensi 2: Anomali Nomenklatur & Struktur Akun#
3.1. Penempatan Piutang Karyawan di Bawah Persediaan Pakan (1-105)
Pada berkas seed.sql, ditemukan 16 akun piutang karyawan per unit kerja yang diberi kode awalan 1-105-xxxx:
Akun Induk: 1-105 -> Persediaan Pakan Ternak (ASSET - INVENTORY)
├── 1-105.01 -> Persediaan Obat
├── 1-105.02 -> Persediaan Vaksin
├── 1-105.03 -> Persediaan Vitamin & Suplemen
└── 1-105-4acd s/d 1-105-f446 (16 Akun) -> "Piutang Karyawan" (ANOMALI)
Analisis Standar SAK EP:
Persediaan (Inventory) dan Piutang (Receivables) adalah kelompok aset lancar yang berbeda secara fundamental. Menempatkan piutang pinjaman karyawan di bawah kode persediaan pakan ternak menyebabkan nilai stok barang dagang BUMDes mengalami distorsi.
Solusi: Seluruh akun piutang karyawan dipindahkan ke pos Piutang resmi 1-114-xxxx dengan akun induk 1-114 (Piutang Karyawan / Kasbon).
4. Dimensi 3: Inkonsistensi Saldo Normal (Case-Sensitivity)#
Sebanyak 14 akun pada seed.sql memiliki atribut normal_balance = 'debit' (huruf kecil), sementara seluruh skema tabel dan kode aplikasi mengharapkan huruf kapital 'DEBIT' atau 'CREDIT':
1-105.01(Persediaan Obat)1-105.02(Persediaan Vaksin)1-105.03(Persediaan Vitamin & Suplemen)1-602(Piutang Antar Kantor RKAK)1-602.01(RK Unit Peternakan Ketapang)1-603.01(RK Unit Jasa Sewa Viar)1-606(RK Unit Pamsimas)1-607(RK Unit Internet Desa)1-608(RK Unit Pertanian Horti)1-608.01(RK Unit Pertanian Palawija)1-612(RK Sub-Unit Penggemukan Sapi)1-613(RK Sub-Unit Hortikultura KTPG)1-614(RK Sub-Unit Trading KTPG)5-215(Beban Pemeliharaan & Perbaikan Aset)
Rekomendasi: Standardisasi kapitalisasi serentak melalui eksekusi SQL UPPER(TRIM(normal_balance)).
5. Dimensi 4: Kesenjangan 30 Kode Aktif di Codebase Belum Ada di DB#
Terdapat 30 kode akun yang telah digunakan dalam logika bisnis TypeScript (Server Actions, kalkulasi eliminasi konsolidasi, atau penutupan buku tahunan), tetapi baris datanya belum tercatat di tabel public.coa:
| Kode Akun | Nama / Fungsi Finansial | Modul Pengguna di Aplikasi |
|---|---|---|
1-805 | RK Unit Simpan Pinjam Syariah (Piutang Antar Kantor) | consolidated-matrix.ts, closing.ts, account-codes.ts |
2-805 | RK Kantor Pusat (Kewajiban Antar Kantor di USPPS) | consolidated-matrix.ts, finance/report.ts |
1-105.04 | Persediaan Bahan Baku Pakan Ternak (Jagung, Dedak, Premix) | inter_unit_transfer.ts, feedmill-mapping.ts |
1-303 | Persediaan Pakan Jadi / Konsentrat Ternak | inter_unit_transfer.ts, account-codes.ts |
5-211 | Beban Kesehatan & OVK Ternak | livestock-finance.ts, account-codes.ts |
1-104.01 | Persediaan Saprotan Yarnen (Kredit Saprodi Petani) | usp/yarnen.ts |
1-102.01 - .04 | Rekening Bank BPD per Unit Usaha (USP, Bio, KTPG, Toko) | account-codes.ts, global-account-mappings.ts |
1-109.01 | Uang Muka Pembelian Pakan | account-codes.ts, global-account-mappings.ts |
1-114 | Piutang Karyawan / Kasbon (Akun Induk) | account-codes.ts |
1-131 & 1-132 | Piutang Pembiayaan Murabahah & Mudharabah | account-codes.ts |
2-108 | Utang Iuran BPJS Ketenagakerjaan & Kesehatan | account-codes.ts |
3-999 | Saldo Penyeimbang Migrasi (Historical Balancing) | account-codes.ts, consolidated-matrix.ts |
4-103.01 / .02 | Penjualan Telur Grosir (B2B) & Retail (B2C) | account-codes.ts, global-account-mappings.ts |
4-403 | Pendapatan Jasa Giling Pakan Maklon | account-codes.ts, feedmill-mapping.ts |
5-601 / 5-602 | Beban Bagi Hasil Mudharabah & Bonus Wadiah | account-codes.ts |
5-217 / 5-218 | Beban Laboratorium Uji Nutrisi & Kalibrasi Mesin | account-codes.ts, global-account-mappings.ts |
5-910 | Beban Cadangan Kerugian Pembiayaan Murabahah | account-codes.ts, global-account-mappings.ts |
6. Dimensi 5: 51 Akun "Migration-Only" Belum Masuk ke seed.sql#
Sebanyak 51 akun operasional riil yang dihasilkan dari sprint modul terdahulu belum terintegrasi ke dalam seed.sql:
- 16 Kas Tunai Unit:
1-101.05s/d1-101.22(Pariwisata, Kuliner, Alsintan, Logistik, Pakan, Syariah, dll.). - 9 Rekening Koran Unit:
1-616s/d1-624(RK Cabai, Jagung, Padi, Manufaktur, Pabrik Pakan, Konveksi, dll.). - 4 Utang Pajak PPh/PPN:
2-105.01(PPh 21),2-105.02(PPh 23),2-105.03(PPh Final),2-105.04(PPN Keluaran). - 3 Utang SHU:
2-304(SHU Bonus Karyawan),2-305(SHU Dana Pendidikan),2-306(SHU Anggota USP). - Akun Finansial Khusus:
2-204(Dompet P2P),1-113(Piutang Murabahah),1-120(Agunan Sitaan AYDA). - Akun Pabrik Pakan:
4-106(Penjualan Pakan Surplus),5-305(BBM/Listrik Pakan),5-310(Servis Mesin),5-399(Depresiasi Pabrik). - Akun Potensi E-Commerce:
1-115(QRIS Gateway),1-107.20(Persediaan UMKM),2-205(Titipan Ongkir),2-206(Sewa Dimuka),2-207(Hutang Konsinyasi UMKM),4-302(Omzet E-Commerce),4-303(Sewa Lahan),4-304(Komisi Konsinyasi). - Akun Ekuitas Khusus:
3-120(Modal Hibah/Donasi),3-201(Dana Cadangan Umum).
7. Rencana Aksi Remediasi Komprehensif (Remediation Roadmap)#
Pelaksanaan perbaikan direkomendasikan secara bertahap dan teruji untuk menjamin stabilitas sistem dan integritas jurnal akuntansi yang telah berjalan:
[Tahap 1: Resolusi Tabrakan Kode] ──────► [SELESAI / DONE]
│
▼
[Tahap 2: Standardisasi Piutang Karyawan] ──► [SELESAI / DONE]
│
▼
[Tahap 3: Kapitalisasi Saldo Normal] ───► [SELESAI / DONE]
│
▼
[Tahap 4: Injeksi Akun Missing & Sinkronisasi] ─► [SELESAI / DONE]
Rincian Pelaksanaan per Tahap:
Tahap 1: Resolusi Tabrakan Kode Akun (SELESAI)
- Berkas migrasi:
175_comprehensive_coa_remediation_p1.sql(Commitec4ca4e7). - Alihkan:
- Bunga Bank ->
4-201 - Jasa Wisata & Tiket ->
4-401 - Panen Cabai ->
4-204.01 - HPP Produk UMKM ->
5-101.02 - HPP Saprotan Cabai ->
5-102.04 - Beban Pajak BUMDes ->
5-203 - Margin Murabahah ->
4-604 - Tetapkan
4-301dan5-301murni 100% untuk akun eliminasi konsolidasi intercompany.
Tahap 2: Standardisasi Piutang Karyawan (SELESAI)
- Berkas migrasi:
176_comprehensive_coa_remediation_p2.sql(Commit0c666ac1). - Daftarkan akun induk
1-114(Piutang Karyawan / Kasbon). - Relokasi 16 akun unit
1-105-xxxxmenjadi1-114-xxxxdan tautkan keparent_idakun1-114. - Perbarui
seed.sql,seed_piutang_karyawan.sql, dan lookup akun kasbon dilib/actions/hrm.ts. - Menjamin saldo historis tetap aman karena relasi transaksi mengikat pada
id(UUID), bukan string kode.
Tahap 3: Kapitalisasi Saldo Normal (SELESAI)
- Berkas migrasi:
177_comprehensive_coa_remediation_p3.sql(Commit2715c416). - Eksekusi pembersihan nilai string saldo normal:
sqlUPDATE public.coa SET normal_balance = UPPER(TRIM(normal_balance)), updated_at = now() WHERE normal_balance IS NOT NULL AND normal_balance != UPPER(TRIM(normal_balance));
- Tambahkan CHECK constraint
chk_coa_normal_balance(CHECK (normal_balance IN ('DEBIT', 'CREDIT'))). - Tambahkan Trigger otomatis
trg_normalize_coa_normal_balancepadapublic.coa(BEFORE INSERT OR UPDATE). - Perbarui fungsi
get_trial_balancedanget_account_balance_at_dateagar kebal variasi huruf (UPPER(TRIM(...)) = 'DEBIT'). - Bersihkan seluruh 14 kemunculan huruf kecil
'debit'padaseed.sqlmenjadi'DEBIT'. - Perbarui pengecekan badge di
COAClient.tsxagar case-safe.
Tahap 4: Injeksi Akun Missing & Sinkronisasi Total seed.sql (SELESAI)
- Berkas migrasi:
178_comprehensive_coa_remediation_p4.sql(Commit6ca5b4cf). - Injeksi 81 akun operasional riil dan missing accounts ke database
public.coa(ON CONFLICT (code) DO UPDATE). - Sinkronisasi total ke
supabase/seed.sql: kini memuat 220 akun master unik tanpa duplikasi (0 collision). - Selaraskan seluruh konstanta di
lib/constants/account-codes.ts(termasuk penambahanRK_USP_PAYABLE: '2-805') danlib/constants/global-account-mappings.ts. - 100% kode akun yang dirujuk di kode aplikasi terverifikasi eksis di master COA.
Tahap 5: Sinkronisasi Menyeluruh Dokumentasi Akuntansi & Master COA SAK EP (SELESAI)
- Selaraskan dokumen acuan utama
STANDAR_AKUNTANSI_COA.md: kini memuat seluruh 220 akun resmi terstandardisasi SAK EP (termasuk1-114Kasbon beserta 16 sub-akun unit,1-805/2-805Kliring Syariah,4-604Margin Murabahah,4-201Bunga Bank Operasional, dan pemurnian4-301/5-301Eliminasi Konsolidasi). - Perbarui
AKUNTANSI_COA.mddi root repository: bersihkan klasifikasi usang 6-xxx/7-xxx, beralih penuh ke 5 kategori murni SAK EP. - Perbarui seluruh dokumen modul operasional simpan pinjam syariah (
02_AKUNTANSI_USPPS_SYARIAH.md,PANDUAN_OPERASIONAL_AKAD_MURABAHAH_DAN_WADIAH_PSAK_102.md,PANDUAN_DUAL_UNIT_USP_DAN_USPPS.md,SOP_PEMBIAYAAN_TANI_YARNEN.md,07_SKENARIO_TESTING_QA.md,09_INTEGRASI_PIHAK_KETIGA.md) ke kode akun baku4-604dan1-101.13. - Perbarui spesifikasi teknis (
SPESIFIKASI_TEKNIS_DUAL_TRACK_DAN_DUAL_BANKING.md,CONSOLIDATION_AND_HIERARCHY.md,ARCHITECTURE_ERP_UNITS.md,ERP_INTEGRATED_ROADMAP.md). - Perbarui dokumen unit produksi Ketapang & Feedmill (
07_STANDAR_AKUNTANSI_DAN_COA_KETAPANG.md,STANDAR_AKUNTANSI_DAN_COA_PABRIK_PAKAN.md,PANDUAN_OPERASIONAL_DAN_USER_MANUAL_MODUL_PAKAN.md). - Audit kepatuhan standar dokumentasi:
npm run verify:docs(43/43 checks PASSED), Jest unit tests (26/26 PASSED), dantsc --noEmit(0 errors).
Laporan Audit SAK EP v2026.2 — Divisi Keuangan & Tim Pengembang BUMDes Bolulango.