Strategi Fallback
Jika terjadi ketidaktersediaan layanan webhook, disarankan untuk menerapkan mekanisme fallback guna memastikan aplikasi Anda masih dapat mengambil hasil proses dalam waktu respons yang diharapkan.
Cara kerjanya
Webhook adalah mekanisme pengiriman hasil utama. Namun, Anda harus memperlakukan sinyal-sinyal berikut sebagai pemicu tambahan untuk secara aktif mengambil hasil melalui GET /client/v1/process/{processId}:
| Sinyal | Kanal | Yang disediakannya |
|---|---|---|
Callback onFinish | SDK Web / WebMobile | Sinyal akhir perjalanan — tanpa hasil |
Redirect callbackUri | Semua kanal lainnya | Pengalihan URL saja — tanpa hasil |
Baik onFinish maupun callbackUri tidak menyampaikan hasil proses secara langsung. Keduanya hanyalah sinyal akhir perjalanan. Backend Anda bertanggung jawab untuk mengkorelasikan id yang diterima (atau pengalihan) dengan processId yang sebelumnya disimpan, lalu memanggil GetProcess untuk mengambil hasil aktual.
Alur yang direkomendasikan
Setelah sinyal akhir perjalanan diterima, backend Anda harus memanggil GET /client/v1/process/{processId} dan memvalidasi hasilnya dalam urutan berikut:
- Konfirmasi
state = PROCESS_STATE_FINISHED - Evaluasi field
resultdan terapkan aturan bisnis Anda
Hal ini memastikan ketidaktersediaan webhook sementara tidak mengakibatkan hilangnya hasil proses.