Ya, sudah ada. Kami menyediakan idempotency key yang dapat di implementasikan pada sistem API untuk mencegah data transaksi yang masuk 2 kali. Dokumentasinya dapat dilihat di https://docs.flip.id/#idempotent-request.
- User Flip for Business mengirimkan request disbursement ke Flip dengan idempotency key
- Sistem Flip mengembalikan response yang statusnya bukan PENDING (contoh: 500 Internal Server Error)
- User Flip for Business mencoba kembali untuk membuat transaksi dengan idempotency key yang berbeda
- Sistem Flip memproses kedua request tersebut dikarenakan dilihat sebagai dua transaksi yang berbeda dengan idempotency key yang berbeda
Untuk mencegah hal seperti di atas, implementasi penggunaan idempotency key yang tepat adalah seperti berikut:
- User Flip for Business mengirimkan request disbursement ke Flip dengan idempotency key
- Sistem Flip mengembalikan response yang statusnya bukan PENDING (contoh: 500 Internal Server Error)
- User Flip for Business dapat mencoba kembali untuk membuat transaksi dengan idempotency key yang sama hingga sistem Flip merespon dengan status PENDING/CANCELLED/DONE
Secara singkat, jika Flip tidak merespon dengan status PENDING/CANCELLED/DONE, silakan dicoba dengan menggunakan idempotency key yang sama. Jika ada lebih dari 1 request dengan idempotency key yang berbeda, maka kami akan menganggap transaksi-transaksi tersebut sebagai transaksi-transaksi yang berbeda.
Dengan ini, kami merekomendasikan dan akan mewajibkan (per 6 Oktober 2020) untuk idempotency key yang digunakan dalam melakukan request transaksi. Kami juga menyarankan untuk idempotency key disimpan di sistem user Flip for Business agar dapat digunakan kembali untuk mencoba transaksi yang tidak direspon PENDING/CANCELLED/DONE.
Komentar
0 komentar
Artikel ditutup - tidak bisa memberikan komentar.