Initial import of AbelBirdNest Stock
This commit is contained in:
164
docs/project-spec/walet-notification-approval-flow.md
Normal file
164
docs/project-spec/walet-notification-approval-flow.md
Normal file
@ -0,0 +1,164 @@
|
||||
# Notification dan Approval Flow Sistem Inventory Walet
|
||||
|
||||
## 1. Tujuan
|
||||
Dokumen ini mendefinisikan event penting yang layak memicu notifikasi atau approval agar kontrol bisnis lebih baik tanpa membuat operasional terlalu lambat.
|
||||
|
||||
## 2. Prinsip
|
||||
- tidak semua transaksi perlu approval
|
||||
- approval dipakai untuk aksi berisiko tinggi
|
||||
- notifikasi dipakai untuk awareness dan respons cepat
|
||||
- approval tidak boleh menghambat proses gudang rutin yang volumenya tinggi
|
||||
|
||||
## 3. Event Notifikasi yang Direkomendasikan
|
||||
### A. Purchase Submitted
|
||||
Notifikasi ke:
|
||||
- Owner
|
||||
- Purchasing supervisor jika ada
|
||||
|
||||
Isi:
|
||||
- nomor pembelian
|
||||
- supplier
|
||||
- total nilai
|
||||
- jumlah line
|
||||
|
||||
### B. Receipt Finalized
|
||||
Notifikasi ke:
|
||||
- Owner opsional
|
||||
- Gudang lead
|
||||
- Purchasing
|
||||
|
||||
Isi:
|
||||
- nomor receipt
|
||||
- supplier
|
||||
- jumlah lot terbentuk
|
||||
- ada/tidak selisih
|
||||
|
||||
### C. Large Shrinkage / Adjustment
|
||||
Notifikasi ke:
|
||||
- Owner
|
||||
- Gudang lead
|
||||
- QC lead jika terkait kualitas
|
||||
|
||||
Trigger contoh:
|
||||
- shrinkage di atas threshold
|
||||
- cost impact di atas threshold
|
||||
|
||||
### D. Regrade Event
|
||||
Notifikasi ke:
|
||||
- Owner opsional
|
||||
- QC lead
|
||||
- Sales opsional jika pengaruh ke order aktif
|
||||
|
||||
### E. Sales Allocation Conflict
|
||||
Notifikasi ke:
|
||||
- Sales
|
||||
- Gudang
|
||||
|
||||
Trigger:
|
||||
- stok kurang
|
||||
- lot hold terpilih
|
||||
- qty dialokasikan bentrok
|
||||
|
||||
### F. Picking Variance
|
||||
Notifikasi ke:
|
||||
- Sales
|
||||
- Gudang
|
||||
|
||||
Trigger:
|
||||
- qty picked beda dari qty allocated
|
||||
|
||||
### G. Lot Hold / Release
|
||||
Notifikasi ke:
|
||||
- Gudang
|
||||
- QC
|
||||
- Sales jika lot terkait order aktif
|
||||
|
||||
## 4. Approval Flow yang Direkomendasikan
|
||||
### A. Purchase Approval
|
||||
Kapan perlu:
|
||||
- nilai pembelian di atas limit tertentu
|
||||
- supplier baru
|
||||
- harga beli di atas toleransi historis
|
||||
|
||||
Approver:
|
||||
- Owner
|
||||
- Purchasing manager
|
||||
|
||||
### B. Adjustment Approval
|
||||
Kapan perlu:
|
||||
- qty adjustment besar
|
||||
- cost impact besar
|
||||
- reason sensitif seperti loss/missing
|
||||
|
||||
Approver:
|
||||
- Gudang lead atau Owner
|
||||
|
||||
### C. Regrade Approval
|
||||
Kapan perlu:
|
||||
- downgrade signifikan bernilai besar
|
||||
- lot terkait order customer aktif
|
||||
|
||||
Approver:
|
||||
- QC lead / Owner
|
||||
|
||||
### D. Sales Override Approval
|
||||
Kapan perlu:
|
||||
- manual override dari policy FIFO
|
||||
- memakai lot non-prioritas
|
||||
- allow oversell draft exception
|
||||
|
||||
Approver:
|
||||
- Sales lead / Owner
|
||||
|
||||
## 5. Threshold yang Bisa Diatur
|
||||
Contoh parameter konfigurasi:
|
||||
- purchase_approval_amount_threshold
|
||||
- adjustment_qty_threshold
|
||||
- adjustment_cost_threshold
|
||||
- shrinkage_percent_threshold
|
||||
- regrade_qty_threshold
|
||||
- manual_override_requires_approval
|
||||
|
||||
## 6. Status Workflow Tambahan yang Bisa Dipakai
|
||||
### Purchase
|
||||
- DRAFT
|
||||
- PENDING_APPROVAL
|
||||
- SUBMITTED
|
||||
- APPROVED
|
||||
- CANCELLED
|
||||
|
||||
### Adjustment
|
||||
- DRAFT
|
||||
- PENDING_APPROVAL
|
||||
- APPROVED
|
||||
- POSTED
|
||||
- REJECTED
|
||||
|
||||
### Regrade
|
||||
- DRAFT
|
||||
- PENDING_APPROVAL
|
||||
- APPROVED
|
||||
- EXECUTED
|
||||
- REJECTED
|
||||
|
||||
## 7. UI Flow Sederhana
|
||||
### Purchase approval
|
||||
- purchasing submit purchase
|
||||
- jika melewati threshold -> status PENDING_APPROVAL
|
||||
- owner approve/reject
|
||||
- jika approve -> lanjut SUBMITTED
|
||||
|
||||
### Adjustment approval
|
||||
- gudang buat adjustment
|
||||
- jika kecil -> langsung POSTED
|
||||
- jika besar -> PENDING_APPROVAL
|
||||
- approver setujui -> POSTED
|
||||
|
||||
## 8. Notifikasi Channel
|
||||
MVP cukup dukung:
|
||||
- in-app notification
|
||||
- email optional
|
||||
- WhatsApp internal opsional nanti kalau dibutuhkan
|
||||
|
||||
## 9. Kesimpulan
|
||||
Approval dan notifikasi harus fokus ke transaksi berisiko tinggi, bukan semua transaksi. Dengan begitu sistem tetap lincah untuk operasional harian, tapi owner tetap punya kontrol di titik-titik penting.
|
||||
Reference in New Issue
Block a user