Kunci Idempotensi: Mengapa API Anda Perlu Bisa Diulang
Dalam integrasi, panggilan API yang sama sering dikirim dua kali — bukan karena kesalahan pengguna, melainkan karena jaringan lambat lalu pengirim mencoba lagi. Tanpa perlindungan, ulangan ini menjadi efek ganda.
Apa itu kunci idempotensi
Pengirim menyertakan ID unik pada setiap permintaan. Penerima mencatat ID itu; bila permintaan sama datang lagi, penerima mengembalikan hasil awal alih-alih memproses ulang.
Di mana wajib
Operasi yang mengubah saldo, membuat pesanan, atau memicu pembayaran wajib idempoten. Operasi baca tidak. Aturannya: bila ulangan menimbulkan kerugian, pasang kunci.
Jebakan
Idempotensi hanya bekerja bila seluruh efek samping dicatat dalam satu transaksi yang sama dengan penyimpanan kunci. Bila kunci disimpan terpisah dari aksi, celah tetap ada.