Instalasi & SetupInstalasi & Setup
Invoisan berjalan di PHP 8.2 + MySQL, dan tersedia dua jalur pemasangan: Docker Compose (paling cepat, satu perintah) atau shared hosting/cPanel (tanpa Docker). Keduanya memakai database yang sama, jadi kamu bisa pindah kapan saja.
PHP 8.2+ekstensi intl, mbstring, mysqli, gd
MySQL 8 / MariaDB 10.6+user khusus, bukan root
writable/ bisa ditulissession, cache, log, upload logo
Tidak ada halaman installer. Kredensial database ditulis di file .env (atau lewat environment Docker), lalu skema diimpor sekali dari database/schema.sql. Setelah itu akun admin pertama dibuat dengan seeder. Semua langkah di bawah sudah urut, tinggal ikuti.
PemakaianCara memakai setiap fitur
Urutannya mengikuti alur kerja harian: lihat dashboard, buat invoice, simpan client dan produk, atur template, lalu kirim ke client lewat PDF, WhatsApp, atau link publik.
Ringkasan kondisi tagihan: total outstanding, pendapatan bulan berjalan, yang lewat jatuh tempo, grafik enam bulan terakhir, dan distribusi status invoice.
- Kartu KPI menampilkan nominal dan jumlah invoice di belakangnya.
- Grafik batang membandingkan nilai lunas vs belum dibayar per bulan.
- Donut chart memecah draft, unpaid, paid, dan overdue.
- Tabel Recent Invoices di bawah untuk lompat cepat ke invoice terakhir.
Angka di dashboard dihitung dari status invoice, bukan dari input manual. Menandai invoice lunas langsung menggeser semua angka.
Dashboard desktop: KPI, grafik pendapatan, dan distribusi status.
Semua invoice dalam satu tabel: nomor, client, tanggal terbit, jatuh tempo, status, dan total. Ada pencarian, filter status, filter client, dan rentang tanggal.
- Cari berdasarkan nomor invoice atau nama client.
- Filter status: draft, unpaid, paid, cancelled — overdue ditandai otomatis dari tanggal.
- Aksi per baris: lihat, edit, duplikat, unduh PDF/JPEG, bagikan link publik.
- Nomor invoice mengikuti format INV-{YYYY}-{SEQ} dan berurutan otomatis.
Daftar invoice dengan filter status, client, dan rentang tanggal.
Membuat Invoice
/invoices/createForm dua kolom: data invoice di kiri, preview dokumen di kanan. Semua perubahan langsung terlihat di preview sebelum disimpan.
- Pilih client dari master data, atau isi manual untuk klien sekali pakai.
- Tambah item dari daftar produk, atur qty, harga, dan diskon per item.
- Diskon global dan PPN dihitung otomatis saat mengetik.
- Simpan sebagai draft dulu, lalu ubah status jadi unpaid saat siap dikirim.
Tombol duplikat di daftar invoice menyalin seluruh item dan client, jadi invoice bulanan cukup dibuat sekali.
Buat invoice: data di kiri, live preview dokumen di kanan.
Client & Produk
/clients • /productsDua master data yang mempercepat pembuatan invoice: client (nama, perusahaan, alamat, email, telepon, NPWP) dan produk/jasa (nama, harga, deskripsi).
- Sekali simpan, client dan produk bisa dipakai di semua invoice berikutnya.
- Data client otomatis mengisi blok "Ditagihkan kepada" saat membuat invoice.
- Produk menyimpan harga default supaya tidak salah ketik nominal.
Master client: alamat, email, telepon, dan NPWP tersimpan rapi.
Template & Branding
/templatesTiga template bawaan (Clean, Classic, Modern). Warna primer, font, logo, NPWP, dan catatan footer bisa diubah tanpa menyentuh kode.
- Ubah warna primer dan font, preview langsung ikut berubah.
- Tampilkan atau sembunyikan logo perusahaan dan NPWP.
- Tulis catatan footer untuk instruksi pembayaran atau syarat.
- Jadikan satu template sebagai default untuk invoice baru.
Warna primer template tidak harus sama dengan warna aplikasi. Invoice bisa tetap memakai warna brand kamu sendiri.
Template: warna, font, logo, dan NPWP dengan preview real-time.
Kirim Invoice
/invoices/{id}Satu invoice bisa sampai ke klien lewat tiga jalur: link publik, pesan WhatsApp, atau email dengan lampiran PDF. Plus ekspor PDF/JPEG dan cetak kalau klien minta file.
- Kirim lewat email — PDF invoice otomatis terlampir, klien tinggal buka.
- Kirim lewat WhatsApp dengan pesan siap kirim berisi nomor invoice, nominal, dan link publik.
- Bagikan link publik (token acak) supaya klien bisa membuka invoice tanpa akun.
- Ekspor PDF/JPEG atau cetak langsung dari halaman detail invoice.
- Status berubah jadi paid saat kamu tandai lunas, dan dashboard ikut ter-update.
Link publik bisa direset kapan saja lewat tombol regenerate token kalau link lama sudah tersebar.
Link publik: client membuka invoice tanpa login, lengkap dengan tombol unduh.
Dua role: admin (semua menu) dan staff (dashboard, invoice, client, produk). Cocok untuk tim kecil yang perlu input invoice tapi tidak boleh mengubah template atau setting.
- Tambah user baru dari menu Users, tentukan role-nya.
- Staff tidak melihat menu Templates, Users, dan Settings.
- Setiap invoice mencatat siapa pembuatnya.
Tampilan mobile: menu yang sama, disusun ulang untuk layar kecil.
PWA di HP
Add to Home ScreenInvoisan adalah PWA: bisa dipasang di home screen Android/iOS dan punya halaman offline sederhana. Cocok untuk membuat invoice terakhir dari HP.
- Buka aplikasi di browser HP, pilih Add to Home Screen.
- Ikon, splash, dan status bar mengikuti manifest aplikasi.
- Kalau koneksi putus, halaman offline muncul alih-alih error browser.
invoisan — dashboard


Data yang sama, layout menyesuaikan layar: desktop dan HP.