Skip to Content
BackofficePurchasingPurchase Order

Purchase Order (Pesanan Pembelian)

CodePUR-PO
ModulePurchasing
TypeTransaction document
StatusImplemented
PriorityP0 — MVP
ProcessProcure-to-Pay, langkah 1
API[URL Postman]

1. Overview

Purchase Order (PO) adalah dokumen pemesanan barang dari sebuah toko ke supplier, dan menjadi acuan untuk Penerimaan Barang (Goods Receipt) serta Penagihan (Bill). Staf membuat PO berisi supplier, kontak supplier, alamat pengiriman toko, termin pembayaran, dan daftar produk beserta qty, harga, diskon, dan pajak. PO ditetapkan penanggung jawabnya (PIC); hanya PIC yang bisa mengajukan, membatalkan, dan menutup PO. PO bisa dicetak sebagai PDF kapan saja.

Hasil yang diharapkan: setiap toko tahu apa yang sedang dipesan dan belum datang, siapa yang bertanggung jawab atas pesanan itu, dan barang yang datang bisa dicocokkan dengan pesanan.

2. Problem

Pembelian di retail kecil dan menengah biasanya berjalan tanpa dokumen pesanan formal. Pesanan disampaikan lewat chat atau telepon, dan pencocokan barang, harga, serta tagihan dilakukan dari ingatan atau catatan pribadi staf. Akibatnya:

  • Tidak ada satu tempat untuk melihat apa yang sedang ditunggu dari supplier, per toko.
  • Tidak jelas siapa yang bertanggung jawab atas sebuah pesanan.
  • Saat barang datang, staf tidak tahu jumlah dan harga yang disepakati; kurang kirim atau kenaikan harga baru ketahuan saat tagihan datang.
  • Owner tidak bisa memperkirakan pengeluaran dan jatuh tempo pembayaran karena komitmen pembelian tidak tercatat.

3. Goals & Non-goals

Goals

  • PO cepat dibuat sehingga staf mau memakainya. Indikator: staf membuat PO lewat wizard tanpa spreadsheet terpisah.
  • Setiap PO punya penanggung jawab yang jelas. Indikator: aksi Ajukan, Batalkan, dan Tutup hanya bisa dilakukan PIC.
  • PO menjadi acuan penerimaan barang dan tagihan. Indikator: mayoritas Goods Receipt dan Bill merujuk ke PO.
  • Status penerimaan terlihat. Indikator: status PO berubah otomatis mengikuti Goods Receipt yang diajukan.

Non-goals

  • Approval bertingkat (cukup PIC yang mengajukan)
  • Kirim PO ke supplier via email dari sistem (cukup cetak / unduh PDF)
  • Revisi PO setelah Diajukan (batalkan dan buat baru)
  • Duplikat PO
  • RFQ / perbandingan penawaran supplier, blanket PO, multi-currency
  • Lampiran file pada PO

4. User Scenarios

RoleScenario
Staf PurchasingMembuat PO restock mingguan ke satu supplier untuk tokonya, menetapkan dirinya sebagai PIC, lalu mengajukan dan mencetak PDF untuk dikirim via WhatsApp
Kepala TokoMenetapkan PIC pada PO Draf yang dibuat staf lain agar PO bisa diajukan
Staf GudangBarang datang; membuat Penerimaan Barang dari PO yang sudah Diajukan
Staf PurchasingSupplier hanya mengirim sebagian; melihat status PO Diterima Sebagian dan sisa qty di modul Item Pembelian
OwnerMelihat semua PO lintas toko, menyaring berdasarkan status dan supplier, dan memantau jatuh tempo pembayaran
PICMembatalkan PO yang tidak jadi dipesan, atau menutup PO yang sudah diterima seluruhnya

5. User Flow

