Balaka Transaksi Berulang

Konsep Transaksi Berulang

Apa Itu Transaksi Berulang

Transaksi Berulang adalah fitur untuk mengotomatisasi pencatatan transaksi yang terjadi secara rutin dengan jumlah tetap. Contoh: sewa kantor bulanan, biaya langganan, pembayaran retainer, atau cicilan.

Sistem menjalankan scheduler harian pada pukul 05:00 yang memproses seluruh transaksi berulang yang sudah jatuh tempo, membuat transaksi baru secara otomatis, dan mencatat hasilnya.

Frekuensi yang Didukung

FrekuensiIndonesiaKeterangan
DAILYHarianSetiap hari
WEEKLYMingguanHari tertentu dalam minggu (Senin-Minggu)
MONTHLYBulananTanggal tertentu dalam bulan (1-28)
QUARTERLYTriwulananSetiap 3 bulan pada tanggal tertentu
YEARLYTahunanSetiap tahun pada tanggal tertentu

Status Transaksi Berulang

StatusIndonesiaWarna BadgeKeterangan
ACTIVEAktifHijauDijadwalkan dan dieksekusi otomatis
PAUSEDDijedaKuningDihentikan sementara, bisa dilanjutkan
COMPLETEDSelesaiAbu-abuTidak akan dieksekusi lagi

Membuat Transaksi Berulang

Halaman Daftar

Buka menu Akuntansi > Transaksi Berulang di sidebar, atau navigasi langsung ke /recurring.

Daftar Transaksi Berulang

Halaman menampilkan:

  • Kartu ringkasan: jumlah Aktif, Dijeda, Selesai
  • Filter status: filter berdasarkan status
  • Tabel: nama, template, frekuensi, jumlah, jadwal berikut, total eksekusi, status

Formulir Pembuatan

Klik tombol + Transaksi Berulang Baru untuk membuka formulir.

Field yang harus diisi:

FieldWajibKeterangan
NamaYaNama deskriptif (contoh: "Sewa Kantor Bulanan")
Template JurnalYaTemplate yang digunakan untuk membuat transaksi
Jumlah (Rp)YaNominal transaksi
DeskripsiYaDeskripsi yang akan muncul di transaksi
FrekuensiYaHarian/Mingguan/Bulanan/Triwulanan/Tahunan
TanggalKondisionalTanggal 1-28 untuk Bulanan/Triwulanan/Tahunan
HariKondisionalSenin-Minggu untuk Mingguan
Tanggal MulaiYaTanggal pertama eksekusi
Tanggal SelesaiTidakKosongkan jika tanpa batas waktu
Maks. EksekusiTidakJumlah maksimum eksekusi, kosongkan jika tanpa batas

Opsi tambahan:

  • Lewati Akhir Pekan: Jika jadwal jatuh pada Sabtu/Minggu, eksekusi dipindah ke Senin berikutnya
  • Posting Otomatis: Jika dicentang, transaksi langsung diposting. Jika tidak, disimpan sebagai Draft

Detail dan Pengelolaan

Halaman Detail

Klik nama transaksi berulang di daftar untuk melihat detail.

Detail Transaksi Berulang

Halaman menampilkan:

  • Informasi: jumlah, frekuensi, deskripsi, tanggal mulai/selesai, jadwal berikut, total eksekusi
  • Jadwal 5 Eksekusi Berikutnya: preview tanggal-tanggal eksekusi mendatang
  • Riwayat Eksekusi: log setiap eksekusi (Berhasil/Gagal/Dilewati) beserta link ke transaksi yang dibuat

Aksi yang Tersedia

AksiKondisiKeterangan
EditStatus bukan SelesaiMengubah konfigurasi
JedaStatus AktifMenghentikan sementara eksekusi
LanjutkanStatus DijedaMelanjutkan eksekusi, jadwal dihitung ulang dari hari ini
SelesaikanStatus bukan SelesaiMenghentikan permanen
HapusSemua statusSoft delete, transaksi yang sudah dibuat tidak terpengaruh

Tampilan Layar

Detail Transaksi Berulang
Detail Transaksi Berulang

Halaman detail transaksi berulang dengan jadwal dan riwayat eksekusi

Eksekusi Otomatis (Scheduler)

Jadwal Eksekusi

Scheduler berjalan setiap hari pukul 05:00 (sebelum amortisasi pukul 06:00). Proses:

  1. Query semua transaksi berulang dengan status ACTIVE dan nextRunDate <= hari ini
  2. Untuk setiap item:
    • Jika Lewati Akhir Pekan aktif dan tanggal jatuh pada Sabtu/Minggu: dipindah ke Senin
    • Buat transaksi baru dari template + jumlah + deskripsi + mapping akun
    • Jika Posting Otomatis aktif: posting transaksi
    • Catat log eksekusi (SUCCESS)
    • Update nextRunDate, lastRunDate, totalRuns
  3. Jika maxOccurrences tercapai atau nextRunDate melewati endDate: set status COMPLETED
  4. Jika terjadi error: catat log (FAILED) dengan pesan error, lanjut ke item berikutnya

Status Log Eksekusi

StatusIndonesiaKeterangan
SUCCESSBerhasilTransaksi berhasil dibuat
FAILEDGagalTerjadi error saat pembuatan transaksi
SKIPPEDDilewatiDilewati karena jatuh pada akhir pekan

Hak Akses

PermissionAdminOwnerAccountantStaffAuditor
RECURRING_VIEWYaYaYaYaYa
RECURRING_CREATEYaYaYa
RECURRING_EDITYaYaYa
RECURRING_DELETEYaYaYa