# 📘 Panduan Modul: Akuntansi

## 1. Kode Transaksi & Tipe (`jenisTr`)
Modul ini bertindak sebagai fondasi pencatatan keuangan dan manajemen bagan akun (COA) tanpa memiliki entry point transaksi direct stock, melainkan mengontrol bagan akun (Chart of Accounts / COA) dan sinkronisasinya ke data master (seperti `MdlProduk` dan `MdlSupplies`).
- **Coa.php**: Mengelola CRUD Chart of Accounts, relasi hierarki akun (parent-child), level akun, dan sinkronisasi field `coa_code` ke master data produk / supplies menggunakan `LibCoa`.

---

## 2. Aliran Finansial & Jurnal Akuntansi
Modul ini merupakan modul kontrol pusat untuk klasifikasi transaksi ke dalam Chart of Accounts (COA):
- **COA Struktur**: Akun dikelompokkan berdasarkan struktur tipe neraca / laba rugi.
- **Transaksi Akuntansi**: Transaksi posting riil dilakukan di sub-modul jurnal/adjustment, sedangkan modul ini memastikan mapping account code (`extern_id`, `extern_jenis`) sinkron dengan database MongoDB & MySQL.
- **Tidak Ada Mutasi Stok Barang**: Modul akuntansi tidak menyentuh persediaan barang secara fisik (no stock locker / FIFO).

---

## 3. Aturan Bisnis & Integrasi Modul
- **Autopopulate COA**: Pendaftaran barang baru (`MdlProduk` / `MdlSupplies`) akan men-trigger auto-generation kode COA di tabel akun riil via library helper `LibCoa` agar sinkron.
- **Transactional Accounts vs Head Accounts**: Pembedaan bendera `is_transaction` (bisa dijurnal) dan `is_gl` (buku besar).
