Sistem Manajemen Kost & Properti Berbasis Laravel
Gabung Saluran WhatsApp Papicode
Update source code terbaru langsung ke HP kamu, nggak pakai spam.
Deskripsi
Sistem manajemen kost/property management profesional berbasis Laravel, dirancang untuk pemilik atau pengelola yang menangani satu atau banyak properti kost sekaligus: mulai dari struktur properti berjenjang (Properti → Gedung → Lantai → Kamar), booking calon penghuni, proses check-in yang otomatis membentuk kontrak dan tagihan pertama, tagihan sewa bulanan berulang, verifikasi pembayaran, denda keterlambatan otomatis, hingga proses check-out dengan perhitungan refund deposit semuanya tercatat rapi dan bisa diaudit. Sistem ini cocok untuk bisnis kost skala kecil-menengah yang ingin meninggalkan pencatatan manual/spreadsheet dan beralih ke platform yang akurat secara keuangan, transparan bagi penghuni lewat portal khusus, serta bisa diakses oleh seluruh tim (owner, manager, finance, staff, teknisi) sesuai hak akses masing-masing.
Sistem
Setiap booking yang dikonfirmasi otomatis mengubah status kamar menjadi Reserved, lalu saat diproses menjadi Check-in, sistem otomatis membentuk Kontrak baru, mencatat Deposit, dan menerbitkan Invoice pertama secara bersamaan dalam satu transaksi kamar berpindah status menjadi Occupied. Tagihan sewa bulan berikutnya dibuat otomatis oleh scheduler berdasarkan tanggal billing di kontrak, tanpa risiko duplikasi untuk periode yang sama. Setiap pembayaran yang diajukan penghuni (lengkap dengan bukti transfer) berstatus Pending hingga diverifikasi oleh Finance/Admin; begitu diverifikasi, sistem otomatis memperbarui sisa tagihan dan status invoice (Unpaid → Partial → Paid). Invoice yang melewati jatuh tempo otomatis ditandai Overdue dan dikenakan denda sesuai konfigurasi (nominal tetap, per hari, atau persentase) denda hanya diterapkan sekali per invoice, tidak berulang. Saat penghuni check-out, sistem menghitung otomatis: piutang yang belum lunas, biaya kerusakan, dan denda tambahan dipotongkan dari deposit, sisanya menjadi nilai refund. Kontrak ditutup, kamar kembali berstatus Available, dan seluruh riwayat transaksi penghuni tetap tersimpan (tidak pernah dihapus). Penghuni memiliki portal terpisah untuk melihat kamar dan kontraknya sendiri, mengajukan pembayaran dengan upload bukti, mengajukan komplain dan permintaan maintenance, serta membaca pengumuman seluruhnya terisolasi, tidak bisa melihat data penghuni lain. Setiap aksi penting (verifikasi pembayaran, check-in, check-out, pembatalan invoice) tercatat di Audit Log lengkap dengan pelaku dan waktunya, serta memicu notifikasi in-app (dengan abstraksi siap pakai untuk WhatsApp).
Fitur
- Dashboard dengan KPI real-time: pendapatan, pengeluaran, profit bulan berjalan, dan occupancy rate
- Grafik pendapatan vs pengeluaran 6 bulan dan tren pendapatan 12 bulan
- Widget tagihan jatuh tempo, tagihan overdue, pembayaran terbaru, dan kontrak akan berakhir
- Manajemen Properti multi-lokasi dengan struktur Properti → Gedung → Lantai → Kamar
- Visualisasi grid status kamar (Available/Occupied/Reserved/Maintenance/Inactive) dengan kode warna
- Manajemen Tipe Kamar dan harga per bulan/minggu/hari beserta deposit
- Manajemen Fasilitas yang bisa dikaitkan ke properti, tipe kamar, atau kamar tertentu
- Manajemen Penghuni dengan profil lengkap, dokumen (KTP/KK/Perjanjian), dan riwayat aktivitas
- Booking calon penghuni dengan alur status Inquiry → Reserved → Confirmed → Checked-in
- Check-in otomatis membentuk Kontrak, Deposit, dan Invoice pertama dalam satu transaksi atomic
- Check-out otomatis menghitung piutang, denda, dan refund deposit
- Kontrak sewa dengan indikator "akan berakhir dalam X hari" dan cetak PDF siap tanda tangan
- Tagihan (invoice) manual maupun otomatis dengan item dinamis per jenis biaya
- Recurring billing otomatis via scheduler, anti-duplikasi per periode tagihan
- Verifikasi pembayaran dengan bukti transfer, mendukung pembayaran parsial
- Deposit tracking dengan status Held/Partially Refunded/Refunded/Forfeited
- Sistem denda keterlambatan otomatis (nominal tetap/per hari/persentase) dengan grace period
- Meter listrik & air per kamar dengan perhitungan pemakaian otomatis dan generate tagihan langsung
- Manajemen Pengeluaran per properti berdasarkan kategori
- Tiket Maintenance dan Komplain dengan thread komentar dan tracking status
- Manajemen Inventaris aset dengan riwayat perubahan kondisi/status
- Pengumuman dengan target audiens granular (semua/properti/gedung/lantai/kamar tertentu)
- 12 jenis Laporan (Occupancy, Revenue, Expense, P&L, Payment, Piutang, Tenant, Room, Maintenance, Complaint, Deposit, Meter Usage) dengan export CSV/Excel/PDF
- Portal Penghuni terpisah: kamar saya, kontrak saya, tagihan, ajukan pembayaran, maintenance, komplain, pengumuman
- Notifikasi in-app real-time dengan abstraksi siap pakai untuk integrasi WhatsApp
- Audit Log untuk seluruh transaksi penting sistem
- Role & Permission granular (Super Admin, Owner, Manager, Finance, Staff, Technician, Tenant)
- Pencarian global lintas modul (penghuni, kamar, invoice, booking, kontrak, maintenance, komplain)
- Dark mode dengan pilihan Light/Dark/System, tersimpan per pengguna
- UI modern, ringan, dan responsif menggunakan Blade + CSS custom (tanpa Tailwind/Bootstrap) + Vanilla JS + Chart.js
Panduan Instalasi
- Install dependency PHP dan JavaScript
composer install
npm install
- Salin file environment dan generate application key
cp .env.example .env
php artisan key:generate
Edit .env, isi DB_DATABASE, DB_USERNAME, DB_PASSWORD sesuai server MySQL Anda. 3. Buat database MySQL
CREATE DATABASE kostmanager CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
- Jalankan migrasi & seeder (membuat seluruh tabel + data demo: 2 properti, 4 gedung, 24 kamar, 3 tipe kamar, 12 fasilitas, 10 penghuni, booking, kontrak, tagihan, pembayaran, pengeluaran, maintenance, komplain, inventaris, dan pengumuman)
php artisan migrate --seed
- Buat symlink storage (untuk foto penghuni, bukti pembayaran, dokumen, dan lampiran)
php artisan storage:link
- Compile asset frontend
npm run build
- Jalankan server
php artisan serve
- (Opsional, untuk tagihan bulanan otomatis) jadwalkan scheduler di cron server
* * * * * cd /path-to-project && php artisan schedule:run >> /dev/null 2>&1
Akses aplikasi di http://localhost:8000
Login menggunakan salah satu akun demo berikut (password sama untuk semua akun):
Role semua passwordnya menggunakan (password) Super Admin : admin@kostmanager.test Owner : owner@kostmanager.test Finance : finance@kostmanager.test Staff : staff@kostmanager.test Tenant (Portal Penghuni) : tenant@kostmanager.test
Catatan: aplikasi ini memakai MySQL sebagai database, sehingga wajib menjalankan langkah migrasi & seeder di atas sebelum bisa digunakan. Untuk penggunaan produksi, disarankan mengganti seluruh password demo, menonaktifkan akun demo yang tidak diperlukan, dan mengaktifkan scheduler cron agar tagihan bulanan otomatis berjalan lewat menu Users setelah login pertama.
