Form Pembelian
Panduan penggunaan form Pembelian untuk mencatat faktur pemasok, detail barang, pembayaran, biaya, reward, poin, dan pajak tambahan.
Rute Menu
Pembelian Pembelian
/form/purchase
Kapan Form Ini Dipakai
Gunakan form ini saat perusahaan menerima faktur pembelian dari pemasok dan ingin mencatat:
- barang yang dibeli dan masuk stok
- hutang pemasok bila pembayaran belum lunas
- pembayaran langsung, giro, transfer, atau uang muka sesuai jenis pembayaran
- biaya tambahan pembelian seperti ongkir atau biaya administrasi
- pajak pembelian dan pajak tambahan bila fitur pajak tambahan aktif
- poin dan hadiah produk dari pemasok bila digunakan
Prasyarat Sebelum Input
Alur Cepat Pengisian
- Buka menu Pembelian, lalu klik Tambah.
- Pilih Divisi bila user boleh memilih lebih dari satu divisi.
- Periksa nomor Faktur Pembelian. Jika sistem memberi nomor otomatis, biarkan nomor yang muncul.
- Isi Tanggal dan Jam pembelian.
- Pilih Mata Uang. Jika mata uang berbeda dari mata uang default perusahaan, periksa Kurs Default dan Kurs Digunakan.
- Pilih Pemasok. Sistem akan mengisi nama, alamat, NPWP atau Tax ID, limit kredit, saldo hutang, dan termin bila tersedia di master pemasok.
- Pilih Pembeli jika diperlukan.
- Jika memakai fitur pre-transaction, pilih Order Pembelian untuk menarik detail dari PO.
- Isi Detail Pembelian: departemen, barang, satuan, jumlah, harga, diskon, dan pajak.
- Isi Diskon Faktur bila ada diskon di level faktur.
- Isi Pembayaran Pembelian. Untuk pembelian kredit, pembayaran boleh kurang dari total selama limit kredit masih cukup.
- Isi tab Biaya bila ada biaya pembelian.
- Isi tab Reward dan Poin bila pemasok memberikan poin atau hadiah produk.
- Isi Pajak Tambahan bila fitur pajak tambahan aktif.
- Isi tab Lainnya seperti memo dan pengiriman.
- Klik Simpan, lalu pastikan tidak muncul pesan limit kredit pemasok.
Struktur Form
Field Header General
purchaseidref.Tanggal dan Jam dipakai untuk tanggal stok masuk, tanggal hutang pemasok, tanggal jurnal, perhitungan saldo hutang, dan perhitungan saldo poin pemasok sampai tanggal tersebut.
Jika role user mengunci tanggal dan jam, user tidak dapat mengubahnya.
Pemasok wajib diisi. Ketik kode atau nama pemasok, lalu pilih dari daftar.
Setelah pemasok dipilih, sistem mengisi Nama Pemasok, Alamat, Tax ID, Limit Kredit, Saldo Hutang, Termin Pembayaran, dan Saldo Poin pemasok.
Jika master pemasok memiliki termin pembayaran, sistem membaca format termin tersebut untuk mengisi Batas Hari Diskon, Diskon, Tempo Bayar, dan Termin Pembayaran.
Field ini hanya muncul bila fitur pre_transactions aktif. Gunakan field ini untuk menarik data dari Order Pembelian menjadi Pembelian.
Saat Order Pembelian dipilih, sistem menampilkan konfirmasi. Jika disetujui, sistem mengambil Detail Pembelian, Pembayaran, Biaya, Hadiah Produk, dan Pajak Tambahan bila fitur aktif.
Jika tambah transaksi dibatalkan setelah memilih Order Pembelian, sistem mengembalikan status PO agar tidak dianggap sudah diproses.
Pilihan termin: Tunai, Tunai Saat Sampai, dan Kredit. Jika pembayaran yang diinput lebih kecil dari Total Pembelian, sistem akan mengubah transaksi menjadi Kredit saat simpan.
Batas Hari Diskon, Diskon Termin, dan Tempo Bayar tampil saat Termin Pembayaran bukan Tunai.
Dasar diskon faktur dihitung dari subtotal Detail Pembelian, total Biaya Pembelian, dan total Pajak Tambahan.
Total Pembelian = subtotal Detail Pembelian + total Biaya Pembelian + total Pajak Tambahan - Diskon Faktur
Total Pembelian readonly. Jika total tidak sesuai, cek detail barang, biaya, pajak tambahan, dan diskon faktur.
Detail Pembelian
Tabel Detail Pembelian wajib diisi minimal satu baris. Tabel ini adalah sumber utama stok masuk, HPP, dan nilai persediaan.
| Field | Penjelasan |
|---|---|
| Departemen | Wajib. Dipakai untuk stok, pembatasan satuan, dan laporan. Pilihan mengikuti divisi. Departemen terakhir akan diingat sebagai default baris berikutnya. |
| Produk | Wajib. Setelah dipilih, sistem mengisi nama barang, pajak default, satuan default, jumlah default reorder bila ada, status serial number, harga beli dari satuan, dan diskon beli dari satuan. |
| Nama | Nama produk, readonly. |
| Satuan | Wajib. Jika diganti, sistem mengambil quantity konversi, harga beli, dan diskon beli dari master satuan. |
| Jumlah | Jumlah pembelian dalam satuan yang dipilih. Mengubah jumlah akan menghitung ulang gross, diskon, pajak, dan subtotal. |
| Harga | Harga beli per satuan. Mengubah harga akan menghitung ulang gross, diskon, pajak, dan subtotal. |
| Gross | Jumlah dikali harga, readonly. |
| Diskon persen | Diskon baris dalam persen. Mengubahnya akan menghitung nilai diskon, pajak, dan subtotal. |
| Nilai Diskon | Diskon baris dalam nominal. Mengubahnya akan menghitung persentase diskon, pajak, dan subtotal. |
| Pajak | Jenis pajak pembelian. Pajak mengambil data dari master taxes. |
| Nilai Pajak | Nilai pajak baris, readonly. Untuk pajak non-inclusive, sistem menghitung pajak dari gross dikurangi diskon. Untuk pajak inclusive atau persen 0, nilai pajak baris menjadi 0 di layar detail. |
| Subtotal | Gross dikurangi diskon ditambah pajak. Field ini readonly dan dijumlahkan ke Total Pembelian. |
| Serial Number | Muncul bila serial number aktif dan produk memakai SN. |
| Expired Date | Muncul bila serial number aktif dan produk memakai SN. |
| Memo | Catatan baris barang. |
Tombol Serial Number
Rumus Detail Pembelian
Gross = Jumlah x Harga
Nilai Diskon = Diskon persen / 100 x Harga x Jumlah
Nilai Pajak = (Gross - Nilai Diskon) x Persen Pajak, hanya bila pajak non-inclusive dan persen pajak > 0
Subtotal = Gross - Nilai Diskon + Nilai Pajak
Setiap kali detail disimpan, Total Pembelian di header dihitung ulang.
Pembayaran Pembelian
Tabel Pembayaran Pembelian digunakan untuk mencatat pembayaran atas faktur pembelian.
| Field | Penjelasan |
|---|---|
| Jenis Pembayaran | Wajib. Pilihan berasal dari payment type aktif, kecuali jenis tertentu yang dikecualikan oleh sistem. |
| QR Code | Muncul bila jenis pembayaran memiliki QR Code. Klik untuk melihat QR. |
| Pembayaran | Nilai pembayaran. Total pembayaran tidak boleh lebih besar dari Total Pembelian. |
| Diskon persen | Diskon pembayaran dalam persen. Menghitung nilai diskon pembayaran. |
| Diskon | Diskon pembayaran dalam nominal. Menghitung persentase diskon pembayaran. |
| Due Date | Muncul untuk jenis pembayaran tertentu seperti giro atau pembayaran yang belum langsung diterima. |
| Diterima | Menandai apakah pembayaran langsung diterima atau efektif. Untuk beberapa jenis pembayaran, default bisa belum diterima. |
| Ref. Pembayaran | Nomor referensi giro, transfer, atau bukti pembayaran. Muncul untuk jenis pembayaran tertentu. |
Untuk beberapa konfigurasi jenis pembayaran, sistem dapat memberi default tambahan seperti QR Code, tanggal jatuh tempo, status diterima, atau referensi pembayaran. Ikuti setup payment type yang dipakai perusahaan.
Biaya Pembelian
Tab Biaya digunakan untuk menambahkan biaya yang menjadi bagian dari pembelian, misalnya ongkir, biaya handling, atau biaya lain sesuai master Biaya Pembelian.
| Field | Penjelasan |
|---|---|
| Biaya | Wajib. Pilih dari master Biaya Pembelian. |
| Nilai Biaya | Nilai biaya yang menambah dasar Total Pembelian. |
| Memo | Catatan biaya. |
Total Nilai Biaya ikut masuk ke perhitungan Total Pembelian.
Reward dan Poin
Bagian ini digunakan bila pemasok memberikan poin atau hadiah produk.
Field Poin
| Field | Penjelasan |
|---|---|
| Saldo Poin | Saldo poin pemasok sebelum transaksi, dihitung sampai tanggal dan jam pembelian. Readonly. |
| Poin | Poin yang diperoleh dari transaksi ini. |
| Total Poin | Saldo Poin ditambah Poin transaksi ini. Readonly. |
Jika Poin lebih dari 0, sistem menyimpan mutasi poin pemasok saat transaksi disimpan.
Hadiah Produk
Tabel Hadiah Produk digunakan bila pemasok memberikan barang bonus. Struktur inputnya mirip Detail Pembelian, tetapi tanpa diskon baris.
Gross = Jumlah x Harga
Nilai Pajak = Gross x Persen Pajak
Subtotal = Gross + Nilai Pajak
Barang hadiah tetap dapat menambah stok dan mempengaruhi jurnal sesuai akun reward pemasok dan akun produk.
Pajak Tambahan
extratax, dan setting useotherstax aktif.Pajak Tambahan mengambil dasar pajak dari baris Detail Pembelian. Saat memilih Produk di tab ini, sistem mencari produk dari Detail Pembelian pada faktur yang sama.
| Field | Penjelasan |
|---|---|
| Produk | Pilih produk dari Detail Pembelian transaksi ini. |
| Nama | Nama produk, readonly. |
| Jumlah | Jumlah dari detail pembelian. |
| Satuan | Satuan dari detail pembelian. |
| Gross | Dasar pajak tambahan, readonly. |
| Pajak | Jenis pajak tambahan. |
| Nilai Pajak | Gross dikali persen pajak. Readonly. |
Total Nilai Pajak Tambahan ikut menambah Total Pembelian.
Tab Lainnya
| Field | Penjelasan |
|---|---|
| Memo | Catatan transaksi. Jika kosong, sistem memakai memo default seperti "Pembelian [nama pemasok]" untuk jurnal. |
| Cat. Perubahan | Muncul saat edit. Digunakan sebagai catatan perubahan. Jika kosong, memo transaksi dipakai. |
| Sudah dicetak | Menandai apakah transaksi sudah dicetak. Setelah print, sistem otomatis mengubahnya menjadi aktif. |
| Pengiriman | Wajib. Pilihan dari master shipment. |
| Tanggal Diterima | Tanggal diterima, readonly. Default sekarang. |
| Diterima | Status diterima. Default aktif. |
| Lunas | Status lunas. Saat simpan, sistem menghitung otomatis dari total pembayaran dibanding Total Pembelian. |
| Tanggal Lunas | Jika belum lunas, sistem mengosongkan tanggal lunas. |
| User Create, User Edit, Last Updated | Terisi otomatis oleh sistem. |
Validasi Saat Simpan
- Total Pembelian lebih dari 0.
- Total pembayaran tidak lebih besar dari Total Pembelian.
- Perhitungan limit kredit pemasok masih mencukupi.
Rumus Cek Limit Kredit
Sisa limit = Limit Kredit Pemasok - Saldo Hutang Pemasok - Total Pembelian + Total Pembayaran
Status Lunas
Lunas = ya, bila Total Pembayaran sama dengan Total Pembelian dalam toleransi digit uang
Lunas = tidak, bila Total Pembayaran lebih kecil dari Total Pembelian
Jika belum lunas, Tanggal Lunas dikosongkan.
Efek Setelah Simpan
- Memperbarui tanggal transaksi pada Detail Pembelian dan Hadiah Produk.
- Menghapus dan membuat ulang data pendukung untuk transaksi ini, seperti COGS, supplier balance, jurnal, inventory, dan purchase point.
- Jika ada Poin, membuat mutasi poin pemasok.
- Untuk setiap barang pembelian, menambah stok masuk dan menghitung COGS, kecuali pembelian berasal dari Order Pembelian yang seluruh Goods Receipt terkait sudah memiliki posting inventory.
- Memperbarui supplier terakhir pada master produk.
- Memperbarui harga beli, diskon beli, pajak beli, dan net purchase pada master satuan sesuai divisi dan departemen.
- Membuat jurnal persediaan, pajak masukan, biaya pembelian, diskon pembelian, pembayaran, hutang pemasok, giro, DP pemasok, dan akun terkait lain sesuai master data.
- Jika pembelian berasal dari Order Pembelian, status PO diubah menjadi sudah diproses.
Saat transaksi dihapus, sistem membersihkan data pendukung transaksi seperti saldo pemasok, poin, COGS, inventory, journaltrans, dan supplier DP.
Jika pembelian berasal dari Order Pembelian dan semua Goods Receipt terkait sudah memiliki posting inventory, form Pembelian tidak membuat stok masuk lagi. Dalam kondisi ini, sistem memakai akun accrued payable bila tersedia untuk menyeimbangkan jurnal.
Untuk alur PO - Goods Receipt - Purchase, stok dapat berasal dari Goods Receipt, sedangkan faktur pembelian lebih berperan pada hutang dan penyelesaian akuntansi.
Checklist Sebelum Simpan
Masalah Umum
useotherstax, dan role user useextratax.