Legal
Kebijakan Privasi
Versi 1.1Diperbarui 16 Agustus 2026
Kebijakan Privasi
Versi 1.1 · Berlaku: 14 Agustus 2026
Kebijakan ini menjelaskan pemrosesan data pribadi oleh ChartLab sesuai Undang-Undang Nomor 27 Tahun 2022 tentang Pelindungan Data Pribadi (“UU PDP”) dan ketentuan pelaksana yang berlaku. Ini bukan nasihat hukum. Transfer data lintas negara dan dasar pemrosesan tertentu LEGAL REVIEW REQUIRED.
ChartLab adalah pengendali data untuk akun, pembelajaran, billing metadata, affiliate, dan log yang diuraikan di bawah. Prosesor pihak ketiga diuraikan pada bagian penerima.
1. Prinsip pemrosesan
ChartLab berkomitmen memproses data secara: sah, adil, transparan; terbatas pada tujuan; diminimalkan; akurat; dibatasi penyimpanannya; diamankan; dan dapat dipertanggungjawabkan. Data tidak dikumpulkan “karena nanti mungkin berguna”.
2. Inventaris data (sesuai implementasi)
Tabel berikut hanya mencakup data yang memang ada di arsitektur/database ChartLab saat dokumen ini disusun.
| Kategori | Data | Tujuan | Dasar (penilaian awal) | Penyimpanan | Retensi (kebijakan) | Penerima | Transfer | Penghapusan |
|---|---|---|---|---|---|---|---|---|
| Identitas | nama, email, username, bio, foto profil | akun | kontrak / langkah pra-kontrak | PostgreSQL | selama akun aktif + penahanan terbatas setelah penutupan | hosting | mungkin lintas negara jika hosting di luar ID — FLAG | anonimisasi |
| Autentikasi | password hash (bcrypt), sesi, token verifikasi/reset (SHA-256), credentialsUpdatedAt | keamanan akun | kontrak; kepentingan sah keamanan | PostgreSQL | token sampai kedaluwarsa/dipakai; hash selama akun | — | sama | hapus hash saat anonimisasi |
| Billing | paket, status langganan, jumlah, mata uang, status pembayaran, referensi Midtrans, idempotency key | membership | kontrak | PostgreSQL | catatan transaksi ditahan untuk akuntansi/sengketa (bukan “30 hari”) | Midtrans | Midtrans di Indonesia | tidak dihapus mentah; dipisah/dianonimkan dari identitas |
| Pembayaran sensitif | nomor kartu, CVV | — | — | tidak disimpan ChartLab | — | Midtrans | — | — |
| Pembelajaran | progres course/lesson, bookmark, catatan lesson, practice session/submission, assessment attempt | menyediakan Academy | kontrak | PostgreSQL | selama akun / hingga hapus | — | — | hapus atau anonimisasi |
| Chart/replay | drawing, konfigurasi indikator, sesi replay/backtest, trade simulasi | fitur produk | kontrak | PostgreSQL | selama akun | — | — | hapus atau anonimisasi |
| Journal | model TradeJournal | fitur (saat ini nonaktif di entitlement) | kontrak jika diaktifkan | PostgreSQL | jika ada data | — | — | hapus |
| Analitik | visitorId, sessionId, device/browser/OS, UTM, eventName, eventData | merawat dan memahami penggunaan | persetujuan cookie analitik | PostgreSQL | operasional analitik; bukan klaim hapus 30 hari otomatis | — | — | hapus/anonimkan visitor |
| Atribusi | first/last source, referral code | affiliate & analitik | kontrak affiliate / kepentingan sah terbatas | PostgreSQL | selama program | — | — | anonimisasi |
| Affiliate | kode, status, komisi, payout, nama bank, nama rekening, nomor rekening terenkripsi AES-GCM | membayar komisi | kontrak | PostgreSQL | ditahan untuk pajak/anti-fraud | admin ChartLab; bank payout | — | enkripsi tetap; identitas dianonimkan |
| Keamanan | AuditLog (aksi, IP, user agent), security events | keamanan, investigasi | kepentingan sah; kewajiban hukum | PostgreSQL | lebih lama dari data operasional | — | — | ditahan; userId dapat di-set null |
| Penerimaan legal | tipe dokumen, versi, waktu, IP, user agent | bukti penerimaan | kewajiban hukum / kontrak | PostgreSQL | ditahan (riwayat tidak di-overwrite) | — | — | ditahan |
| Persetujuan | MARKETING, ANALYTICS, granted/withdrawn | mencatat consent | persetujuan | PostgreSQL | ditahan sebagai bukti | — | — | ditahan |
| Pengaduan | tiket support, pesan, permintaan hak PDP | layanan & hak subjek | kewajiban hukum / kontrak | PostgreSQL | ditahan | staf admin | — | ditahan terbatas |
| Notifikasi | judul/isi notifikasi in-app; email layanan via Resend | operasional | kontrak | PostgreSQL + Resend | sesuai provider | Resend | lintas negara FLAG | hapus in-app; email di provider |
IP mentah tidak disimpan pada analitik pengunjung (fungsi hash IP ada tetapi tidak dipakai untuk menyimpan IP analitik). IP dapat tercatat pada AuditLog dan LegalAcceptance.
3. Dasar pemrosesan (UU PDP)
Dasar yang relevan dapat meliputi: persetujuan yang sah; pemenuhan kewajiban kontrak; kewajiban hukum; kepentingan sah yang seimbang; dan kepentingan vital jika berlaku. ChartLab tidak menganggap “sekadar mengunjungi situs” sebagai persetujuan untuk semua tujuan.
- Syarat & Ketentuan dan Kebijakan Privasi diterima terpisah saat daftar.
- Email pemasaran hanya jika Anda mencentang persetujuan pemasaran (opsional).
- Cookie analitik hanya setelah persetujuan banner (opsional). Cookie yang strictly necessary (sesi login, CSRF, preferensi consent) tidak menunggu persetujuan analitik.
4. Cookie
Lihat Kebijakan Cookie. Cookie analitik: cl_vid, cl_sid. Cookie fungsional referral: cl_ref saat Anda memakai tautan affiliate. Cookie consent: cl_consent.
5. Penerima / prosesor
| Pihak | Data | Alasan | Lokasi (penilaian) |
|---|---|---|---|
| Midtrans | data pembayaran yang Anda masukkan di Snap; ChartLab menerima status/referensi | memproses pembayaran | Indonesia |
| Resend | email, nama, isi email transaksional | kirim verifikasi, reset, welcome/layanan | di luar Indonesia — FLAG LEGAL REVIEW |
| Cloudflare R2 | objek media (gambar Academy/library), kredensial akses server-side | penyimpanan file | Cloudflare; wilayah dapat di luar ID — FLAG LEGAL REVIEW |
| Hosting / VPS | database, aplikasi, cadangan | operasi platform | tergantung deployment — FLAG jika di luar ID |
| Binance | permintaan pasar publik (bukan data akun ChartLab) | data kripto | di luar ID |
| MT5 / market bridge | permintaan ticker/candle | data forex/indeks | tergantung operator bridge — FLAG |
| Dukascopy | permintaan historis XAUUSD | data emas | di luar ID |
ChartLab membagikan data dengan prosesor di atas sepanjang diperlukan. Pernyataan “kami tidak membagikan data sama sekali” tidak digunakan karena tidak akurat.
6. Transfer lintas negara
Jika data pribadi diproses atau disimpan di luar Indonesia (Resend, Cloudflare, hosting, penyedia data pasar), transfer tersebut ditandai untuk tinjauan hukum terhadap Pasal-pasal transfer UU PDP (termasuk kecukupan pelindungan, persetujuan, dan/atau instrumen lain yang diwajibkan). Status: LEGAL REVIEW REQUIRED. Dokumen ini tidak menyatakan transfer tersebut sudah sah sepenuhnya.
7. Hak subjek data
Anda dapat, sesuai UU PDP dan pengecualian yang berlaku:
- mengetahui dan mengakses data
- memperbaiki dan memperbarui data
- meminta penghapusan atau anonimisasi jika applicable
- menarik persetujuan (pemasaran / analitik) tanpa memengaruhi keabsahan pemrosesan sebelumnya
- mengajukan keberatan sesuai dasar yang berlaku
- mengajukan pengaduan melalui
/contactdan, jika berlanjut, kepada otoritas yang berwenang
Mekanisme internal: Pengaturan akun (/settings) dan formulir /contact (kategori Privasi), yang tercatat sebagai Privacy Request untuk ditinjau admin.
Permintaan hapus tidak menghapus catatan yang wajib ditahan (transaksi, penerimaan legal, log keamanan, sengketa). Dalam kasus itu ChartLab memakai anonimisasi.
8. Retensi
ChartLab tidak mengklaim “data dihapus setelah 30 hari” karena hal itu belum diimplementasikan sebagai job otomatis 30 hari.
Kebijakan retensi (operasional, bukan janji hapus otomatis):
- Akun operasional — selama akun aktif
- Transaksi pembayaran — ditahan untuk akuntansi, sengketa, anti-fraud
- Legal acceptance & consent history — ditahan, tidak di-overwrite
- Audit / security logs — ditahan lebih lama dari data operasional
- Analitik — selama diperlukan untuk statistik produk; dapat dianonimkan
- Affiliate / komisi / payout — ditahan untuk pembayaran dan audit
- Backup — retensi terpisah dari database operasional (lihat prosedur disaster recovery internal); penghapusan di DB produksi tidak serta-merta menghapus backup yang masih dalam jendela retensi
9. Keamanan (proporsional, sesuai yang diterapkan)
Langkah yang memang ada pada implementasi saat ini meliputi antara lain: hashing kata sandi bcrypt (cost 12); token verifikasi/reset di-hash SHA-256; sesi Auth.js; pemeriksaan CSRF origin; rate limit login/register; pembatasan admin; nomor rekening affiliate terenkripsi AES-GCM; Midtrans signature diuji secara timing-safe; log dengan redaksi rahasia; fitur membership dikontrol di server.
Tidak ada sistem yang sepenuhnya aman. ChartLab tidak menulis bahwa data pengguna mustahil disusupi.
Insiden: lihat prosedur internal incident response (deteksi → contain → investigasi → penilaian data terdampak → dokumentasi → notifikasi pihak terdampak/otoritas jika diwajibkan → perbaikan).
10. Anak-anak
Layanan tidak ditujukan kepada anak di bawah usia yang memerlukan persetujuan orang tua menurut hukum yang berlaku. Jika Anda percaya kami memproses data anak secara tidak semestinya, hubungi /contact.
11. Perubahan
Perubahan material Kebijakan ini akan dipublikasikan dengan versi baru dan dapat mensyaratkan penerimaan ulang.
12. Kontak privasi
Gunakan /contact (kategori Privasi) atau Pengaturan akun.