Penjelasan tiap langkah pada diagram:

  1. Isi wizard — Dari daftar PO, staf klik Tambah Baru. Wizard terdiri dari 3 langkah:

    • Umum: toko terisi otomatis dari toko aktif (read-only); alamat pengiriman terisi otomatis dari alamat pengiriman default toko; tanggal pesanan default hari ini; staf mengisi tanggal estimasi diterima, penanggung jawab (opsional), supplier, kontak supplier, tipe pembayaran, dan catatan. Tanggal jatuh tempo dihitung otomatis dari tipe pembayaran.
    • Produk: staf menambah baris lewat dialog: cari produk berdasarkan nama atau barcode (satu pilihan per kemasan/UoM), isi qty, harga (default harga pokok kemasan; harga beli terakhir ditampilkan sebagai acuan), diskon persen dan nominal (bisa lebih dari satu), dan pajak. Total baris dan grand total dihitung langsung.
    • Tinjauan: ringkasan seluruh isian sebelum disimpan.

    Pratinjau PDF tersedia di setiap langkah.

  2. Data valid? — Validasi per langkah saat klik Selanjutnya, dan validasi BE saat Simpan. Error BE ditampilkan di langkah Tinjauan dan pada field terkait.

  3. Draf — PO tersimpan dengan status Draf, dan staf diarahkan ke daftar PO. Draf bisa diubah (header dan baris), ditetapkan PIC-nya, atau dihapus.

  4. Diajukan — PIC klik Ajukan Pesanan dan mengonfirmasi. PO tidak dapat diubah lagi; tercatat siapa dan kapan mengajukan. PO kini bisa dirujuk oleh Goods Receipt dan Bill.

  5. Goods Receipt — Saat barang datang, staf membuat Penerimaan Barang yang merujuk PO ini. Proses penerimaan dijelaskan di PRD Goods Receipt.

  6. Semua qty diterima? — Saat GR diajukan, BE membandingkan qty diterima dengan qty pesan tiap baris.

  7. Diterima Sebagian — Masih ada sisa qty; GR berikutnya kembali ke langkah 5. Sisa qty per baris terlihat di modul Item Pembelian.

  8. Diterima — Semua baris terpenuhi. PO masih bisa dirujuk GR dan Bill.

  9. Selesai — PIC klik Tutup Pesanan dan mengonfirmasi. PO ditandai selesai dan tidak dapat diubah lagi.

  10. Dibatalkan — PIC klik Batalkan Pesanan pada PO Diajukan dan wajib mengisi alasan.

Alternative paths

Jalur alternatif adalah kejadian di luar alur normal di atas, misalnya pengguna berubah pikiran, supplier tidak memenuhi pesanan, atau data master berubah. Setiap jalur ini harus punya perilaku yang jelas agar FE dan BE tidak menebak:

  • Perubahan setelah Diajukan — tidak bisa. Batalkan (selama belum ada GR) lalu buat PO baru.
  • PO belum punya PIC — tombol Ajukan nonaktif untuk semua pengguna. Tetapkan PIC dulu lewat Edit Draf atau aksi tetapkan PIC di daftar.
  • Pengguna bukan PIC — tombol Ajukan, Batalkan, dan Tutup tampil tetapi nonaktif.
  • PO Draf tidak jadi dipakai — hapus (satuan atau massal). Draf tidak dibatalkan, tetapi dihapus.
  • Supplier tidak memenuhi sisa pesanan — saat ini PO tetap berstatus Diterima Sebagian; belum ada aksi tutup atau batal pada status ini (lihat EC-05).
  • Toko tidak aktif — PO hanya bisa dilihat dan dicetak; semua aksi ubah disembunyikan.

6. User Stories

Prioritas: P0 wajib untuk rilis, P1 penting, P2 kalau sempat.

US-01 — Membuat PO (P0)

Sebagai staf purchasing, saya ingin membuat PO berisi supplier, alamat pengiriman, termin, dan daftar produk, agar pesanan tercatat sebelum barang datang.

