Lewati ke konten utama

Webhook: setup dan recovery

Daftarkan endpoint sesuai kontrak, gunakan HTTPS, verifikasi signature sebelum memproses event, dan jawab cepat dengan status yang sesuai. Proses event secara idempotent karena delivery dapat diulang.

Gunakan dead-letter atau retry policy milik integrator. Jangan meminta payload nyata untuk contoh publik dan jangan menaruh secret di log. Untuk insiden delivery, simpan event ID yang sudah direduksi dan request metadata non-sensitif.

Event datang dua kali
Deduplicate berdasarkan identifier kontrak dan status pemrosesan. Jangan melakukan mutation kedua hanya karena delivery diulang.

Consumer yang tahan gangguan

  1. Terima raw body sesuai kebutuhan verifikasi signature.
  2. Verifikasi signature dan timestamp sebelum parsing bisnis.
  3. Tolak request invalid tanpa melakukan perubahan.
  4. Simpan event ID untuk deduplikasi.
  5. Proses secara idempotent.
  6. Tahan event out-of-order sampai state dapat direkonsiliasi.
  7. Kembalikan respons dalam batas waktu dan proses berat secara asynchronous.

Retry berarti event yang sama dapat datang lebih dari sekali. Jangan menggunakan waktu kedatangan sebagai satu-satunya urutan. Simpan hasil pemrosesan dan sediakan replay yang terkontrol tanpa melewati verifikasi.

Skenario wajib

Uji signature invalid, duplicate, delayed, out-of-order, payload unknown, handler timeout, dan recovery setelah dependency pulih. Redaksi payload sebelum masuk log atau alat observability.

Terakhir diverifikasi: 2026-07-24