Sistem Payment Gateway Mandiri (Auto-Verification) berbasis intersepsi notifikasi DANA Bisnis (Android / Termux:API) yang digabungkan dengan Generator QRIS Dinamis (EMVCo TLV).
Menerima pembayaran dari semua Bank dan E-Wallet di Indonesia (BCA, BRI, Mandiri, BNI, GoPay, OVO, ShopeePay, DANA, LinkAja) dengan 0% Biaya MDR / Potongan Transaksi.
- β‘ QRIS Dinamis Otomatis: Mengonversi QRIS Statis menjadi Dinamis dengan nominal unik & checksum CRC16-CCITT presisi. Pembeli scan dan nominal otomatis terisi di layar HP mereka.
- π Auto-Settlement Real-time: Intersepsi notifikasi transaksi masuk DANA dan otomatis mengubah status tagihan menjadi
PAIDdalam hitungan detik. - π± Mendukung Non-Root & Root: Berjalan lancar di HP Android standar tanpa root. Fitur autostart tersedia via Termux:Boot (Non-Root) atau Magisk
service.d(Root). - π‘οΈ Keamanan Tingkat Finansial:
- Webhook Callback bertanda tangan kriptografi HMAC-SHA256 (
X-Signature). - Proteksi Anti-Tampering dan Anti-Replay Attacks.
- Buku besar mutasi (Ledger) untuk mencegah Double-Spend.
- Alokasi kode unik bebas tabrakan (Collision-Free).
- Transaksi Database Atomik (SQLite WAL Mode).
- Webhook Callback bertanda tangan kriptografi HMAC-SHA256 (
- π± Halaman Checkout Web Siap Pakai: UI Checkout responsif dengan QRIS, info nominal, dan auto-check polling status.
- π RESTful API & Swagger Docs: Dilengkapi dokumentasi interaktif OpenAPI (
/docs). - π€ Android Daemon & Magisk Autostart: Berjalan di latar belakang dan dapat menyala otomatis saat HP booting via
service.d.
[Pembeli Checkout di Website/VPS]
β
βΌ
[POST /api/v1/invoices]
β
βΌ
[Payment Gateway di HP (Termux)]
βββ 1. Generate Kode Unik (misal Rp 50.127)
βββ 2. Buat QRIS Dinamis (Tag 54 + CRC16)
βββ 3. Simpan Status PENDING di SQLite
β
βΌ
[Pembeli Scan QRIS via Bank / E-Wallet]
β
βΌ
[DANA Mengirim Notifikasi ke HP: "Rp50.127 diterima"]
β
βΌ
[Termux:API Listener Menangkap Notifikasi]
βββ 1. Ekstrak Nominal: Rp 50.127
βββ 2. Cek Deduplikasi Buku Besar (Anti Double-Spend)
βββ 3. Cocokkan dengan Tagihan PENDING β Ubah Status: PAID
β
βΌ
[Kirim Callback Webhook + HMAC Signature ke VPS Anda]
β
βΌ
[Website/VPS Memproses Pesanan Secara Otomatis! π]
- Pasang aplikasi Termux dan Termux:API (dari F-Droid / GitHub).
- Buka Pengaturan HP > Akses Notifikasi > Aktifkan izin untuk Termux:API.
# Update package dan install dependensi
pkg update && pkg install git python -y
# Clone repositori
git clone https://github.com/USERNAME/dana-qris-gateway.git
cd dana-qris-gateway
# Install dependensi Python
pip install -r requirements.txt --break-system-packagesSalin file konfigurasi .env.example ke .env:
cp .env.example .env
nano .env
β οΈ PENTING TENTANG API KEY & WEBHOOK SECRET:
DANA_API_KEY: BUKAN didapat dari DANA! Ini adalah Password Keamanan Buatan Sendiri agar gateway Anda tidak bisa diakses orang asing. Bebas diisi string acak apa saja.DANA_WEBHOOK_SECRET: BUKAN dari DANA! Ini adalah Kunci Tanda Tangan (Stempel Rahasia) yang Anda buat sendiri untuk memverifikasi keaslian webhook di website/VPS Anda.STATIC_QRIS: String QRIS Statis dari akun DANA Bisnis Anda (diawali000201010211...).
Jalankan pengujian logika dan keamanan:
python test_gateway.py# Menjalankan service
sh scripts/start_gateway.sh
# Cek status log
tail -f logs/service.log| Method | Endpoint | Deskripsi | Auth |
|---|---|---|---|
GET |
/api/v1/health |
Cek status server & QRIS | Bebas |
POST |
/api/v1/invoices |
Buat invoice baru & QRIS Dinamis | X-API-Key |
GET |
/api/v1/invoices/{id} |
Cek status invoice | Bebas |
POST |
/api/v1/invoices/{id}/cancel |
Batalkan invoice PENDING | X-API-Key |
POST |
/api/v1/qris/convert |
Konversi QRIS Statis ke Dinamis | Bebas |
GET |
/api/v1/checkout/{id} |
Halaman web UI Checkout Pembayaran | Bebas |
Dokumentasi Swagger UI lengkap tersedia di: http://localhost:8080/docs
Repositori ini dilengkapi dengan SKILL.md standar untuk AI Coding Assistants (Cursor, Claude, Copilot, Windsurf, Antigravity) dan contoh project toko online siap pakai:
- π§
skills/dana-payment-gateway/SKILL.md: Skill definition lengkap agar AI agent dapat langsung mengintegrasikan payment gateway ini ke project pengguna secara otomatis. - π¦
examples/nodejs-express/: Toko online Express.js lengkap dengan checkout scan QRIS dan webhook auto-fulfillment. - π
examples/php-native/: Skrip PHP checkout (checkout.php) & webhook listener (webhook.php). - π
examples/python-fastapi/: Backend FastAPI untuk checkout & webhook receiver.
- π AGENTS.md : Pedoman dan arsitektur untuk AI Coding Agents.
- π οΈ INSTRUCTIONS.md : Panduan setup lengkap Android Root (
service.d), Termux Non-Root (Termux:Boot), dan VPS Tunneling. - π» INTEGRATION.md : Panduan integrasi kode (PHP, Node.js, Python, Golang) dan verifikasi Webhook HMAC-SHA256.
Didistribusikan di bawah Lisensi MIT. Bebas digunakan untuk kebutuhan personal maupun komersial.