Skip to main content

Purchase Order

Deskripsi Modul

Modul Purchase Order (PO) mengelola pesanan pembelian ke supplier yang dibuat dari baris Permintaan Pembelian (PP) yang telah disetujui. Modul ini mencakup pelacakan nilai pengadaan, penerimaan barang (outstanding qty), tagihan, penerimaan material, uang muka, serta alur persetujuan multi-tahap.

PO terhubung dengan modul Permintaan Pembelian, Supplier, Tagihan (Bill), Penerimaan Material, dan Kas Keluar (uang muka).

Fitur Modul

FiturDeskripsi
Daftar & PencarianTabel PO dengan pencarian nomor dan filter lanjutan.
Tambah POForm pembuatan PO dari baris PP approved dengan outstanding qty.
Edit POPengubahan data PO (hanya status Draft atau Declined).
Lihat DetailInformasi PO, item, finansial, tagihan, dan penerimaan material.
Setujui (Approve)Persetujuan PO dan pengurangan outstanding qty PP.
Tolak (Decline)Penolakan PO dengan alasan wajib; mengembalikan qty PP.
Batalkan (Cancel)Pembatalan PO dengan alasan wajib.
Proses POMengubah status ke On Progress; memicu proses bisnis terkait.
Selesaikan (Complete)Penyelesaian PO setelah seluruh barang diterima.
Cetak PDFDokumen PO format PDF.
Generate Ulang TagihanRegenerasi tagihan Barang Khusus (kondisional).
Pilih SupplierModal pencarian supplier.
Pilih Item PPModal pemilihan baris PP untuk PO.

Penjelasan Field — Filter Daftar

FieldWajibDeskripsi
Pencarian (search)TidakPencarian berdasarkan nomor PO.
Supplier (supplier_id)TidakFilter berdasarkan supplier.
Status (purchase_order_status_id)TidakFilter status PO.
Tipe Pengiriman (shipping_type_id)TidakSegera atau Waktu Tertentu.
Tanggal Mulai (start_date)TidakBatas awal tanggal transaksi.
Tanggal Akhir (end_date)TidakBatas akhir tanggal transaksi.

Daftar Purchase Order

Penjelasan Field — Form Header

FieldWajibDeskripsi
Nama Supplier (supplier_id)YaDipilih via modal; mengisi telepon, PIC, TOP otomatis.
Nomor Telepon (supplier_phone)TidakDari data supplier (read-only).
Nama PIC (supplier_pic)TidakDari data supplier.
Alamat Pengiriman (shipping_address)YaAlamat tujuan pengiriman.
Tipe Barang (item_type)YaMaterial atau Barang Khusus.
Tanggal Transaksi (transaction_date)YaDefault hari ini.
Term of Payment (term_of_payment)TidakSyarat pembayaran.
Waktu Pengiriman (shipping_type_id)YaSegera atau Waktu Tertentu.
Tanggal Kirim (delivery_date)ConditionalWajib tampil jika pengiriman = Waktu Tertentu.

Penjelasan Field — Baris Item

FieldWajibDeskripsi
Referensi PP (purchase_requisition_detail_id[])YaBaris PP sumber (hidden).
Qty (qty_val[])YaMaksimum = outstanding qty PP.
Harga (price_val[])YaHarga per unit; default dari harga material.
Keterangan (description[])TidakCatatan per baris.
Catatan (note)TidakCatatan header PO.

Penjelasan Field — Total & Uang Muka

FieldWajibDeskripsi
Biaya Pengiriman (shipping_price_val)TidakBiaya pengiriman.
Diskon (discount_val)TidakNilai diskon.
PPN 11% (use_ppn, ppn_val)TidakCheckbox; 11% dari (subtotal + shipping − diskon).
Grand TotalDihitung otomatis.
Uang Muka (use_down_payment)TidakCheckbox aktifkan uang muka.
Akun Uang Muka (purchase_down_payment_id)ConditionalWajib jika uang muka aktif (mode persentase).
Tipe DP (down_payment_type)ConditionalPersentase (1) atau Nominal (2).
Persentase DP (down_payment_percent_val)Conditional0–100 jika tipe persentase.
Nominal DP (total_down_payment_val)ConditionalMaksimum = grand total.

Form Purchase Order

Penjelasan Field — Modal Selesaikan PO

FieldWajibDeskripsi
Tanggal Penyerahan (complete_handover_date)YaTanggal serah terima.
Nomor Dokumen (complete_number_reference)TidakReferensi dokumen serah terima.
Upload Dokumen (complete_attachment)TidakFile lampiran.
Catatan (complete_note)TidakCatatan penyelesaian.

Status & Alur Persetujuan

StatusAksi Tersedia
DraftEdit, Approve, Decline, Cancel
DeclinedEdit
Cancelled
ApprovedProcess, Decline, Cancel, Print
On ProgressComplete (jika os_qty = 0), Cancel, Print
DonePrint, Generate Ulang Tagihan

Detail Purchase Order

Catatan Penting

  • Nomor PO dihasilkan otomatis (format PCSH.BR/PO/...).
  • Minimal satu baris PP wajib ada; tipe barang harus sesuai tipe PP.
  • Material: os_qty = qty; Barang Khusus: os_qty = 0.
  • Approve mengurangi outstanding qty PP dan dapat memperbarui harga material.
  • Decline/Cancel mengembalikan qty PP ke kondisi semula.
  • Process memicu pembuatan tagihan Barang Khusus otomatis dan draft Kas Keluar uang muka.
  • Complete memerlukan seluruh baris os_qty = 0.
  • Grand total = subtotal + PPN + shipping − diskon.
  • Mengubah tipe barang saat create akan menghapus seluruh baris (konfirmasi SweetAlert).