IDKriteria penerimaan
AC-01.1Saat pengguna dengan izin create membuka Tambah Baru di toko aktif, wizard Umum → Produk → Tinjauan tampil dengan toko aktif terisi (read-only) dan tanggal pesanan hari ini.
AC-01.2Alamat pengiriman terisi otomatis dengan alamat pengiriman default toko; jika tidak ada, alamat pertama toko.
AC-01.3Saat supplier diganti, kontak dikosongkan dan pilihan kontak diambil dari kontak supplier terpilih. Kontak nonaktif sampai supplier dipilih.
AC-01.4Saat tipe pembayaran, tanggal pesanan, atau tanggal estimasi berubah, tanggal jatuh tempo dihitung ulang sesuai BR-06. Pada tipe Custom, tanggal jatuh tempo wajib diisi manual.
AC-01.5Tanggal estimasi diterima tidak bisa dipilih sebelum tanggal pesanan.
AC-01.6Saat produk dipilih, UoM terisi dari kemasan terpilih, harga default dari harga pokok kemasan, dan harga beli terakhir ditampilkan sebagai acuan.
AC-01.7Saat qty, harga, diskon, atau pajak berubah, total baris dan grand total diperbarui tanpa reload, dengan perhitungan sesuai BR-04 dan BR-05.
AC-01.8Saat Selanjutnya diklik dan field wajib di langkah itu kosong, pengguna tidak bisa pindah langkah dan error tampil di field terkait.
AC-01.9Saat Simpan berhasil, PO tersimpan berstatus Draf, toast sukses tampil, dan pengguna diarahkan ke daftar PO.
AC-01.10Saat BE menolak penyimpanan, pesan error tampil di langkah Tinjauan dan pada field terkait.
AC-01.11Saat pengguna meninggalkan wizard dengan isian yang belum disimpan, muncul konfirmasi perubahan belum disimpan.

US-02 — Mengubah PO Draf (P0)

Sebagai staf purchasing, saya ingin mengubah PO yang masih Draf, agar kesalahan bisa diperbaiki sebelum diajukan.

IDKriteria penerimaan
AC-02.1Tombol Ubah Data hanya tampil pada PO Draf untuk pengguna dengan izin update di toko aktif.
AC-02.2Tab Umum disimpan sekaligus; baris di tab Produk ditambah, diubah, dan dihapus satu per satu dan langsung tersimpan.
AC-02.3Saat URL edit dibuka pada PO yang bukan Draf, halaman kembali ke tampilan detail read-only.
AC-02.4Tab yang sedang dibuka tetap sama saat berpindah dari detail ke edit.

US-03 — Menetapkan penanggung jawab (P0)

Sebagai kepala toko, saya ingin menetapkan PIC pada PO, agar jelas siapa yang berwenang mengajukan, membatalkan, dan menutup PO.

IDKriteria penerimaan
AC-03.1PIC bisa dipilih lebih dari satu dari daftar karyawan toko, saat membuat PO, saat mengubah Draf, atau lewat tombol tambah di kolom Penanggung Jawab pada daftar.
AC-03.2Tombol tambah PIC di daftar hanya tampil pada PO Draf untuk pengguna dengan izin assign di toko aktif.

US-04 — Mengajukan PO (P0)

Sebagai PIC, saya ingin mengajukan PO, agar PO berlaku dan isinya tidak berubah lagi.

IDKriteria penerimaan
AC-04.1Tombol Ajukan Pesanan tampil pada PO Draf untuk pengguna dengan izin submit, dan hanya aktif jika pengguna adalah PIC PO tersebut.
AC-04.2Setelah konfirmasi, status menjadi Diajukan, serta tercatat siapa dan kapan mengajukan.
AC-04.3Pada PO Diajukan, tombol Ubah Data dan aksi baris tidak tampil.

US-05 — Membatalkan PO (P0)

Sebagai PIC, saya ingin membatalkan PO yang tidak jadi, agar tidak dianggap pesanan yang ditunggu.

