# 🚀 Agent/Reseller System - MikhMon

Sistem lengkap untuk manajemen agent/reseller voucher hotspot yang terintegrasi dengan MikhMon.

---

## 📋 Fitur Lengkap

### ✅ Untuk Admin (via MikhMon Sidebar)
- Kelola agent (CRUD lengkap)
- Set harga beli & jual per profile
- Topup saldo agent
- Monitor transaksi real-time
- Statistik lengkap
- Search & filter

### ✅ Untuk Agent (Panel Terpisah)
- Login dengan WhatsApp & password
- Dashboard dengan statistik
- Generate voucher otomatis
- Saldo terpotong otomatis
- Kirim voucher via WhatsApp
- Print voucher
- Mobile responsive

### ✅ WhatsApp Bot
- Cek saldo
- Generate voucher
- Lihat harga
- Request topup
- Riwayat transaksi

---

## 🚀 Instalasi Super Mudah

### Metode 1: Auto Installer (RECOMMENDED)

**1. Akses Installer:**
```
http://localhost/mikhmon/install_agent_system.php
```

**2. Ikuti 3 Langkah:**
- Step 1: Test koneksi database
- Step 2: Install database
- Step 3: Selesai!

**3. Done!** Database otomatis terbuat dengan semua table yang dibutuhkan.

---

### Metode 2: Manual Install

**1. Import SQL File:**
```bash
mysql -u root -p < mikhmon/database/agent_system.sql
```

**2. Edit Konfigurasi:**
Edit file `mikhmon/include/db_config.php`:
```php
define('DB_HOST', 'localhost');
define('DB_USER', 'root');
define('DB_PASS', '');
define('DB_NAME', 'mikhmon_agents');
```

**3. Done!**

---

## 📱 Cara Akses

### Admin Panel (Terintegrasi dengan MikhMon)

**1. Login ke MikhMon:**
```
http://localhost/mikhmon/admin.php?id=login
```

**2. Pilih Session**

**3. Klik Menu "Agent/Reseller" di Sidebar**

**4. Pilih submenu:**
- Daftar Agent
- Tambah Agent
- Kelola Harga
- Topup Saldo
- Transaksi Agent

---

### Agent Panel (Terpisah)

**1. Akses Agent Panel:**
```
http://localhost/mikhmon/agent/
```

**2. Login dengan:**
- Phone: 081234567890
- Password: agent123

**3. Mulai Generate Voucher!**

---

## 🗄️ Database Structure

### Tables (10 tables):
1. **agents** - Data agent/reseller
2. **agent_prices** - Harga khusus per agent
3. **agent_transactions** - Riwayat transaksi
4. **agent_vouchers** - Voucher yang di-generate
5. **agent_topup_requests** - Request topup
6. **agent_commissions** - Komisi agent
7. **agent_settings** - Pengaturan sistem
8. **agent_summary** (VIEW) - Summary statistik
9. **daily_agent_sales** (VIEW) - Laporan harian
10. **Stored Procedures** - Untuk transaksi

---

## 📖 Panduan Penggunaan

### Untuk Admin

#### 1. Tambah Agent Baru
1. Klik "Agent/Reseller" → "Tambah Agent"
2. Isi data agent (nama, WA, password)
3. Set level & komisi
4. Klik "Simpan"

#### 2. Set Harga untuk Agent
1. Klik "Kelola Harga"
2. Pilih agent & profile
3. Input harga beli & jual
4. Klik "Simpan"

#### 3. Topup Saldo Agent
1. Klik "Topup Saldo"
2. Pilih agent
3. Input jumlah topup
4. Klik "Proses Topup"

---

### Untuk Agent

#### 1. Generate Voucher
1. Login ke agent panel
2. Klik "Generate Voucher"
3. Pilih paket
4. Input jumlah
5. Opsional: Input nomor WA customer
6. Klik "Generate"
7. Saldo otomatis terpotong!

#### 2. Kirim via WhatsApp
- Centang "Kirim voucher via WhatsApp"
- Input nomor customer
- Voucher otomatis terkirim!

---

## 🔧 Konfigurasi

### Database Config
File: `mikhmon/include/db_config.php`
```php
define('DB_HOST', 'localhost');
define('DB_USER', 'root');
define('DB_PASS', '');
define('DB_NAME', 'mikhmon_agents');
```

### WhatsApp Config
File: `mikhmon/include/whatsapp_config.php`
```php
define('WHATSAPP_GATEWAY', 'fonnte');
define('FONNTE_TOKEN', 'YOUR_TOKEN');
define('WHATSAPP_ENABLED', true);
```

---

## 🎯 Flow Sistem

### Flow Generate Voucher:
```
1. Agent login
2. Pilih paket & jumlah
3. Sistem cek saldo
4. Jika cukup → Generate voucher di MikroTik
5. Saldo agent terpotong
6. Voucher tersimpan di database
7. Opsional: Kirim via WhatsApp
8. Done!
```

### Flow Topup Saldo:
```
1. Admin pilih agent
2. Input jumlah topup
3. Saldo agent bertambah
4. Transaksi tercatat
5. Done!
```

---

## 📊 Statistik & Reporting

### Admin Dashboard:
- Total agent
- Agent aktif
- Total saldo semua agent
- Agent baru bulan ini

### Agent Dashboard:
- Saldo tersedia
- Total voucher
- Voucher terjual
- Total komisi

---

## 🔐 Security

### Features:
- ✅ Password hashing (bcrypt)
- ✅ Session management
- ✅ SQL injection protection (PDO)
- ✅ XSS protection
- ✅ Input validation
- ✅ Auto logout (30 min)

---

## 🐛 Troubleshooting

### Database tidak terbuat?
**Solusi:**
1. Cek MySQL sudah running
2. Cek username & password benar
3. Cek user punya permission CREATE DATABASE
4. Jalankan manual: `mysql -u root -p < database/agent_system.sql`

### Agent tidak bisa login?
**Solusi:**
1. Cek database sudah terinstall
2. Cek nomor WA format benar (08xxx)
3. Cek password minimal 6 karakter
4. Cek status agent = active

### Voucher tidak ter-generate?
**Solusi:**
1. Cek saldo agent cukup
2. Cek koneksi ke MikroTik
3. Cek harga sudah diset untuk profile tersebut
4. Cek log error di browser console

### WhatsApp tidak terkirim?
**Solusi:**
1. Cek WhatsApp settings sudah dikonfigurasi
2. Cek token gateway valid
3. Cek saldo gateway cukup
4. Cek nomor WA format benar
5. Lihat log: `mikhmon/logs/whatsapp_log.txt`

---

## 📞 Support

### Dokumentasi:
- AGENT_SYSTEM_README.md (file ini)
- WHATSAPP_INTEGRATION.md
- WHATSAPP_QUICKSTART.md

### Links:
- MikhMon: https://mikhmon.com
- Forum: https://forum.mikhmon.com

---

## 🎉 Selesai!

Sistem agent/reseller sudah siap digunakan!

**Next Steps:**
1. ✅ Install database (via installer)
2. ✅ Tambah agent pertama
3. ✅ Set harga untuk agent
4. ✅ Topup saldo agent
5. ✅ Agent mulai generate voucher
6. ✅ Setup WhatsApp (opsional)

**Happy Selling! 🚀**

---

Version: 1.0.0  
Release: 2024  
License: GPL v2
