Skip to content

Padsu/colab

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

1 Commit
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

RTRWNet Billing System

Sistem billing lengkap untuk pengelolaan jaringan RT/RW Net dengan integrasi Mikrotik RouterOS.

πŸš€ Fitur Utama

  • Manajemen Pelanggan: Pendaftaran, monitoring, dan pengelolaan data pelanggan
  • Sistem Billing: Generate invoice otomatis, pencatatan pembayaran
  • Integrasi Mikrotik: Sinkronisasi PPPoE users, monitoring real-time
  • Hotspot Voucher: Generate dan manage voucher hotspot
  • Laporan Keuangan: Dashboard analitik dan laporan lengkap
  • Multi-user: Level admin dan operator dengan permission berbeda

πŸ“‹ Persyaratan Sistem

  • PHP: 8.0 atau lebih tinggi
  • MySQL: 8.0 atau lebih tinggi
  • Web Server: Apache/Nginx
  • Extension PHP: mysqli, curl, json, gd
  • Mikrotik RouterOS: v6.x atau v7.x (opsional)

Extension PHP yang Diperlukan

php-mysql
php-curl
php-json
php-gd
php-mbstring

πŸ”§ Instalasi

Instalasi Otomatis (Recommended)

  1. Upload semua file ke web server
  2. Akses http://yourdomain.com/install.php
  3. Ikuti wizard instalasi:
    • Konfigurasi database
    • Setup Mikrotik (opsional)
    • Buat akun administrator
    • Konfirmasi instalasi

Instalasi Manual

  1. Persiapan Database

    CREATE DATABASE billingrtrwnet;
  2. Import Database

    mysql -u username -p billingrtrwnet < database.sql
  3. Konfigurasi Database

    Buat file config/config_database.php:

    <?php
    $db_host = 'localhost';
    $db_user = 'username';
    $db_pass = 'password';
    $db_name = 'billingrtrwnet';
    $db_port = 3306;
    
    $mysqli = new mysqli($db_host, $db_user, $db_pass, $db_name, $db_port);
    $mysqli->set_charset('utf8mb4');
    
    if ($mysqli->connect_error) {
        die('Database connection failed: ' . $mysqli->connect_error);
    }
    ?>
  4. Konfigurasi Mikrotik

    Buat file config/config_mikrotik.php:

    <?php
    $mikrotik_ip = '192.168.1.1';
    $mikrotik_user = 'admin';
    $mikrotik_pass = 'password';
    $mikrotik_port = 8728;
    
    require_once __DIR__ . '/routeros_api.php';
    // ... (lihat contoh lengkap di installer)
    ?>
  5. Set Permission

    chmod 755 assets/images/
    chmod 755 uploads/
    chmod 755 logs/
    chmod 755 temp/

πŸ” Keamanan

Setelah Instalasi

  1. Hapus file installer (untuk keamanan):

    rm install.php install_process.php
  2. Upload file .htaccess (sudah disediakan)

  3. Ganti password default:

    • Login dengan akun admin
    • Ganti password di menu Users
  4. Backup database secara berkala

Pengaturan .htaccess

File .htaccess sudah dikonfigurasi untuk:

  • Blokir akses ke file konfigurasi
  • Blokir akses ke direktori sensitif
  • Set security headers
  • Kompres file untuk performa
  • Caching static files

🎯 Penggunaan

Login Pertama

  • Username: admin (sesuai yang dibuat saat instalasi)
  • Password: (sesuai yang dibuat saat instalasi)

Konfigurasi Awal

  1. Pengaturan Perusahaan:

    • Menu: Settings β†’ Company Settings
    • Isi data perusahaan lengkap
    • Upload logo perusahaan
  2. Konfigurasi Mikrotik:

    • Menu: Settings β†’ Mikrotik Settings
    • Test koneksi ke router
    • Sinkronisasi profiles
  3. Setup Paket Internet:

    • Menu: Packages β†’ Internet Packages
    • Buat paket sesuai offering
    • Sinkronisasi dengan Mikrotik

Workflow Operasional

  1. Tambah Pelanggan Baru:

    • Customer β†’ Add Customer
    • Pilih paket internet
    • Generate PPPoE credentials
    • Set tanggal expired
  2. Generate Invoice:

    • Billing β†’ Generate Invoice
    • Atau otomatis via cron job
  3. Record Pembayaran:

    • Billing β†’ Payment Record
    • Input pembayaran pelanggan
  4. Monitor Koneksi:

    • Monitoring β†’ Active Connections
    • Lihat usage real-time

πŸ”„ Cron Jobs (Optional)

πŸ“Š Struktur Database

Tabel Utama:

  • data_pelanggan: Data pelanggan dan konfigurasi PPPoE
  • paket_internet: Paket layanan internet
  • tagihan: Invoice/tagihan pelanggan
  • pembayaran: Record pembayaran
  • hotspot_users: User voucher hotspot
  • monitoring_pppoe: Data monitoring koneksi

Views:

  • v_dashboard_summary: Summary untuk dashboard
  • v_laporan_tagihan: Report tagihan
  • v_laporan_pembayaran: Report pembayaran
  • v_monitoring_aktif: Monitoring users aktif

πŸ”§ Troubleshooting

Database Connection Error

Error: Database connection failed

Solusi:

  • Cek kredensial database di config/config_database.php
  • Pastikan MySQL service running
  • Cek permission user database

Mikrotik Connection Failed

Error: Gagal terhubung ke Mikrotik

Solusi:

  • Cek IP, username, password Mikrotik
  • Pastikan API service enabled di Mikrotik
  • Cek firewall rules

File Permission Error

Error: Unable to write file

Solusi:

sudo chown -R www-data:www-data /path/to/project/
sudo chmod -R 755 /path/to/project/
sudo chmod -R 777 /path/to/project/assets/images/
sudo chmod -R 777 /path/to/project/uploads/

Session Issues

Error: Session tidak bisa dibuat

Solusi:

  • Cek permission direktori session PHP
  • Restart web server
  • Cek setting session.save_path di php.ini

πŸ“ API Integration

Mikrotik API Commands

// Get PPPoE users
$users = $api->comm('/ppp/secret/print');

// Add new PPPoE user
$api->comm('/ppp/secret/add', [
    'name' => 'username',
    'password' => 'password',
    'profile' => 'profile_name'
]);

// Monitor active sessions
$active = $api->comm('/ppp/active/print');

πŸ†˜ Support

Log Files

  • logs/error.log: Error sistem
  • logs/mikrotik.log: Log koneksi Mikrotik
  • logs/payment.log: Log transaksi

Debug Mode

Aktifkan debug mode di config/config_database.php:

ini_set('display_errors', 1);
error_reporting(E_ALL);

Contact Support

  • Email: support@rtrwnet.id
  • Documentation: [Link to detailed docs]
  • Issue Tracker: [Link to issue tracker]

πŸ“„ License

MIT License - silakan gunakan untuk tujuan komersial dan non-komersial.

πŸ”„ Update Log

v1.0.0

  • Initial release
  • Basic billing system
  • Mikrotik integration
  • Hotspot voucher management
  • Financial reporting

Developed by Donie Thambas, AnuNet Development Team

Sistem ini bersifat Open Source serta dikembangkan khusus untuk kebutuhan billing RT/RW Net di Indonesia dengan fitur-fitur yang disesuaikan dengan workflow operasional lokal dan akan dikembangkan lagi ke depan nya untuk penambahan fitur-fitur lain

About

Mk2

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors