80 lines
3.0 KiB
Markdown
80 lines
3.0 KiB
Markdown
# Executive Blueprint - QRIS Soundbox Platform v1
|
|
|
|
## 1. Ringkasan
|
|
Platform ini dirancang sebagai **Merchant Aggregator QRIS + Payment Orchestration + Soundbox/TMS Platform**.
|
|
|
|
Sistem menangani:
|
|
- onboarding merchant
|
|
- koneksi ke bank, issuer, acquirer, atau partner QRIS
|
|
- konfigurasi SNAP BI / QRIS integration
|
|
- pemrosesan transaksi QRIS statis dan dinamis
|
|
- ledger internal dan perhitungan hak merchant
|
|
- settlement/disbursement ke merchant
|
|
- manajemen device soundbox lintas vendor
|
|
- notifikasi pembayaran realtime ke device
|
|
- dashboard admin, ops, finance, dan merchant
|
|
|
|
## 2. Objective
|
|
Tujuan utama sistem:
|
|
1. mendukung banyak jenis soundbox tanpa vendor lock-in
|
|
2. memusatkan kontrol payment dan orkestrasi payout di backend perusahaan, sementara pencairan diproses sesuai rekening/flow payout milik merchant (non-tersentral pada MVP)
|
|
3. memastikan transaksi, ledger, dan settlement dapat diaudit
|
|
4. memberi notifikasi realtime ke merchant melalui soundbox
|
|
5. menyediakan fondasi yang bisa dicicil implementasinya per fase
|
|
|
|
## 3. Prinsip Kunci
|
|
- backend adalah pusat logika sistem
|
|
- device adalah channel, bukan pusat source of truth
|
|
- callback/webhook payment partner adalah sumber status transaksi eksternal
|
|
- ledger internal adalah sumber kebenaran finansial internal (pending settlement, fee, dan entitlement)
|
|
- settlement/payout dipisah dari payment event dan dapat dikoordinasikan via partner payout merchant
|
|
- device support berbasis capability, bukan hardcode per vendor
|
|
- TMS adalah domain inti, bukan tambahan
|
|
- semua aksi kritikal harus memiliki audit trail
|
|
|
|
## 4. Tipe Device yang Didukung
|
|
### 4.1 Soundbox Static
|
|
- QR merchant statis
|
|
- transaksi masuk via callback partner
|
|
- backend melakukan mapping ke merchant/outlet/terminal/device
|
|
- notifikasi sukses dikirim ke device via MQTT
|
|
|
|
### 4.2 Soundbox Dynamic MQTT-only
|
|
- device membuat request QR dynamic via MQTT
|
|
- backend memproses request dan mengirim hasil via MQTT
|
|
- payment success tetap berasal dari callback partner
|
|
- notifikasi sukses ke device via MQTT
|
|
|
|
### 4.3 Soundbox Dynamic API-direct
|
|
- device dapat hit API backend langsung
|
|
- request-response create QR dilakukan via API
|
|
- payment success tetap berasal dari callback partner
|
|
- notifikasi sukses ke device via MQTT
|
|
|
|
## 5. Domain Inti
|
|
- Merchant & Onboarding
|
|
- Payment Integration
|
|
- Transaction
|
|
- Ledger & Settlement
|
|
- Device/TMS
|
|
- Notification
|
|
- Operations & Governance
|
|
|
|
## 6. Keputusan Arsitektur Final
|
|
1. one unified backend
|
|
2. support multi-protocol ingress untuk device
|
|
3. use capability-based routing untuk flow device
|
|
4. use QRIS/payment callback as external payment status trigger
|
|
5. use internal ledger for merchant payable and settlement
|
|
6. support admin portal dan merchant portal terpisah
|
|
7. design all critical integration points with idempotency and auditability
|
|
|
|
## 7. Hasil yang Diharapkan dari Paket Ini
|
|
Dokumen ini menjadi fondasi untuk:
|
|
- diskusi arsitektur
|
|
- desain UI/UX
|
|
- breakdown sprint engineering
|
|
- definisi database awal
|
|
- definisi API dan kontrak MQTT
|
|
- roadmap delivery bertahap
|