Initial commit: API Wipay dengan fix CORS untuk GET request
This commit is contained in:
672
ALL_FEATURES_COMPARISON.md
Normal file
672
ALL_FEATURES_COMPARISON.md
Normal file
@@ -0,0 +1,672 @@
|
||||
# Perbandingan Lengkap Semua Fitur: timo.wipay.id vs timo.wipay.id_api
|
||||
|
||||
## ✅ Status: Semua Fitur Sudah Sesuai
|
||||
|
||||
---
|
||||
|
||||
## 1. User Management (Manajemen Pengguna) ✅
|
||||
|
||||
### 1.1 Registrasi User (`/timo/daftar`) ✅
|
||||
|
||||
**Backend Lama:**
|
||||
|
||||
- Input: `nama`, `username`, `email`, `no_hp`, `password`
|
||||
- Validasi: username & email unik
|
||||
- Password: MD5 hash
|
||||
- Default `biaya_admin`: 2500 (dari config.php: default_biaya_admin)
|
||||
- Response: status 200 jika berhasil
|
||||
|
||||
**Backend Baru:**
|
||||
|
||||
- ✅ Input sama dengan backend lama
|
||||
- ✅ Validasi username & email unik
|
||||
- ✅ Password: MD5 hash
|
||||
- ✅ Default `biaya_admin`: 2500 ✅ (sudah diperbaiki)
|
||||
- ✅ Response format sama
|
||||
|
||||
### 1.2 Login (`/timo/login`) ✅
|
||||
|
||||
**Backend Lama:**
|
||||
|
||||
- Input: `username`, `password`, `fcm_token` (opsional)
|
||||
- Validasi: MD5 password
|
||||
- Update FCM token jika ada
|
||||
- Response: `user` object + `data_sl` array
|
||||
|
||||
**Backend Baru:**
|
||||
|
||||
- ✅ Input sama dengan backend lama
|
||||
- ✅ Validasi MD5 password
|
||||
- ✅ Update FCM token jika ada
|
||||
- ✅ Response format sama: `user` + `data_sl`
|
||||
|
||||
### 1.3 Login Token (`/timo/login_token`) ✅
|
||||
|
||||
**Backend Lama:**
|
||||
|
||||
- Input: `username`, `password` (sudah di-hash), `fcm_token`
|
||||
- Validasi: password langsung compare (tidak di-hash lagi)
|
||||
- Response: `user` + `data_sl`
|
||||
|
||||
**Backend Baru:**
|
||||
|
||||
- ✅ Input sama dengan backend lama
|
||||
- ✅ Validasi password langsung compare
|
||||
- ✅ Response format sama
|
||||
|
||||
### 1.4 Update Akun (`/timo/update_akun`) ✅
|
||||
|
||||
**Backend Lama:**
|
||||
|
||||
- Update: `nama_lengkap`, `email`, `no_hp`
|
||||
- Validasi token
|
||||
- Response: data user terbaru
|
||||
|
||||
**Backend Baru:**
|
||||
|
||||
- ✅ Update fields sama
|
||||
- ✅ Validasi token
|
||||
- ✅ Response format sama
|
||||
|
||||
### 1.5 Update Password (`/timo/update_password`) ✅
|
||||
|
||||
**Backend Lama:**
|
||||
|
||||
- Validasi password lama (MD5)
|
||||
- Update password baru (MD5)
|
||||
- Response: status sukses/gagal
|
||||
|
||||
**Backend Baru:**
|
||||
|
||||
- ✅ Validasi MD5 password lama
|
||||
- ✅ Update MD5 password baru
|
||||
- ✅ Response format sama
|
||||
|
||||
---
|
||||
|
||||
## 2. Service Line (SL) Management ✅
|
||||
|
||||
### 2.1 Cek SL (`/timo/cek_sl`) ✅
|
||||
|
||||
**Backend Lama:**
|
||||
|
||||
- Input: `token`, `no_sl`
|
||||
- Validasi: SL tidak boleh sudah terdaftar oleh user lain (status 300)
|
||||
- Cek ke API TIMO: `enquiry-dil/{no_sl}`
|
||||
- Response: data pelanggan dari TIMO API
|
||||
|
||||
**Backend Baru:**
|
||||
|
||||
- ✅ Input sama
|
||||
- ✅ Validasi status 300 jika sudah terdaftar
|
||||
- ✅ Cek ke API TIMO sama
|
||||
- ✅ Response format sama
|
||||
|
||||
### 2.2 Confirm SL (`/timo/confirm_sl`) ✅
|
||||
|
||||
**Backend Lama:**
|
||||
|
||||
- Input: `token`, `no_sl`
|
||||
- Cek apakah sudah terdaftar (status 300 jika ya)
|
||||
- Cek ke API TIMO: `enquiry-dil/{no_sl}`
|
||||
- Simpan ke `daftar_sl` dengan mapping:
|
||||
- `pel_nama` → `nama`
|
||||
- `pel_alamat` → `alamat`
|
||||
- `dkd_kd` → `cabang`
|
||||
- `rek_gol` → `golongan`
|
||||
- Response: data SL yang baru terdaftar
|
||||
|
||||
**Backend Baru:**
|
||||
|
||||
- ✅ Input sama
|
||||
- ✅ Validasi status 300
|
||||
- ✅ Cek ke API TIMO sama
|
||||
- ✅ Mapping field sama
|
||||
- ✅ Response format sama
|
||||
|
||||
### 2.3 Hapus SL (`/timo/hapus_sl`) ✅
|
||||
|
||||
**Backend Lama:**
|
||||
|
||||
- Input: `token`, `no_sl`
|
||||
- Validasi: SL harus terdaftar di akun user ini
|
||||
- Delete dari `daftar_sl`
|
||||
- Response: status sukses
|
||||
|
||||
**Backend Baru:**
|
||||
|
||||
- ✅ Input sama
|
||||
- ✅ Validasi sama
|
||||
- ✅ Delete dari database
|
||||
- ✅ Response format sama
|
||||
|
||||
---
|
||||
|
||||
## 3. Tagihan Management ✅
|
||||
|
||||
### 3.1 History Tagihan (`/timo/history/{sl}/{periode}`) ✅
|
||||
|
||||
**Backend Lama:**
|
||||
|
||||
- Input: `sl`, `periode` (dari URL path)
|
||||
- Call TIMO API: `enquiry-his/{sl}/{periode}`
|
||||
- Response: data history tagihan
|
||||
|
||||
**Backend Baru:**
|
||||
|
||||
- ✅ Input dari URL path sama
|
||||
- ✅ Call TIMO API sama
|
||||
- ✅ Response format sama
|
||||
|
||||
### 3.2 Tagihan Saat Ini (`/timo/tagihan/{sl}`) ✅
|
||||
|
||||
**Backend Lama:**
|
||||
|
||||
- Input: `sl` (dari URL path)
|
||||
- Call TIMO API: `enquiry/{sl}`
|
||||
- Response: data tagihan aktif
|
||||
|
||||
**Backend Baru:**
|
||||
|
||||
- ✅ Input dari URL path sama
|
||||
- ✅ Call TIMO API sama
|
||||
- ✅ Response format sama
|
||||
|
||||
---
|
||||
|
||||
## 4. Payment Flow (Alur Pembayaran) ✅
|
||||
|
||||
### 4.1 Request Pembayaran (`/timo/request_pembayaran`) ✅
|
||||
|
||||
**Backend Lama:**
|
||||
|
||||
- Input: `token`, `no_sl`, `nama_bank`, `no_rek`
|
||||
- Cek pembayaran aktif (`DIBUAT` & belum expired)
|
||||
- Jika expired → update status `EXPIRED`
|
||||
- Buat pembayaran baru:
|
||||
- Call TIMO API: `enquiry/{no_sl}`
|
||||
- Hitung total + biaya admin
|
||||
- Generate kode unik
|
||||
- Expired: +1 hari
|
||||
- Response: data pembayaran
|
||||
|
||||
**Backend Baru:**
|
||||
|
||||
- ✅ Input sama + `payment_method` (transfer/qris)
|
||||
- ✅ Cek pembayaran aktif & expired sama
|
||||
- ✅ Buat pembayaran baru sama
|
||||
- ✅ **Fitur Baru:** Support QRIS (< 70rb)
|
||||
- ✅ Response format sama
|
||||
|
||||
### 4.2 Cek Pembayaran (`/timo/cek_pembayaran`) ✅
|
||||
|
||||
**Backend Lama:**
|
||||
|
||||
- Input: `token`, `no_sl`
|
||||
- Cari pembayaran: `DIBUAT` atau `MENUNGGU VERIFIKASI`
|
||||
- Response: data pembayaran
|
||||
|
||||
**Backend Baru:**
|
||||
|
||||
- ✅ Input sama
|
||||
- ✅ Cari status sama
|
||||
- ✅ Response format sama
|
||||
|
||||
### 4.3 Cek Transfer (`/timo/cek_transfer`) ✅
|
||||
|
||||
**Backend Lama:**
|
||||
|
||||
- Input: `token`, `no_sl`
|
||||
- Cari pembayaran: `MENUNGGU VERIFIKASI`
|
||||
- Update: `tanggal_cek_bayar`, `banyak_cek` (increment)
|
||||
- Response: data pembayaran
|
||||
|
||||
**Backend Baru:**
|
||||
|
||||
- ✅ Input sama
|
||||
- ✅ Cari status sama
|
||||
- ✅ Update fields sama
|
||||
- ✅ Response format sama
|
||||
|
||||
### 4.4 Upload Bukti Transfer (`/timo/upload_bukti_transfer`) ✅
|
||||
|
||||
**Backend Lama:**
|
||||
|
||||
- Input: `token`, `no_sl`, `pembayaran` (no_trx), `photo` (base64)
|
||||
- Upload foto
|
||||
- Update `bukti_transfer` & status `MENUNGGU VERIFIKASI`
|
||||
- Kirim Telegram ke admin
|
||||
- Response: status sukses
|
||||
|
||||
**Backend Baru:**
|
||||
|
||||
- ✅ Input sama
|
||||
- ✅ Upload foto sama
|
||||
- ✅ Update status sama
|
||||
- ✅ Kirim Telegram ke admin ✅
|
||||
- ✅ Response format sama
|
||||
|
||||
### 4.5 Batal Pembayaran (`/timo/batal_pembayaran`) ✅
|
||||
|
||||
**Backend Lama:**
|
||||
|
||||
- Input: `token`, `no_rek` (no_trx)
|
||||
- Cari pembayaran: `DIBUAT`
|
||||
- Update status: `DIBATALKAN`
|
||||
- Response: status 200 (pesan tetap default)
|
||||
|
||||
**Backend Baru:**
|
||||
|
||||
- ✅ Input sama
|
||||
- ✅ Cari status sama
|
||||
- ✅ Update status sama
|
||||
- ✅ Response format sama (pesan tetap default)
|
||||
|
||||
### 4.6 Confirm Pembayaran (`/timo/confirm_pembayaran`) ✅
|
||||
|
||||
**Backend Lama:**
|
||||
|
||||
- Input: `token`, `no_rek` (no_trx)
|
||||
- Cari pembayaran: `MENUNGGU VERIFIKASI`
|
||||
- Update status: `DIBAYAR`
|
||||
- Response: status 200 (pesan tetap default)
|
||||
|
||||
**Backend Baru:**
|
||||
|
||||
- ✅ Input sama
|
||||
- ✅ Cari status sama
|
||||
- ✅ Update status sama
|
||||
- ✅ Response format sama
|
||||
|
||||
### 4.7 History Bayar (`/timo/history_bayar`) ✅
|
||||
|
||||
**Backend Lama:**
|
||||
|
||||
- Input: `token`
|
||||
- Ambil semua pembayaran: `DIBAYAR`
|
||||
- Response: array history pembayaran
|
||||
|
||||
**Backend Baru:**
|
||||
|
||||
- ✅ Input sama
|
||||
- ✅ Filter status sama
|
||||
- ✅ Response format sama
|
||||
|
||||
### 4.8 Cek Status QRIS (`/timo/cek_status_qris`) ✅ **FITUR BARU**
|
||||
|
||||
**Backend Baru:**
|
||||
|
||||
- Input: `token`, `no_sl`
|
||||
- Cek status QRIS via API (max 3 attempts, 15s interval)
|
||||
- Jika paid → auto approve → kirim WhatsApp
|
||||
- Jika unpaid (setelah 3x) → show upload proof form
|
||||
- Response: status pembayaran
|
||||
|
||||
---
|
||||
|
||||
## 5. Upload Features ✅
|
||||
|
||||
### 5.1 Upload Catat Meter (`/timo/upload_catat_meter`) ✅
|
||||
|
||||
**Backend Lama:**
|
||||
|
||||
- Input: `token`, `no_sl`, `angka`, `photo` (base64)
|
||||
- Validasi: user baru → cek no_sl tidak digunakan user lain
|
||||
- Validasi: user lama → cek no_sl sesuai dengan data user
|
||||
- Upload foto
|
||||
- Simpan ke `catat_meter`
|
||||
- Kirim ke external API: `upload-catat-meter/{no_sl}`
|
||||
- Response: status sukses
|
||||
|
||||
**Backend Baru:**
|
||||
|
||||
- ✅ Input sama
|
||||
- ✅ Validasi sama (user baru/lama)
|
||||
- ✅ Upload foto sama
|
||||
- ✅ Simpan ke database sama
|
||||
- ✅ Kirim ke external API sama (payload: filename, bukan URL)
|
||||
- ✅ Response format sama
|
||||
|
||||
### 5.2 Upload Pasang Baru (`/timo/upload_pasang_baru`) ✅
|
||||
|
||||
**Backend Lama:**
|
||||
|
||||
- Input: `token`, `no_sl`, `nama`, `email`, `telepon`, `nik`, `alamat`, `photo`
|
||||
- Upload foto
|
||||
- Simpan ke `pasang_baru`
|
||||
- Kirim ke external API: `push-registrasi` (payload dalam `data` key)
|
||||
- Jika berhasil, dapat `reg_id` (no SL baru)
|
||||
- Auto insert ke `daftar_sl` jika dapat no SL
|
||||
- Response: status sukses
|
||||
|
||||
**Backend Baru:**
|
||||
|
||||
- ✅ Input sama
|
||||
- ✅ Upload foto sama
|
||||
- ✅ Simpan ke database sama
|
||||
- ✅ Kirim ke external API sama (payload dalam `data` key)
|
||||
- ✅ Auto insert ke `daftar_sl` jika dapat no SL
|
||||
- ✅ Response format sama
|
||||
|
||||
### 5.3 Upload Gangguan (`/timo/upload_gangguan`) ✅
|
||||
|
||||
**Backend Lama:**
|
||||
|
||||
- Input: `token`, `no_sl`, `gangguan` (id jenis), `feedback`, `lokasi`, `photo` (opsional)
|
||||
- Validasi: jenis gangguan wajib foto jika `harus_ada_foto = 'YA'`
|
||||
- Insert ke `gangguan` dengan status `DILAPORKAN`
|
||||
- Upload foto jika diperlukan
|
||||
- Kirim ke external API: `pengaduan/{no_sl}`
|
||||
- Kirim Telegram ke admin gangguan
|
||||
- Response: status sukses
|
||||
|
||||
**Backend Baru:**
|
||||
|
||||
- ✅ Input sama
|
||||
- ✅ Validasi wajib foto sama
|
||||
- ✅ Insert status `DILAPORKAN` sama
|
||||
- ✅ Upload foto sama
|
||||
- ✅ Kirim ke external API sama
|
||||
- ✅ Kirim Telegram ke admin gangguan ✅
|
||||
- ✅ Response format sama
|
||||
|
||||
### 5.4 Upload Baca Mandiri (`/timo/upload_baca_mandiri`) ✅
|
||||
|
||||
**Backend Lama:**
|
||||
|
||||
- Input: `token`, `wrute_id`, `stand_baca`, `abnorm_wm`, `abnorm_env`, `note`, `lonkor`, `latkor`
|
||||
- Validasi koordinat (GPS > Geocoding > Default)
|
||||
- Kirim ke external API: `upload-cater/{wrute_id}` (form-urlencoded)
|
||||
- Simpan ke `baca_mandiri_log`
|
||||
- Response: status sukses
|
||||
|
||||
**Backend Baru:**
|
||||
|
||||
- ✅ Input sama
|
||||
- ✅ Validasi koordinat sama (GPS > Geocoding > Default)
|
||||
- ✅ Kirim ke external API sama (form-urlencoded)
|
||||
- ✅ Simpan ke database sama
|
||||
- ✅ Response format sama
|
||||
|
||||
### 5.5 Upload Bukti Transfer (`/timo/upload_bukti_transfer`) ✅
|
||||
|
||||
**Backend Lama:**
|
||||
|
||||
- Input: `token`, `no_sl`, `pembayaran` (no_trx), `photo` (base64)
|
||||
- Upload foto
|
||||
- Update `bukti_transfer` & status `MENUNGGU VERIFIKASI`
|
||||
- Response: status sukses
|
||||
|
||||
**Backend Baru:**
|
||||
|
||||
- ✅ Input sama
|
||||
- ✅ Upload foto sama
|
||||
- ✅ Update status sama
|
||||
- ✅ Response format sama
|
||||
|
||||
### 5.6 Upload PP (`/timo/upload_pp`) ✅
|
||||
|
||||
**Backend Lama:**
|
||||
|
||||
- Input: `token`, `photo` (base64)
|
||||
- Upload foto profil
|
||||
- Update `photo` di tabel `pengguna_timo`
|
||||
- Response: status sukses
|
||||
|
||||
**Backend Baru:**
|
||||
|
||||
- ✅ Input sama
|
||||
- ✅ Upload foto sama
|
||||
- ✅ Update database sama
|
||||
- ✅ Response format sama
|
||||
|
||||
### 5.7 Hapus PP (`/timo/hapus_pp`) ✅
|
||||
|
||||
**Backend Lama:**
|
||||
|
||||
- Input: `token`
|
||||
- Hapus foto profil
|
||||
- Update `photo` = NULL
|
||||
- Response: status sukses
|
||||
|
||||
**Backend Baru:**
|
||||
|
||||
- ✅ Input sama
|
||||
- ✅ Hapus foto sama
|
||||
- ✅ Update database sama
|
||||
- ✅ Response format sama
|
||||
|
||||
---
|
||||
|
||||
## 6. Other Features ✅
|
||||
|
||||
### 6.1 Promo (`/timo/promo`) ✅
|
||||
|
||||
**Backend Lama:**
|
||||
|
||||
- Response: data promo aktif
|
||||
|
||||
**Backend Baru:**
|
||||
|
||||
- ✅ Response format sama
|
||||
|
||||
### 6.2 Riwayat Pasang (`/timo/riwayat_pasang`) ✅
|
||||
|
||||
**Backend Lama:**
|
||||
|
||||
- Input: `token`
|
||||
- Ambil semua `pasang_baru` user
|
||||
- Response: array riwayat pasang baru
|
||||
|
||||
**Backend Baru:**
|
||||
|
||||
- ✅ Input sama
|
||||
- ✅ Filter by token sama
|
||||
- ✅ Response format sama
|
||||
|
||||
### 6.3 Jadwal Catat Meter (`/timo/jadwal_catat_meter`) ✅
|
||||
|
||||
**Backend Lama:**
|
||||
|
||||
- Input: `token`
|
||||
- Ambil jadwal catat meter user
|
||||
- Response: array jadwal
|
||||
|
||||
**Backend Baru:**
|
||||
|
||||
- ✅ Input sama
|
||||
- ✅ Filter by token sama
|
||||
- ✅ Response format sama
|
||||
|
||||
### 6.4 Request Order Baca Mandiri (`/timo/request_order_baca_mandiri`) ✅
|
||||
|
||||
**Backend Lama:**
|
||||
|
||||
- Input: `token`, `no_sl`
|
||||
- Kirim ke external API: `order-cater/{no_sl}` (form-urlencoded)
|
||||
- Response: status sukses
|
||||
|
||||
**Backend Baru:**
|
||||
|
||||
- ✅ Input sama
|
||||
- ✅ Kirim ke external API sama (form-urlencoded)
|
||||
- ✅ Response format sama
|
||||
|
||||
### 6.5 Reset Password (`/timo/buat_kode`, `/timo/cek_kode`, `/timo/reset_kode`) ✅
|
||||
|
||||
**Backend Lama:**
|
||||
|
||||
- `buat_kode`: Generate kode unik untuk reset password
|
||||
- `cek_kode`: Validasi kode unik
|
||||
- `reset_kode`: Update password dengan kode unik
|
||||
|
||||
**Backend Baru:**
|
||||
|
||||
- ✅ Flow sama dengan backend lama
|
||||
- ✅ Response format sama
|
||||
|
||||
---
|
||||
|
||||
## 7. Fast WIPAY API (External) ✅
|
||||
|
||||
### 7.1 Check Bill (`/fast/check_bill`) ✅
|
||||
|
||||
**Backend Lama:**
|
||||
|
||||
- Auth: API Key (X-Client-ID, X-Client-Secret)
|
||||
- Input: `no_sl`
|
||||
- Get admin user → timo user
|
||||
- Call TIMO API: `enquiry/{no_sl}`
|
||||
- Response: data tagihan
|
||||
|
||||
**Backend Baru:**
|
||||
|
||||
- ✅ Auth API Key sama
|
||||
- ✅ Input sama
|
||||
- ✅ Flow sama
|
||||
- ✅ Response format sama
|
||||
|
||||
### 7.2 Process Payment (`/fast/process_payment`) ✅
|
||||
|
||||
**Backend Lama:**
|
||||
|
||||
- Auth: API Key
|
||||
- Input: `no_sl`, `amount`
|
||||
- Validasi saldo WIPAY
|
||||
- Cek tagihan via TIMO API
|
||||
- Jika saldo cukup:
|
||||
- Deduct saldo WIPAY
|
||||
- Call TIMO API: `payment/{token}`
|
||||
- Simpan pembayaran: status `DIBAYAR`
|
||||
- Response: data pembayaran
|
||||
|
||||
**Backend Baru:**
|
||||
|
||||
- ✅ Auth API Key sama
|
||||
- ✅ Input sama
|
||||
- ✅ Flow sama
|
||||
- ✅ Response format sama
|
||||
|
||||
### 7.3 Payment Status (`/fast/payment_status`) ✅
|
||||
|
||||
**Backend Lama:**
|
||||
|
||||
- Auth: API Key
|
||||
- Input: `transaction_id` atau `pembayaran_id`
|
||||
- Cari pembayaran berdasarkan API Key
|
||||
- Response: status pembayaran
|
||||
|
||||
**Backend Baru:**
|
||||
|
||||
- ✅ Auth API Key sama
|
||||
- ✅ Input sama
|
||||
- ✅ Filter by API Key sama
|
||||
- ✅ Response format sama
|
||||
|
||||
### 7.4 Check WIPAY Saldo (`/fast/check_wipay_saldo`) ✅
|
||||
|
||||
**Backend Lama:**
|
||||
|
||||
- Auth: API Key
|
||||
- Get admin user → timo user → wipay user
|
||||
- Hitung saldo dari mutasi terakhir
|
||||
- Response: saldo WIPAY
|
||||
|
||||
**Backend Baru:**
|
||||
|
||||
- ✅ Auth API Key sama
|
||||
- ✅ Flow sama
|
||||
- ✅ Response format sama
|
||||
|
||||
---
|
||||
|
||||
## 8. Admin API (`/site/*`) ✅
|
||||
|
||||
### 8.1 Verify BRI (`/site/verify_bri`) ✅
|
||||
|
||||
**Backend Lama:**
|
||||
|
||||
- Ambil token BRI
|
||||
- Cari pembayaran BRI: `MENUNGGU VERIFIKASI` & `banyak_cek < 2`
|
||||
- Call BRI API untuk ambil mutasi
|
||||
- Bandingkan jumlah transfer dengan total pembayaran
|
||||
- Jika cocok → auto approve → kirim WhatsApp
|
||||
- Response: HTML message
|
||||
|
||||
**Backend Baru:**
|
||||
|
||||
- ✅ Flow sama
|
||||
- ✅ Auto approve sama
|
||||
- ✅ Kirim WhatsApp ✅ (sudah ditambahkan)
|
||||
- ✅ Response HTML format sama
|
||||
|
||||
### 8.2 Approve (`/site/approve/{id_trx}`) ✅
|
||||
|
||||
**Backend Lama:**
|
||||
|
||||
- Input: `id_trx` (dari URL path)
|
||||
- Cari pembayaran: `MENUNGGU VERIFIKASI`
|
||||
- Prepare data payment
|
||||
- Call TIMO API: `payment/{token}`
|
||||
- Jika sukses:
|
||||
- Update status: `DIBAYAR`
|
||||
- Set `tanggal_bayar`, `jumlah_bayar`
|
||||
- Kirim WhatsApp ke user
|
||||
- Response: status sukses/gagal
|
||||
|
||||
**Backend Baru:**
|
||||
|
||||
- ✅ Input sama
|
||||
- ✅ Flow sama
|
||||
- ✅ Kirim WhatsApp ✅ (sudah ditambahkan)
|
||||
- ✅ Response format sama
|
||||
|
||||
---
|
||||
|
||||
## 9. API Mandiri (`/api/mandiri/{tanggal}`) ✅
|
||||
|
||||
**Backend Lama:**
|
||||
|
||||
- Input: `tanggal` (dari URL path)
|
||||
- Ambil data `catat_meter` berdasarkan tanggal
|
||||
- Response: data catat meter dengan format khusus (status: 1)
|
||||
|
||||
**Backend Baru:**
|
||||
|
||||
- ✅ Input sama
|
||||
- ✅ Filter by tanggal sama
|
||||
- ✅ Response format sama (status: 1)
|
||||
|
||||
---
|
||||
|
||||
## 📋 Summary
|
||||
|
||||
### ✅ Semua Fitur Sudah Sesuai:
|
||||
|
||||
1. ✅ **User Management** - Registrasi, Login, Update Akun, Update Password
|
||||
2. ✅ **SL Management** - Cek SL, Confirm SL, Hapus SL
|
||||
3. ✅ **Tagihan Management** - History Tagihan, Tagihan Saat Ini
|
||||
4. ✅ **Payment Flow** - Request, Cek, Upload Bukti, Batal, Confirm, History
|
||||
5. ✅ **Upload Features** - Catat Meter, Pasang Baru, Gangguan, Baca Mandiri, Bukti Transfer, PP
|
||||
6. ✅ **Other Features** - Promo, Riwayat Pasang, Jadwal Catat Meter, Reset Password
|
||||
7. ✅ **Fast WIPAY API** - Check Bill, Process Payment, Payment Status, Check Saldo
|
||||
8. ✅ **Admin API** - Verify BRI, Approve
|
||||
9. ✅ **API Mandiri** - Data Catat Meter
|
||||
|
||||
### 🆕 Fitur Baru (Tidak Ada di Backend Lama):
|
||||
|
||||
1. ✅ **QRIS Payment** - Payment method baru untuk transaksi < 70rb
|
||||
2. ✅ **QRIS Status Check** - Endpoint untuk cek status QRIS dengan retry mechanism
|
||||
|
||||
### 🔔 Notifikasi:
|
||||
|
||||
1. ✅ **Telegram** - Kirim ke admin transaksi & gangguan
|
||||
2. ✅ **WhatsApp** - Kirim ke user setelah pembayaran berhasil (BRI & QRIS)
|
||||
|
||||
---
|
||||
|
||||
## ✅ Kesimpulan
|
||||
|
||||
**Semua logika bisnis sudah 100% sesuai dengan backend lama (timo.wipay.id).**
|
||||
|
||||
Tidak ada perbedaan logika bisnis yang signifikan. Semua endpoint, validasi, flow, dan response format sudah sesuai dengan backend lama.
|
||||
Reference in New Issue
Block a user