ServisPro adalah aplikasi manajemen toko servis elektronik: HP, TV, kulkas, speaker, lampu, dan barang lain. Bisa dipakai satu toko maupun banyak cabang. Seluruh alur kerja toko servis tercatat, dari barang diterima sampai diserahkan kembali dengan garansi. Ada juga katalog promo publik dan program afiliasi berkomisi untuk mendatangkan pelanggan baru.
Dibangun dengan Laravel 13, Inertia.js 2, Vue 3 (TypeScript), dan Tailwind CSS sebagai satu aplikasi monolit yang mudah dipasang dan dikembangkan.
✨ Keunggulan
- Penerimaan barang servis yang lengkap
Tercatat kategori, merek, model, nomor seri/IMEI, kondisi fisik awal, dan kelengkapan yang dititipkan (charger, remote, dus). PIN/pola layar HP bisa dicatat; disimpan terenkripsi, hanya terlihat staf berwenang, dan tidak pernah dicetak.
- Garansi servis otomatis
Masa garansi diatur per kategori barang (mis. HP 7 hari, kulkas 30 hari). Tanggal akhir garansi tercatat saat barang diserahkan dan tercetak di invoice.
- Katalog promo publik
Halaman promo di alamat utama toko, tanpa login, dengan tombol chat WhatsApp per cabang dan pratinjau tautan saat dibagikan. Promo berpotongan bisa dipilih kasir di tagihan; potongannya dihitung server.
- Program afiliasi berkomisi
Mitra mendaftar sendiri, disetujui admin, lalu mendapat portal berisi kode referral, tautan, dan QR. Komisi = % biaya jasa dari setiap servis lunas pelanggan yang diajak (masa ikat 12 bulan, bisa diatur). Komisi tertahan selama garansi, disetujui admin, lalu dicairkan dan otomatis tercatat sebagai pengeluaran.
- Alur work order terkontrol
7 status dengan aturan transisi: diterima, pemeriksaan, estimasi, persetujuan pelanggan, pengerjaan, pembayaran, serah terima. Pekerjaan tambahan wajib disetujui pelanggan.
- Multi cabang dalam satu aplikasi
Work order, stok, tagihan, pengeluaran, dan teknisi per cabang; pelanggan, barang servis, katalog, dan afiliasi dipakai bersama. Transfer sparepart antar cabang dan nomor dokumen berkode cabang.
- Stok sparepart terhubung ke pekerjaan
Sparepart yang dipakai otomatis memotong stok, dengan ledger yang tidak dapat diubah dan HPP rata-rata tertimbang per cabang.
- Pendapatan sesuai uang yang diterima
Pembayaran bisa sebagian (tunai, transfer, QRIS, kartu). Refund dan pembatalan tagihan butuh izin khusus. Laporan dihitung dari pembayaran aktual.
- Hak akses per tindakan
Peran bawaan: Super Admin, Owner, Service Advisor, Teknisi, Gudang, dan Afiliasi. Akun afiliasi hanya bisa membuka portalnya, tidak pernah panel toko.
- Panduan bergambar di dalam aplikasi, termasuk promo dan afiliasi.
🚀 Fitur & Modul
| Modul | Isi |
|---|
| Dashboard | Ringkasan dengan perbandingan periode sebelumnya, grafik pendapatan & work order harian, komposisi pendapatan jasa vs sparepart, antrean, teknisi bertugas, stok minimum, jasa terlaris, performa per cabang. |
| Work Order | Penerimaan barang (sekaligus daftar pelanggan/barang baru), kelengkapan, PIN layar terenkripsi, checklist pemeriksaan per kategori dengan foto, estimasi jasa & sparepart, persetujuan pelanggan, penugasan beberapa teknisi, tanda terima barang servis (cetak/PDF). |
| Barang Servis | Kategori barang (garansi default, saran pemeriksaan), merek, model, nomor seri/IMEI, riwayat servis per barang. |
| Tagihan & Pembayaran | Tagihan dari item yang disetujui, promo, diskon berizin, pajak, pembayaran sebagian, refund, garansi s/d tanggal, cetak/PDF invoice. |
| Pemasaran | Katalog promo publik + pemakaian promo di tagihan. Afiliasi: pendaftaran, persetujuan, portal, komisi, persetujuan & pencairan komisi. |
| Inventaris | Stok dan harga modal per cabang, ledger mutasi, penerimaan barang, pengeluaran & pengembalian sparepart, penyesuaian stok beralasan, transfer antar cabang, stok minimum. |
| WhatsApp | Notifikasi otomatis (barang diterima, estimasi siap, mulai dikerjakan, menunggu sparepart, selesai, diserahkan), invoice PDF, kwitansi, kirim manual, template yang bisa diubah. |
| Laporan | Pendapatan, work order, jasa, teknisi, pemakaian & penjualan sparepart, stok, piutang, pengeluaran, barang servis. Ekspor CSV (Excel) dan PDF. |
| Sistem | Role & permission, pengguna, menu dinamis, pengaturan toko & program afiliasi, audit log, mode gelap. |
💬 Notifikasi WhatsApp (Baileys)
Pesan dikirim lewat layanan whatsapp-gateway/ (Node.js) yang ikut di source code, dijalankan dengan Docker atau PM2.
⚠️ Peringatan penting
Gateway memakai Baileys, pustaka tidak resmi yang meniru WhatsApp Web dan melanggar Ketentuan Layanan WhatsApp. Nomor pengirim bisa diblokir sementara atau permanen tanpa peringatan.
- Gunakan nomor khusus, bukan nomor utama toko.
- Jangan dipakai untuk promosi atau broadcast. Promo cukup lewat halaman katalog promo.
- Risiko pemakaian ditanggung pembeli.
Fitur ini opsional dan mati secara default. ServisPro tetap berjalan normal tanpa gateway.
💻 Kebutuhan Sistem
- PHP 8.4+ (ekstensi
bcmath, gd, mbstring, pdo_mysql, dll.)
- Composer 2.2+
- Node.js 20.19+ atau 22.12+ (build aset dan gateway WhatsApp)
- MySQL 8.0+ atau MariaDB 10.6+
- Nginx atau Apache, atau Docker (
Dockerfile dan docker-compose.prod.yml)
⚙️ Instalasi Singkat
composer install
npm install
cp .env.example .env
php artisan key:generate
php artisan migrate --seed
php artisan storage:link
php artisan app:demo-data # opsional: data contoh, 2 cabang, promo & afiliasi
composer dev
Panduan production (Nginx, Supervisor, cron, HTTPS, Docker) dan backup ada di folder docs/.
🔑 Akun Demo (lokal)
| Peran | Email | Password |
|---|
| Super Admin | superadmin@example.com | password |
| Owner | owner@example.com | password |
| Service Advisor | advisor@example.com | password |
| Teknisi | teknisi@example.com | password |
| Gudang | gudang@example.com | password |
| Afiliasi (data demo) | afiliasi@example.com | password |
Akun demo tidak dibuat bila APP_ENV=production.
🔐 Lisensi
Setelah pembelian, kode lisensi RL-XXXX-XXXX-XXXX-XXXX tersedia di halaman Unduhan akun RadhCloud dan di email pembelian. Kode dimasukkan sekali saat aplikasi pertama dibuka; internet hanya dibutuhkan saat aktivasi.
- Lisensi disimpan sebagai file, bukan di database.
migrate:fresh atau key:generate tidak menghapusnya.
- File lisensi bisa diunduh sebagai cadangan dan dipulihkan di server baru.
- Satu lisensi untuk satu instalasi (satu domain), berapa pun jumlah cabangnya.
✅ Kualitas Kode
- 262 tes otomatis (Pest): alur work order, garansi & PIN layar, stok, multi cabang, tagihan & promo, afiliasi & komisi, laporan, hak akses, lisensi, dan WhatsApp.
- Diuji di MySQL 8 dan SQLite.
- Uang memakai
DECIMAL dan dihitung dengan bcmath di server; perubahan bisnis berjalan di service layer dengan transaksi dan penguncian baris.