Skip to main content

Versi 1

FieldIsi
Dokumen IDVBS-TAX-003
DeskripsiPencatatan setoran pajak terpisah dari SPT: daftar, buat, ubah, finalisasi, dan unlock setoran per jenis pajak
Nomor Revisi1
Tanggal2026-10-04
KeteranganDokumentasi baseline dari dokumentasi fitur demo dan kode FE

1. Ringkasan​

a. In scope​

  • User melihat daftar setoran pajak yang tercatat sebagai invoice khusus setoran.
  • User memfilter daftar berdasarkan periode tanggal, status draft/final, dan jenis pajak, lalu mengekspor ke Excel.
  • User membuat setoran baru: memilih akun pembayaran, lalu menambah satu atau lebih baris tanggal bayar, jenis pajak, nominal, NTPN, dan kode billing.
  • User menyimpan setoran sebagai draft atau final.
  • User mengubah setoran draft, memfinalisasi, menghapus draft, membuka kembali final ke draft, dan memposting ulang.

b. Catatan​

c. Kesimpulan​

  • [FE] -
  • [BE] -

2. Functional Requirement​

KodeDeskripsi
FR-01Sistem menampilkan daftar setoran pajak dengan kolom tanggal, nomor invoice, jenis pajak, nominal, dan status draft/final
FR-02User dapat memfilter daftar berdasarkan periode, status invoice, dan jenis pajak
FR-03User dapat mengekspor daftar setoran sesuai filter ke Excel
FR-04User dapat membuat setoran pajak dengan akun pembayaran dan satu atau lebih baris jenis pajak
FR-05User dapat menyimpan setoran sebagai draft atau final dengan konfirmasi pada simpan final
FR-06User dapat mengubah setoran draft melalui endpoint setoran pajak
FR-07User dapat memfinalisasi, menghapus draft, unlock final, dan sync posting ulang sesuai hak akses

3. Use Case List​

KodeDeskripsi
UC-01Melihat daftar setoran pajak
UC-02Memfilter dan mengekspor daftar setoran pajak
UC-03Membuat setoran pajak
UC-04Mengubah setoran pajak draft
UC-05Memfinalisasi, unlock, hapus, atau posting ulang setoran

4. Use Case Scenario​

UC-01 : Melihat daftar setoran pajak​

AktorUser pajak / keuangan
DeskripsiUser melihat daftar setoran pajak brand aktif
PrekondisiUser sudah login dan memiliki akses menu Setoran Pajak
Alur utama1. User membuka menu Transaksi, Pajak, Setoran Pajak.
2. Sistem memuat daftar invoice setoran dengan infinite scroll.
3. Sistem menampilkan tanggal, nomor invoice, jenis pajak, nominal, dan status.
Alur negatif- Jika daftar kosong, muncul empty state.
- Jika gagal memuat, muncul notifikasi error.
Bisnis rule- Daftar difilter ke transaksi setoran pajak melalui lawan_transaksi_id khusus dan daftar jenis pajak PPh/PPN/denda.
- Tanpa hak lihat semua user, daftar dibatasi ke invoice buatan user sendiri.
PostkondisiDaftar setoran pajak tampil
TriggerUser membuka halaman Setoran Pajak
Kode FRFR-01

UC-02 : Memfilter dan mengekspor daftar setoran pajak​

AktorUser pajak / keuangan
DeskripsiUser mempersempit daftar setoran dan mengunduh Excel
PrekondisiUser berada di halaman daftar Setoran Pajak
Alur utama1. User membuka filter.
2. User memilih periode tanggal, status invoice, dan/atau jenis pajak, atau mencari nomor invoice.
3. Sistem memuat ulang daftar.
4. User menekan export.
5. Sistem mengunduh file Excel sesuai filter.
Alur negatif- Jika hasil kosong, daftar/export tidak berisi data.
Bisnis rule- Opsi jenis pajak filter: PPh 21, PPh 22, PPh 23, PPh Final, SPTNP, PPN, PPh 25/29, Denda Pajak.
- Status invoice memakai flag is_tercetak final/draft.
PostkondisiDaftar terfilter tampil atau Excel terunduh
TriggerUser mengubah filter atau menekan export
Kode FRFR-02
FR-03

UC-03 : Membuat setoran pajak​

