Bu sayfada
Teslim ve yeniden deneme
Yaklaşık 16 saat içinde 11 webhook teslimat denemesine göre tasarlayın, olayları tekilleştirin, hataları inceleyin ve toparlanma sonrası tekrar gönderin.
Uç noktanız 2xx dışı bir durum döndürürse veya 10 saniyelik zaman aşımını aşarsa, Paymos üstel geri çekilmeyle (x2) yeniden dener. Yaklaşık 16 saat içinde toplam 11 deneme (1 ilk + 10 yeniden deneme).
Geri çekilme takvimi
| Deneme | Öncekinden sonraki gecikme | Kümülatif gecikme |
|---|---|---|
| 1 | anında | 0 |
| 2 | 1 dk | 1 dk |
| 3 | 2 dk | 3 dk |
| 4 | 4 dk | 7 dk |
| 5 | 8 dk | 15 dk |
| 6 | 16 dk | 31 dk |
| 7 | 32 dk | ~1 saat |
| 8 | 1 saat | ~2 saat |
| 9 | 2 saat | ~4 saat |
| 10 | 4 saat | ~8 saat |
| 11 | 8 saat | ~16 saat |
11 denemenin tamamından sonra olay failed olarak işaretlenir. Başarısız olaylar Panel'den tekrar gönderilebilir — tekrar gönderme deneme sayacını sıfırlar ve olayı teslimat için yeniden kuyruğa alır.
Idempotency
Teslimat at-least-once'tır. Yeniden denemeler sırasında yinelenen teslimatlar normaldir — işleyiciniz idempotent olmalıdır. Her teslimat, X-Webhook-Id başlığında (ve gövdedeki event_id alanında) aynı kararlı kimliği taşır; yeniden denemeler ve tekrar gönderimlerde değişmez — gövdeyi ayrıştırmadan ona göre tekilleştirin. İşlenen kimlikleri kalıcı kaydedin ve tekrarları 200 OK işlemsiz olarak ele alın.
Başarılı teslimat sayılan durum
- 10 saniye içinde HTTP
2xxyanıtı → teslimat başarılı - HTTP
4xxveya5xx→ başarısız sayılır, yeniden denenir - Bağlantı reddi, DNS hatası, TLS hatası → başarısız sayılır, yeniden denenir
- 10 saniyeden sonra yanıt → başarısız sayılır, yeniden denenir (uç noktanız kopyayı yine de işleyebilir)
Olay sizin tarafınızda kalıcı kaydedilir kaydedilmez 2xx döndürün. Pahalı işlemleri arka plan kuyruğuna erteleyin; böylece webhook işleyicisi zaman aşımının altında kalır.