IDKriteria penerimaan
AC-05.1Tombol Batalkan Pesanan tampil pada PO Diajukan untuk pengguna dengan izin cancel, dan hanya aktif jika pengguna adalah PIC.
AC-05.2Dialog pembatalan mewajibkan alasan; tombol konfirmasi nonaktif selama alasan kosong.
AC-05.3Setelah dibatalkan, status menjadi Dibatalkan; alasan, siapa, dan kapan tersimpan. Stepper status menampilkan jalur Draf → Diajukan → Dibatalkan.

US-06 — Melihat progres penerimaan (P0)

Sebagai staf purchasing, saya ingin status PO berubah mengikuti penerimaan barang, agar tahu apa yang masih ditunggu.

IDKriteria penerimaan
AC-06.1Saat GR yang merujuk PO diajukan untuk sebagian qty, status PO menjadi Diterima Sebagian.
AC-06.2Saat seluruh baris terpenuhi, status PO menjadi Diterima.
AC-06.3Qty dipesan, diterima, dan sisa per baris tampil di modul Item Pembelian, dan bisa difilter per PO.

US-07 — Menutup PO (P0)

Sebagai PIC, saya ingin menutup PO yang sudah diterima seluruhnya, agar PO ditandai selesai.

IDKriteria penerimaan
AC-07.1Tombol Tutup Pesanan tampil pada PO Diterima untuk pengguna dengan izin close, dan hanya aktif jika pengguna adalah PIC.
AC-07.2Setelah konfirmasi, status menjadi Selesai, serta tercatat siapa dan kapan menutup.

US-08 — Daftar dan pencarian PO (P0)

Sebagai owner, saya ingin melihat dan menyaring PO, agar cepat menemukan pesanan yang belum datang.

IDKriteria penerimaan
AC-08.1Default menampilkan PO toko aktif; filter lanjutan: toko, supplier, rentang tanggal, dan status; pencarian dengan kata kunci.
AC-08.2Kolom: nomor, toko, tanggal pesanan, tanggal estimasi, jatuh tempo, penanggung jawab, supplier, total bruto, total diskon, total neto, total pajak, grand total, dibuat oleh, dan status.
AC-08.3Urutan default tanggal pesanan terbaru di atas, dengan paginasi. Kolom yang bisa diurutkan: tanggal pesanan, nomor, tanggal estimasi, jatuh tempo, dan grand total.
AC-08.4Baris bisa diperluas untuk melihat daftar produk PO tanpa membuka detail.
AC-08.5Aksi baris: Cetak, Lihat, Ubah (hanya Draf), Hapus (hanya Draf), sesuai izin.

US-09 — Menghapus PO Draf (P0)

Sebagai staf purchasing, saya ingin menghapus Draf yang tidak jadi dipakai, agar daftar tetap bersih.

IDKriteria penerimaan
AC-09.1Aksi Hapus hanya tersedia pada PO Draf untuk pengguna dengan izin delete di toko aktif, setelah konfirmasi.
AC-09.2Hapus massal tersedia dari baris yang dipilih di daftar.

US-10 — Mencetak PO (P1)

Sebagai staf purchasing, saya ingin mencetak atau mengunduh PO sebagai PDF, agar bisa dikirim ke supplier.

IDKriteria penerimaan
AC-10.1Pratinjau PDF tersedia dari wizard buat PO, halaman detail/edit, dan aksi Cetak di daftar, pada status apa pun.
AC-10.2Saat mengedit Draf, pratinjau PDF memakai isian form terbaru yang belum disimpan.
AC-10.3Sebelum PO disimpan, nomor PO di PDF tampil kosong (”-”).

US-11 — Riwayat aktivitas (P1)

Sebagai owner, saya ingin melihat log aktivitas PO, agar tahu siapa mengubah apa dan kapan.