AktorUser pajak / keuangan
DeskripsiUser mencatat satu atau lebih baris setoran pajak
PrekondisiUser memiliki hak dasar #setoran-pajak; master rekening pembayaran tersedia
Alur utama1. User menekan Buat Invoice.
2. User memilih akun pembayaran.
3. User menambah baris: tanggal bayar, jenis pajak, nominal, NTPN opsional, kode billing opsional, dan keterangan opsional.
4. User memilih simpan draft atau final.
5. Untuk final, sistem menampilkan konfirmasi bahwa data tidak dapat diubah kembali.
6. Sistem menyimpan dan menampilkan notifikasi berhasil.
Alur negatif- Jika form belum valid, muncul "Tolong lengkapi form dengan benar!".
- Jika akun pembayaran kosong, muncul "Akun Pembayaran harus di isi".
- Jika user membatalkan konfirmasi final, data tidak disimpan.
Bisnis rule- Setiap baris memakai rekening_pembayaran_id dari akun pembayaran terpilih.
- lawan_transaksi diisi nama jenis pajak; lawan_transaksi_id memakai UUID nol khusus setoran.
- Draft dan final sama-sama memanggil pembuatan bulk setoran; bedanya flag is_tercetak.
PostkondisiSatu atau lebih invoice setoran pajak tersimpan
TriggerUser menekan Buat Invoice
Kode FRFR-04
FR-05

UC-04 : Mengubah setoran pajak draft​

AktorUser pajak / keuangan
DeskripsiUser memperbaiki setoran yang masih draft
PrekondisiSetoran berstatus draft dan user memiliki hak dasar
Alur utama1. User memilih Edit.
2. Sistem memuat detail dengan penanda setoran pajak.
3. User mengubah akun pembayaran atau baris setoran.
4. User menyimpan draft atau final.
5. Sistem memperbarui data dan menampilkan notifikasi berhasil.
Alur negatif- Jika detail gagal dimuat, user dikembalikan ke daftar.
- Jika validasi gagal, simpan dibatalkan.
Bisnis rule- Update final/baris memakai endpoint khusus setoran pajak.
- Update status saja dapat memakai update invoice umum.
PostkondisiSetoran draft terbarui atau menjadi final
TriggerUser memilih Edit
Kode FRFR-06
FR-05

UC-05 : Memfinalisasi, unlock, hapus, atau posting ulang setoran​

AktorUser pajak / keuangan
DeskripsiUser mengelola status setoran dari daftar atau detail
PrekondisiSetoran tersedia; hak akses sesuai aksi
Alur utama1. User membuka menu aksi baris.
2. Untuk draft: user dapat finalisasi, edit, atau hapus.
3. Untuk final: user dengan hak draft dapat unlock ke draft; user dapat sync/posting ulang.
4. Sistem menjalankan aksi dan memperbarui daftar.
Alur negatif- Jika server menolak hapus/unlock/sync, muncul notifikasi error.
Bisnis rule- Finalisasi mengubah is_tercetak menjadi true.
- Unlock membutuhkan hak draft #setoran-pajak.
PostkondisiStatus setoran sesuai aksi
TriggerUser memilih aksi pada baris setoran
Kode FRFR-07

5. Data Flow Diagram​

DFD-01 — Alur data setoran pajak​

6. Sequence Diagram​

SD-01 — UC-01 : Melihat daftar setoran pajak​

SD-02 — UC-02 : Memfilter dan mengekspor daftar setoran pajak​

SD-03 — UC-03 : Membuat setoran pajak​

SD-04 — UC-04 : Mengubah setoran pajak draft​

SD-05 — UC-05 : Memfinalisasi, unlock, hapus, atau posting ulang setoran​

7. Table Schema​

8. API Schema​

EndpointStatusPerubahan
GET /invoice-dpexisting-
GET /invoice-dp/:idexisting-
POST /invoice-dp/bulk-setoran-pajakexisting-
PUT /invoice-dp/setoran-pajak/:idexisting-
PUT /invoice-dp/:idexisting-
PUT /invoice-dp/invoice-only/:idexisting-
PUT /invoice-dp/unlock/:idexisting-
DELETE /invoice-dp/:idexisting-
POST /invoice-dp/syncexisting-