Update besar apk finance
This commit is contained in:
@@ -0,0 +1,40 @@
|
||||
# Catatan Production — Penyatuan Workflow Pembelian
|
||||
|
||||
## Perubahan konsep
|
||||
|
||||
- `Barang Pending` hanya membuat master/rencana barang gudang dengan stok `0`.
|
||||
- Tidak ada barcode, stock log, jurnal, atau pembayaran ketika master pending dibuat.
|
||||
- Stok menjadi tersedia hanya setelah Goods Receipt untuk PO gudang diposting.
|
||||
- Pembelian aset tidak masuk stok gudang; Goods Receipt membuat data pada asset register.
|
||||
- Pembayaran dilakukan melalui tagihan supplier/hutang, bukan dari master barang.
|
||||
|
||||
## Migrasi wajib
|
||||
|
||||
Jalankan migration sampai versi `20260902000500` setelah backup dan uji staging. Migrasi menambah tujuan pembelian (`warehouse`/`asset`), metadata kapitalisasi aset, relasi receipt ke aset, serta kolom rencana pada `items`. Kolom item dan gudang pada detail transaksi terkait dibuat nullable agar pembelian aset tidak dipaksa mempunyai master barang gudang.
|
||||
|
||||
```bash
|
||||
php index.php migrate latest
|
||||
php index.php migrate status
|
||||
```
|
||||
|
||||
## Pemeriksaan sebelum cut-over
|
||||
|
||||
1. Pastikan semua item berstatus `draft` mempunyai stok nol dan tidak digunakan pada penjualan.
|
||||
2. Item draft legacy yang sudah mempunyai stok harus diklasifikasikan sebagai item aktif.
|
||||
3. Pastikan mapping akun `inventory`, `accounts_payable`, dan `purchase_input_tax` aktif.
|
||||
4. Pastikan akun aset dan lokasi aset tersedia sebelum membuat PO aset.
|
||||
5. Uji satu siklus gudang dan satu siklus aset di staging: PR, approval, PO, approval, receipt, tagihan, posting hutang, lalu pembayaran.
|
||||
6. Rekonsiliasi stock ledger dengan akun persediaan dan asset register dengan akun aset setelah cut-over.
|
||||
|
||||
Rollback migration ini tidak dilakukan dengan menghapus kolom pada database aktif. Gunakan backup terverifikasi apabila deployment harus dibatalkan.
|
||||
|
||||
## Biaya administrasi bank pada pembayaran
|
||||
|
||||
Migration `20260905000700` wajib dijalankan sebelum kode pembayaran terbaru digunakan. Migration ini menambahkan `bank_charge_amount`, `bank_charge_account_id`, dan `total_cash_out` pada `supplier_payments`, serta mapping `bank_charge_expense`.
|
||||
|
||||
Sebelum Production:
|
||||
|
||||
1. Cocokkan mapping `bank_charge_expense` dengan akun beban administrasi bank resmi pada COA perusahaan; jangan mengandalkan kode seed Development `6298` bila COA Production berbeda.
|
||||
2. Pastikan `supplier_payments.amount` tetap diperlakukan sebagai pokok pembayaran yang mengurangi PO/invoice. `total_cash_out` adalah pokok ditambah biaya admin.
|
||||
3. Rekonsiliasi total `purchase_payment_sources` dengan `supplier_payments.total_cash_out` dan alokasi invoice dengan `supplier_payments.amount`.
|
||||
4. Uji masing-masing satu transaksi pembayaran awal/DP, pembayaran setelah penerimaan, dan pelunasan Hutang & Pembayaran dengan admin bank sebelum cut-over.
|
||||
Reference in New Issue
Block a user