IDKriteria penerimaan
AC-11.1Log aktivitas tersedia per PO (di detail) dan untuk seluruh PO (di daftar).

7. Document Structure

Header

FieldRequiredDefaultNotes
Nomor POOtomatisDibuat BEKosong di pratinjau sebelum disimpan
TokoYaToko aktifRead-only
Alamat pengirimanYaAlamat pengiriman default tokoDari alamat toko
Tanggal pesananYaHari ini
Tanggal estimasi diterimaYaTidak boleh sebelum tanggal pesanan
Penanggung jawab (PIC)TidakMulti-pilih dari karyawan toko; wajib sebelum Ajukan (BR-02)
SupplierYaDari master Supplier
KontakYaDari kontak supplier terpilih; kosong saat supplier diganti
Tipe pembayaranYaCBD, COD, EOM, Net 14/30/60/90, Custom
Tanggal jatuh tempoWajib jika CustomDihitung dari tipe pembayaranLihat BR-06
CatatanTidakTampil di PDF
StatusOtomatisDrafLihat bagian 8

Lines

FieldRequiredDefaultNotes
UrutanOtomatisUrutan ditambahkan
Produk + kemasanYaDari inventaris produk toko; satu pilihan per kemasan; cari nama atau barcode
UoMOtomatisUoM kemasan terpilih
QtyYa1Minimal 0,01
Harga satuanYaHarga pokok kemasanMinimal 1; harga beli terakhir ditampilkan sebagai acuan
Diskon persenTidak0Bisa lebih dari satu; bertingkat (BR-04)
Diskon nominalTidak0Bisa lebih dari satu; dipotong setelah diskon persen
PajakTidakPersen, 0Persen atau nominal
Total brutoOtomatisqty × harga
Total diskonOtomatisAkumulasi diskon
Total netoOtomatisBruto − diskon
Total pajakOtomatis
Total barisOtomatisNeto + pajak

Totals: Total Bruto · Total Diskon · Total Neto · Total Pajak · Grand Total (penjumlahan semua baris), plus jejak dibuat / diajukan / dibatalkan (dengan alasan) / diterima pertama / ditutup oleh siapa dan kapan.

8. Status Lifecycle

StatusLabel UIMeaningEditableNext status
draftDrafSedang disusun, belum berlakuSemua field dan barisDiajukan, atau dihapus
submittedDiajukanBerlaku, menunggu barangTidakDiterima Sebagian, Diterima, Dibatalkan
partially_receivedDiterima SebagianSebagian barang sudah diterimaTidakDiterima
receivedDiterimaSemua barang sudah diterimaTidakSelesai
closedSelesaiDitutup oleh PICTidak
cancelledDibatalkanDibatalkan sebelum ada penerimaanTidak

9. Permissions & Actions

Permissions

Akses berbasis permission (bukan role tetap). Semua aksi ubah juga mensyaratkan toko aktif; pada toko tidak aktif, PO hanya bisa dilihat dan dicetak.

ActionPermissionSyarat tambahan
Lihat daftarpurchase:purchase-order:list:any atau :list:store
Lihat detailpurchase:purchase-order:view:any atau :view:store
Buat POpurchase:purchase-order:create:storeToko aktif
Ubah Draf / tambah barispurchase:purchase-order:update:store (+ create:store untuk tambah baris)Toko aktif
Hapus Draf / hapus barispurchase:purchase-order:delete:storeToko aktif
Tetapkan PIC (dari daftar)purchase:purchase-order:assign:storeToko aktif
Ajukanpurchase:purchase-order:submit:storeToko aktif, pengguna adalah PIC
Batalkanpurchase:purchase-order:cancel:storeToko aktif, pengguna adalah PIC
Tutuppurchase:purchase-order:close:storeToko aktif, pengguna adalah PIC

FE menyembunyikan aksi yang tidak diizinkan dan menonaktifkan aksi jika pengguna bukan PIC; BE tetap menolaknya. Keduanya harus konsisten.

