Keamanan dan privasi
Halaman ini menjelaskan apa yang dibaca RAGH Reader, apa yang tidak pernah dibaca, bagaimana data dilindungi, berapa lama data disimpan, dan batas tanggung jawab layanan.
Yang dibaca app RAGH Reader
App RAGH Reader hanya meneruskan notifikasi yang lolos semua syarat ini:
- berasal dari app bank milik rekening yang dibaca HP itu. Daftarnya dikirim server dan hanya berisi app bank untuk rekening yang terdaftar;
- teksnya memuat nominal rupiah (awalan
RpatauIDR); - teksnya tidak mirip OTP atau kode rahasia (misalnya memuat "OTP", "kode verifikasi", "kode rahasia", "jangan berikan", "jangan bagikan").
Dari notifikasi yang lolos, yang dikirim ke server adalah: nama package app bank, judul dan teks notifikasi (termasuk teks panjang dan baris-barisnya), waktu notifikasi, dan penanda unik notifikasi untuk mencegah kiriman ganda.
Selain notifikasi, app mengirim:
| Data | Kapan | Untuk apa |
|---|---|---|
| Merek, model, versi Android, versi app | Saat login | Identitas HP dan dukungan |
| Status pendengar notifikasi, penghemat baterai, jumlah antrean, daftar app bank yang terpasang (hanya dari daftar bank yang didukung), waktu notifikasi terakhir | Setiap 5 menit (heartbeat) | Menentukan rekening terpantau atau tidak |
| Keadaan HP untuk diagnosa | Hanya saat Anda menekan Kirim diagnosa | Pemecahan masalah |
Yang tidak pernah dibaca
- Notifikasi dari app selain app bank rekening terdaftar: WhatsApp, SMS, email, media sosial, dan lainnya. Notifikasi itu dibuang di HP.
- OTP dan kode rahasia. Notifikasi yang mirip OTP dibuang di HP dan tidak pernah keluar dari HP, bahkan tidak masuk antrean lokal.
- Isi app bank: saldo, riwayat transaksi di dalam app, PIN, password.
- SMS, kontak, foto, lokasi, dan berkas di HP.
RAGH Reader tidak bisa melakukan transfer, login ke app bank, atau mengakses rekening Anda. App ini hanya membaca notifikasi yang ditampilkan Android.
Perlindungan di HP
| Lapisan | Cara kerja |
|---|---|
| Kunci perangkat di chip keamanan | Saat login, app membuat kunci di Android Keystore (TEE atau StrongBox bila tersedia). Kunci ini tidak bisa dibaca atau disalin keluar dari HP, termasuk oleh app itu sendiri |
| Bukti keaslian app (key attestation) | Server memeriksa bahwa kunci benar-benar dibuat di hardware oleh app RAGH Reader yang asli. HP tanpa kunci hardware (dan emulator) tetap boleh dipakai, tetapi ditandai "kunci software" di dashboard |
| Tanda tangan per request | Setiap kiriman dari HP ditandatangani dengan kunci perangkat, beserta waktu dan nonce acak. Server menolak tanda tangan yang salah, waktu yang meleset lebih dari 5 menit, dan nonce yang sudah pernah dipakai |
| Penyimpanan token | Token perangkat disimpan terenkripsi di HP, tidak ikut backup, dan hanya disimpan sebagai hash di server |
| Login key | Faktor kedua saat login app. Diketik sekali dan tidak disimpan di HP |
Bila tanda tangan dari sebuah HP gagal diverifikasi, kirimannya ditolak dan dicatat, dan rekening yang dibaca HP itu menjadi tidak terpantau sampai HP login ulang.
Yang tetap tidak bisa dicegah: pemilik HP yang sudah di-root bisa memalsukan notifikasi bank di HP-nya sendiri. Kerugiannya hanya menimpa pemilik akun itu. Satu-satunya cara menangkap kasus ini adalah membandingkan dengan mutasi resmi bank.
Perlindungan akun dan API
- OTP email (6 digit, berlaku 10 menit) untuk registrasi dan tindakan sensitif, misalnya membuat API key, merotasi webhook secret, mengganti password, menghapus rekening, dan mengundang anggota tim.
- Kredensial ditampilkan sekali. API key disimpan sebagai hash. Webhook secret disimpan terenkripsi, karena dibutuhkan untuk menandatangani webhook.
- API key berprefix, ber-scope, dan bisa dibatasi IP. Kunci live dengan
scope
payouts:writewajib memakai allowlist IP. Lihat Referensi API. - Webhook ditandatangani dengan HMAC-SHA256 dan timestamp. Lihat Webhook.
- Callback URL wajib HTTPS dan tidak boleh mengarah ke IP privat. Dicek saat disimpan dan saat setiap pengiriman.
- Akun tim. Setiap anggota punya login sendiri dengan role: Owner, Admin, Finance, Developer, atau Viewer. Developer tidak bisa menandai transaksi selesai manual. Anggota yang diundang membuat password sendiri lewat Lupa password (dengan OTP email). Hanya Owner dan Admin yang boleh login di app RAGH Reader.
- Jejak audit. Tindakan penting seperti menandai lunas manual, membuat atau mencabut kunci, merotasi secret, dan mengubah rekening dicatat beserta pelakunya.
- Menandai lunas atau terkirim manual hanya bisa dari dashboard, tidak lewat API.
- Halaman bayar memakai ID acak, tidak diindeks mesin pencari, dan tidak menampilkan data pembeli.
- Admin RAGH memakai 2FA, dan semua tindakan admin masuk audit log.
Retensi data
| Data | Lama disimpan |
|---|---|
| Teks mentah notifikasi (judul, isi) dan nama pengirim/penerima yang terbaca darinya | 90 hari, lalu dihapus. Hasil bacaannya (nominal, arah, waktu, status) tetap disimpan |
| Nama pengirim yang dinormalkan untuk analitik "top pengirim" | Selama akun aktif. Bisa dimatikan di pengaturan akun. Dihapus saat akun ditutup |
| Data penerima payout | Selama akun aktif |
| Mutasi yang diabaikan (misalnya uang keluar di rekening tanpa payout aktif) | 7 hari |
| Detail percobaan kirim webhook | 90 hari |
| Catatan keuangan dan audit | 10 tahun |
Saat akun ditutup, data pribadi dianonimkan. Catatan keuangan tetap disimpan sesuai kewajiban pembukuan.
Peran dalam UU PDP
Nama pengirim dan data penerima payout adalah data pribadi pelanggan Anda.
- Anda (merchant) adalah pengendali data pelanggan Anda.
- RAGH adalah pemroses data, yang memproses data itu atas nama Anda untuk layanan konfirmasi pembayaran.
Pembagian peran ini dituangkan di syarat layanan dan perjanjian pemrosesan data. Pastikan kebijakan privasi Anda sendiri menyebut bahwa konfirmasi pembayaran diproses oleh pihak ketiga.
Anda hanya boleh mendaftarkan rekening milik Anda sendiri atau milik usaha Anda, bukan rekening orang lain.
Batas tanggung jawab
- Reader membaca notifikasi bank, dan notifikasi bisa terlambat, hilang, dirangkum, atau berubah format. Layanan tidak menjamin 100%.
- RAGH tidak memberi ganti rugi atas kerugian akibat konfirmasi yang salah atau terlewat.
- Untuk transaksi bernilai besar, cocokkan juga dengan mutasi resmi bank sebelum menyerahkan barang atau jasa.
- Refund, penagihan kembali, dan penanganan uang dobel atau payout dobel adalah tanggung jawab Anda.
- Bukti transfer dari pembeli bisa dipalsukan. Bila Anda menandai lunas manual berdasarkan bukti transfer, Reader mengingatkan setelah 24 jam bila notifikasi banknya tidak pernah datang.
Melaporkan celah keamanan
Kanal khusus untuk melaporkan celah keamanan sedang disiapkan, dan alamatnya akan dicantumkan di halaman ini. Mohon jangan mengungkap celah secara publik sebelum kami sempat memperbaikinya.