← Blog · Industry · 9 min read
Fraud berkembang secepat produk Anda. Pelajari cara membangun sistem deteksi fraud ML yang adaptif, real-time, dan tidak menghukum pengguna jujur.
A 30-minute scoping call. We listen, ask three questions, tell you if we can help.
Book a callDi sebuah perusahaan fintech yang memproses jutaan transaksi QRIS dan transfer setiap hari, fraud tidak pernah berhenti berevolusi. Begitu tim risk menutup satu pola serangan—katakanlah pengambilalihan akun lewat SIM swap—pelaku berpindah ke vektor baru: rekening mule yang baru dibuat, perangkat yang di-emulasi, atau social engineering yang memanfaatkan promo. Sistem berbasis aturan tetap (rules) yang dulu cukup kini selalu terlambat satu langkah, karena aturan hanya menangkap pola yang sudah Anda kenali.
Di sinilah machine learning masuk. Bukan untuk menggantikan rules, melainkan untuk menangkap pola yang terlalu halus atau terlalu baru untuk ditulis sebagai aturan eksplisit. Tetapi membangun sistem deteksi fraud ML yang benar-benar bekerja di konteks pembayaran Indonesia jauh lebih menantang daripada sekadar melatih sebuah classifier. Artikel ini membedah cara membangunnya: dari feature engineering, skoring real-time, hibridisasi rules dan ML, hingga keseimbangan rumit antara menangkap penipu dan tidak menghukum pengguna jujur.
Sebelum masuk ke solusi, penting memahami kenapa fraud adalah salah satu masalah ML tersulit di dunia nyata. Ada beberapa karakteristik yang membuatnya berbeda dari klasifikasi biasa:
Ketidakseimbangan ekstrem. Transaksi fraud mungkin hanya 0,1% atau kurang dari total. Model yang asal menebak "semua sah" sudah benar 99,9% kali—dan sama sekali tidak berguna. Akurasi mentah adalah metrik yang menyesatkan di sini.
Adversarial. Tidak seperti memprediksi cuaca, lawan Anda adalah manusia yang aktif mempelajari dan menghindari sistem deteksi. Pola berubah justru karena model Anda bekerja.
Label yang lambat dan bising. Konfirmasi bahwa sebuah transaksi benar-benar fraud sering datang berhari-hari kemudian lewat chargeback atau laporan korban. Sebagian fraud bahkan tidak pernah dilaporkan, membuat label Anda tidak pernah sempurna.
Biaya kesalahan asimetris. Melewatkan fraud berarti kerugian finansial langsung. Tetapi menahan transaksi pengguna jujur (false positive) berarti friksi, frustrasi, dan churn—biaya yang nyata meski tidak langsung terlihat di neraca.
Memahami karakteristik ini mengubah cara Anda merancang sistem. Tujuannya bukan akurasi tertinggi, melainkan keseimbangan optimal antara kerugian fraud dan friksi pengguna pada threshold yang bisa Anda kendalikan.
Di deteksi fraud, kualitas fitur jauh lebih menentukan daripada kecanggihan algoritma. Model gradient boosting sederhana dengan fitur yang kaya hampir selalu mengalahkan jaringan saraf rumit dengan fitur miskin. Fitur yang efektif biasanya menangkap konteks dan perilaku, bukan sekadar atribut transaksi tunggal.
Fraud sering tampak sebagai anomali dalam pola, bukan dalam satu transaksi. Maka fitur agregasi atas jendela waktu sangat berharga:
Jumlah dan nominal transaksi per akun dalam 1 jam, 24 jam, 7 hari terakhir.
Jumlah perangkat atau alamat IP berbeda yang mengakses satu akun dalam periode tertentu.
Rasio transaksi gagal terhadap berhasil—lonjakan sering menandakan percobaan card testing.
Jarak geografis dan kecepatan implisit antar-transaksi (transaksi di Jakarta lalu di Medan dalam lima menit jelas mencurigakan).
Fraud jarang beroperasi sendirian. Rekening mule, sindikat, dan jaringan kolusi meninggalkan jejak relasi. Fitur graf—berapa banyak akun yang berbagi perangkat, nomor telepon, atau penerima dana yang sama—sering kali menjadi sinyal terkuat untuk fraud terorganisir yang lolos dari pandangan per-transaksi.
Device fingerprinting, pola pengetikan, kecepatan navigasi, dan apakah perangkat di-emulasi atau di-root memberi sinyal kaya. Akun yang sah punya pola perilaku yang relatif stabil; pengambilalihan akun sering memunculkan perubahan perilaku mendadak yang bisa ditangkap.
Tim fraud yang menang menghabiskan 80% waktunya pada fitur dan data, bukan pada memilih algoritma. Algoritma adalah komoditas; fitur adalah keunggulan.
Untuk pembayaran, deteksi fraud harus terjadi dalam alur transaksi—biasanya dalam anggaran puluhan hingga ratusan milidetik—sebelum transaksi disetujui atau ditolak. Ini menetapkan kendala arsitektur yang ketat.
Tantangan utamanya adalah menghitung fitur agregasi (velocity, jaringan) secara real-time. Menghitung "jumlah transaksi akun ini dalam 24 jam terakhir" dari database transaksional saat itu juga terlalu lambat. Solusinya adalah arsitektur dengan feature store yang memelihara fitur teragregasi secara streaming:
Aliran transaksi masuk ke sistem streaming (Kafka atau sejenisnya).
Fitur agregasi dihitung dan diperbarui secara incremental, disimpan di penyimpanan cepat seperti Redis untuk akses milidetik.
Saat transaksi baru tiba, layanan skoring mengambil fitur yang sudah dihitung, menjalankan model, dan mengembalikan skor risiko dalam anggaran latensi.
Penting bahwa fitur yang dipakai saat training dan saat inference dihitung dengan logika yang sama (menghindari training-serving skew). Inkonsistensi di sini adalah sumber bug fraud yang paling sering dan paling sulit dilacak.
Salah satu kesalahan umum adalah memandang rules dan ML sebagai pilihan saling menggantikan. Sistem fraud yang matang justru menggabungkan keduanya, masing-masing menutupi kelemahan yang lain.
Rules unggul untuk pola yang sudah dikenal, kebutuhan kepatuhan eksplisit, dan respons cepat terhadap serangan baru. Saat sebuah pola fraud baru meledak, Anda bisa menulis aturan untuk menahannya dalam hitungan jam—jauh lebih cepat daripada melatih ulang model. Rules juga sepenuhnya dapat dijelaskan, yang penting saat berhadapan dengan audit internal maupun ekspektasi tata kelola.
ML unggul menangkap pola halus, kombinasi fitur yang sulit ditulis sebagai aturan, dan adaptasi terhadap pergeseran perilaku. Ia menemukan sinyal yang tidak terpikirkan oleh analis.
Arsitektur hibrida yang umum: rules bertindak sebagai lapis pertama untuk kasus yang jelas (blokir keras pada blacklist, lolos cepat untuk pola tepercaya), sementara ML memberi skor risiko untuk zona abu-abu yang luas di tengah. Skor ML lalu dipetakan ke aksi—setujui, tantang dengan verifikasi tambahan (OTP, step-up authentication), tahan untuk review manual, atau tolak—berdasarkan threshold yang bisa disetel sesuai selera risiko bisnis.
Karena fraud bersifat adversarial dan pola terus bergeser, model deteksi fraud menua lebih cepat daripada model ML lainnya. Tanpa feedback loop yang sehat, akurasinya menurun dalam hitungan minggu.
Feedback loop yang baik menutup siklus dari prediksi ke label nyata:
Kumpulkan label dari berbagai sumber: chargeback, laporan korban, hasil review manual tim risk, dan konfirmasi pelanggan saat transaksi ditantang.
Sadari bias seleksi: transaksi yang Anda blokir tidak pernah memberi tahu apakah benar-benar fraud. Ini membuat data latih bias. Teknik seperti menyisakan sebagian kecil transaksi berisiko untuk diloloskan terkendali (sebagai sampel evaluasi) bisa membantu mengukur kinerja sebenarnya, meski harus dipertimbangkan dengan hati-hati terhadap risiko kerugian.
Latih ulang secara berkala dan pantau drift fitur dengan ketat. Lonjakan distribusi fitur tertentu sering menandakan kampanye fraud baru sebelum kerugian terakumulasi.
Investasikan juga pada perkakas tim risk: antarmuka review yang efisien dan dapat menjelaskan kenapa model menandai sebuah transaksi mempercepat pelabelan berkualitas, yang pada gilirannya memperbaiki model.
Inilah keputusan paling strategis dalam sistem fraud, dan ia bukan keputusan teknis murni melainkan keputusan bisnis. Setiap kali Anda memperketat deteksi untuk menangkap lebih banyak fraud, Anda otomatis menambah false positive yang menghukum pengguna jujur.
Beberapa prinsip untuk menavigasinya:
Kuantifikasi biaya kedua sisi. Berapa rata-rata kerugian per fraud yang lolos? Berapa nilai seumur hidup pelanggan yang churn karena transaksinya berkali-kali ditahan secara keliru? Tanpa angka ini, Anda menyetel threshold secara membabi buta.
Gunakan respons bertingkat, bukan biner. Alih-alih hanya "setujui/tolak", manfaatkan zona tengah dengan step-up authentication. Transaksi berisiko sedang bisa diloloskan setelah verifikasi tambahan—menangkap fraud tanpa memblokir pengguna jujur secara permanen.
Segmentasikan threshold. Selera risiko bisa berbeda per segmen: nasabah lama dengan riwayat bersih layak diperlakukan berbeda dari akun yang baru dibuat. Personalisasi threshold mengurangi friksi pada pengguna setia.
Pantau metrik pengalaman, bukan hanya fraud rate. Lacak rasio transaksi sah yang ditahan, tingkat keluhan, dan dampaknya pada konversi. Sistem fraud yang "sempurna" menahan terlalu banyak adalah kegagalan bisnis, bukan kesuksesan.
Konteks regulasi Indonesia juga relevan: pemrosesan data perilaku dan perangkat untuk deteksi fraud harus selaras dengan UU PDP No. 27/2022, dengan dasar hukum pemrosesan yang jelas dan retensi yang wajar. Bagi entitas yang diawasi OJK, kemampuan menjelaskan keputusan model dan menjaga audit trail bukan opsi melainkan ekspektasi tata kelola.
Pilihan algoritma untuk deteksi fraud sering kali dilebih-lebihkan, tetapi tetap punya konsekuensi praktis. Untuk mayoritas kasus, gradient boosting (XGBoost, LightGBM, CatBoost) adalah titik awal terbaik: ia menangani data tabular dengan fitur campuran sangat baik, cepat di-inference, tahan terhadap fitur yang tidak relevan, dan—penting—relatif mudah dijelaskan dibanding jaringan saraf dalam. Untuk fraud terorganisir yang berbentuk jaringan, graph neural network atau algoritma graf klasik bisa menangkap pola relasi yang luput dari model tabular, meski dengan kompleksitas operasional lebih tinggi.
Yang sering menjadi pembeda di konteks Indonesia bukanlah skor akurasi mentah, melainkan explainability. Bagi institusi yang diawasi OJK, kemampuan menjelaskan mengapa sebuah transaksi ditolak atau akun dibekukan bukan kemewahan, melainkan kebutuhan tata kelola dan—dalam beberapa kasus—kewajiban terhadap nasabah yang dirugikan oleh keputusan model. Beberapa praktik menjaga ini:
Gunakan teknik atribusi fitur seperti SHAP untuk menjelaskan kontribusi tiap fitur pada skor sebuah transaksi. Ini membantu tim risk memahami dan mempertanggungjawabkan keputusan, sekaligus mempercepat investigasi.
Pertahankan audit trail lengkap: untuk setiap keputusan model, catat versi model, fitur yang dipakai, skor, dan aksi yang diambil. Saat regulator atau nasabah bertanya, Anda bisa menjawab dengan jejak yang dapat diverifikasi.
Seimbangkan kompleksitas model dengan kebutuhan menjelaskan. Model yang sedikit lebih akurat tetapi mustahil dijelaskan bisa jadi pilihan yang lebih buruk dalam konteks yang diatur ketat. Akurasi yang tidak bisa Anda pertanggungjawabkan adalah liabilitas.
Pertimbangan ini sering kali mengarahkan tim ke model yang dapat dijelaskan sebagai default, dengan model yang lebih kompleks dicadangkan untuk lapisan deteksi tertentu di mana keuntungannya jelas sepadan.
Hambatan yang sering melumpuhkan tim adalah anggapan bahwa deteksi fraud ML butuh dataset besar berlabel sempurna sebelum bisa dimulai. Kenyataannya, sistem fraud yang baik tumbuh secara bertahap, dan Anda bisa mulai dengan apa yang ada:
Mulai dari rules dan heuristik yang dirumuskan tim risk berdasarkan pengalaman. Ini langsung memberi perlindungan sekaligus mulai menghasilkan label dan data berlabel saat tim memverifikasi kasus yang ditandai.
Manfaatkan deteksi anomali tanpa label (unsupervised) di tahap awal. Saat label fraud masih langka, model yang mempelajari "apa itu normal" dan menandai penyimpangan bisa menjadi jembatan yang berguna.
Bangun pelabelan ke dalam alur kerja sejak awal. Setiap kasus yang direview tim risk, setiap chargeback, setiap konfirmasi pelanggan adalah label berharga. Sistem yang dirancang untuk menangkap label ini secara sistematis akan punya dataset yang terus tumbuh untuk melatih model supervised yang makin baik.
Pendekatan bertahap ini menghindari kelumpuhan "tunggu sampai datanya sempurna"—yang dalam fraud berarti tidak akan pernah dimulai, karena data fraud tidak pernah sempurna.
Deteksi fraud bukan proyek sekali jadi melainkan kapabilitas hidup yang harus terus belajar. Sistem terbaik menggabungkan fitur perilaku yang kaya, skoring real-time yang patuh anggaran latensi, hibrida rules dan ML yang saling menutupi, feedback loop yang menjaga model tetap segar, dan kalibrasi threshold yang sadar akan biaya friksi maupun kerugian. Akurasi mentah hampir tidak ada artinya di sini; yang penting adalah keseimbangan ekonomi yang dioptimalkan untuk konteks bisnis Anda.
Membangun ini di tengah operasional pembayaran yang berjalan—dengan kendala latensi, regulasi OJK dan UU PDP, serta tekanan untuk tidak menambah friksi pelanggan—menuntut pengalaman yang melampaui sekadar melatih model. Sainskerta Solusi Nusantara mendampingi fintech dan institusi keuangan Indonesia merancang sistem deteksi fraud end-to-end, dari arsitektur feature store real-time hingga tata kelola model yang patuh regulator. Jika Anda ingin mengevaluasi kesiapan sistem fraud Anda atau membangunnya dari fondasi, jadwalkan sesi konsultasi dengan tim kami melalui halaman Kontak, dan mari kita rancang pertahanan yang berevolusi secepat ancamannya.