Actions by status (✓ tersedia)

ActionDrafDiajukanDiterima SebagianDiterimaSelesaiDibatalkan
Ubah header dan baris
Tetapkan PIC
Hapus
Ajukan
Batalkan
Tutup
Dirujuk Goods Receipt / Bill
Cetak / pratinjau PDF
Lihat log aktivitas

10. Business Rules

Aturan bisnis adalah ketentuan yang berlaku di semua layar dan semua aksi pada PO, siapa pun yang melakukannya. FE memakainya sebagai validasi di form, BE memakainya sebagai sumber kebenaran; jika keduanya berbeda, perilaku BE yang dianggap benar dan FE menyesuaikan.

  • BR-01 PO milik satu toko dan dibuat pada toko aktif pengguna. Aksi ubah hanya bisa dilakukan saat toko aktif.
  • BR-02 Ajukan, Batalkan, dan Tutup hanya boleh dilakukan oleh karyawan yang ditetapkan sebagai PIC PO tersebut, dan memiliki permission aksi terkait. Pembuat PO saja tidak cukup.
  • BR-03 Hanya PO Draf yang bisa diubah, ditetapkan PIC-nya, dan dihapus. Setelah Diajukan, isi PO terkunci permanen.
  • BR-04 Diskon baris dihitung bertingkat: semua diskon persen diterapkan berurutan terhadap sisa nilai, lalu semua diskon nominal dikurangkan.
  • BR-05 Pajak baris dihitung dari nilai setelah diskon (persen), atau berupa nominal tetap. Total baris = neto + pajak; total PO = penjumlahan total baris.
  • BR-06 Tanggal jatuh tempo: CBD/COD = tanggal estimasi diterima; EOM = akhir bulan tanggal pesanan; Net N = tanggal pesanan + N hari; Custom = diisi manual (wajib).
  • BR-07 Tanggal estimasi diterima tidak boleh sebelum tanggal pesanan.
  • BR-08 Qty baris minimal 0,01; harga satuan minimal 1.
  • BR-09 Batalkan hanya dari status Diajukan dan wajib menyertakan alasan.
  • BR-10 Status Diterima Sebagian dan Diterima ditetapkan otomatis oleh BE berdasarkan GR yang diajukan; tidak bisa diubah manual.
  • BR-11 Tutup hanya dari status Diterima.
  • BR-12 Goods Receipt dan Bill hanya bisa merujuk PO berstatus Diajukan, Diterima Sebagian, atau Diterima.
  • BR-13 Semua perubahan dan transisi status dicatat di log aktivitas: aksi, pengguna, dan waktu.

11. Edge Cases

Edge case adalah kondisi yang jarang terjadi tetapi pasti muncul di operasional nyata, biasanya karena data berubah setelah PO dibuat atau karena dua hal terjadi bersamaan. Perilaku yang diharapkan ditetapkan di sini agar tidak diputuskan sendiri-sendiri saat implementasi.

IDCaseExpected behavior
EC-01PO Draf belum punya PICTombol Ajukan nonaktif untuk semua pengguna sampai PIC ditetapkan
EC-02Pengguna bukan PIC membuka POTombol aksi status tampil tetapi nonaktif
EC-03URL edit dibuka pada PO non-DrafTampil read-only dan diarahkan ke halaman detail
EC-04Toko aktif berstatus tidak aktifHalaman tambah/ubah menampilkan halaman toko tidak aktif; di daftar dan detail semua aksi ubah disembunyikan
EC-05Supplier tidak akan mengirim sisa barang (PO Diterima Sebagian)Belum ada aksi; PO tetap Diterima Sebagian karena Tutup hanya dari Diterima dan Batalkan hanya dari Diajukan
EC-06Barang diterima melebihi qty pesanDiizinkan lewat GR; baris ditandai over-received di modul Item Pembelian (toleransi diatur di PRD Goods Receipt)
EC-07Supplier diganti setelah kontak dipilihKontak dikosongkan dan harus dipilih ulang
EC-08Tanggal pesanan diubah menjadi setelah tanggal estimasiPemilih tanggal estimasi hanya membatasi pilihan baru; BE harus menolak data yang melanggar BR-07
EC-09Tipe pembayaran diganti dari Custom ke tipe lainTanggal jatuh tempo dihitung ulang otomatis dan field menjadi nonaktif
EC-10Pengguna tidak ditugaskan ke toko mana punHalaman PO menampilkan halaman toko belum ditetapkan
EC-11Produk yang sama dengan kemasan berbedaDiperbolehkan; tiap kemasan adalah baris terpisah

12. API Contract

Daftar endpoint per aksi. Detail request dan response ada di Postman (lihat metadata API).

ActionMethodEndpointRef
Daftar PO (filter, cari, paginasi)GET/api/purchase-orders/paginateUS-08
Daftar PO ringkas (cursor, untuk combobox)GET/api/purchase-orders/cursorBR-12
Daftar PO per toko (untuk GR / Bill)GET/api/stores/:id/purchase-orders/cursorBR-12
Detail POGET/api/purchase-orders/:idUS-02
Buat PO (header + baris)POST/api/purchase-ordersUS-01
Ubah header PO DrafPUT/api/purchase-orders/:idUS-02
Hapus PO DrafDELETE/api/purchase-orders/:idUS-09
Hapus PO Draf massalDELETE/api/purchase-orders/bulkUS-09
Daftar baris POGET/api/purchase-orders/:id/itemsUS-02
Detail baris POGET/api/purchase-orders/:id/items/:item_idUS-02
Tambah barisPOST/api/purchase-orders/:id/itemsUS-02
Ubah barisPUT/api/purchase-orders/:id/items/:item_idUS-02
Hapus barisDELETE/api/purchase-orders/:id/items/:item_idUS-02
Tetapkan PICPATCH/api/purchase-orders/:id/assignUS-03
AjukanPATCH/api/purchase-orders/:id/submitUS-04
BatalkanPATCH/api/purchase-orders/:id/cancelUS-05
TutupPATCH/api/purchase-orders/:id/closeUS-07
Log aktivitas semua POGET/api/purchase-orders/activity-logs/cursorUS-11
Log aktivitas satu POGET/api/purchase-orders/:id/activity-logs/cursorUS-11

Lookup yang dipakai form PO

ActionMethodEndpointRef
Alamat pengiriman tokoGET/api/stores/:id/addressesAC-01.2
Karyawan toko (PIC)GET/api/stores/:id/employees/cursorUS-03
Inventaris produk toko (cari nama / barcode)GET/api/stores/:id/product-inventories/cursorAC-01.6
SupplierGET/api/suppliers/cursorAC-01.3
Kontak supplierGET/api/suppliers/:id/contactsAC-01.3

13. Dependencies

PRD terkait

  • Goods Receipt — penerimaan barang dari PO, yang mengubah status PO (BR-10) dan toleransi over-receive (EC-06).
  • Bill — tagihan yang merujuk PO dan GR (BR-12).
  • Item Pembelian (Purchase Order Lines) — tampilan qty dipesan, diterima, dan sisa per baris PO (AC-06.3).

Master data

  • Toko — toko aktif, status aktif, alamat pengiriman, dan karyawan (PIC).
  • Supplier — data supplier dan kontaknya.
  • Produk & Inventaris Produk — kemasan/UoM, barcode, harga pokok, dan harga beli terakhir per toko.

Efek ke modul lain

  • PO tidak mengubah stok; stok bertambah saat GR diajukan.
  • PO yang Diajukan, Diterima Sebagian, atau Diterima muncul sebagai pilihan di form Goods Receipt dan Bill.
  • Setiap perubahan tercatat di log aktivitas (BR-13).
Last updated on