Booking Timeout ve UNKNOWN Outcome Recovery

Travel booking timeout'larında FAILED yerine UNKNOWN state kullanarak lookup, reconciliation ve safe retry kararlarını tasarlayın.

Editoryal bilgi
Advertisement

Booking create request'inin timeout olması booking'in başarısız olduğunu kanıtlamaz. Transport failure ile business outcome'u ayırmak, duplicate booking'i önleyen en kritik kurallardan biridir.

Recovery state machine

UNKNOWN booking recoveryUNKNOWN booking recovery

Mermaid source (.mmd)

Timeout sınıfları

Ayrıştırın:

  • connect timeout: request provider'a hiç gitmemiş olabilir,
  • read timeout: provider request'i işlemiş olabilir,
  • connection reset: outcome belirsiz,
  • client timeout: backend işlemeye devam ediyor olabilir,
  • business timeout: provider booking hala processing olabilir.

Hepsini FAILED yapmak yanlıştır.

Recovery key'leri

Lookup için mümkün olan identity'leri kaydedin:

  • client reference,
  • idempotency key,
  • provider session/token,
  • traveler + itinerary/property fingerprint,
  • payment reference,
  • request correlation ID.

Safe retry gate

Create retry ancak şu koşullarda yapılmalı:

  1. previous attempt terminal FAILED,
  2. provider duplicate protection sağlıyor veya önceki create'in oluşmadığı authoritative olarak doğrulandı,
  3. aynı BookingIntent için retry policy izin veriyor.

UNKNOWN iken blind retry yok.

Reconciliation algorithm

text
if providerReference exists:
  lookup by providerReference
else if clientReference supported:
  lookup by clientReference
else:
  query narrow booking window / fingerprint
if found:
  CONFIRMED
else if provider guarantees lookup completeness:
  FAILED
else:
  remain UNKNOWN and escalate/backoff

"Bulamadım" her provider'da "yok" anlamına gelmez; lookup consistency contract'ı bilinmelidir.

User experience

UNKNOWN internal state'i kullanıcıya doğrudan teknik terimle göstermeyin. UX:

  • "Rezervasyonunuz doğrulanıyor",
  • tekrar satın alma CTA'sını geçici kapatma,
  • duplicate riskini anlatmadan recovery sürdürme,
  • terminal sonuç geldiğinde notification.

Failure modes

  • duplicate create retry,
  • lookup eventual consistency,
  • wrong booking'i fingerprint ile eşleme,
  • UNKNOWN kaydı sonsuza kadar açık bırakma,
  • ops agent'ın ikinci booking açması,
  • payment state'i booking outcome kanıtı sanma.

Observability

  • UNKNOWN creation rate,
  • UNKNOWN age percentiles,
  • resolution source,
  • resolution outcome,
  • duplicate prevention count,
  • manual escalation rate,
  • time-to-confirm/time-to-fail.

Production checklist

  • UNKNOWN first-class state,
  • timeout taxonomy,
  • recovery identity persistence,
  • provider lookup capability map,
  • safe retry gate,
  • backoff,
  • manual escalation,
  • traveler-safe pending UX.
Teknik danışmanlık

Bu problemi production’da mı yaşıyorsunuz?

Semptomu, veri akışını ve entegrasyon davranışını birlikte teknik olarak inceleyebiliriz.

Projenizi konuşalım →

İlgili içerikler

troubleshooting

Booking Timeout / Outcome Unknown Troubleshooting

Travel booking timeout'larında duplicate retry yapmadan evidence, lookup, reconciliation ve recovery adımlarıyla UNKNOWN outcome teşhis edin.

bookingtimeoutunknown
İncele →
operations

Booking Timeout ve Duplicate Booking Playbook

Booking create timeout sonrası unknown state ve duplicate reservation riskini idempotency, lookup ve reconciliation adımlarıyla yönetin.

bookingtimeoutidempotency
İncele →
distribution-api

Hotelbeds API Suite: Bedbank Dağıtım Profili

developer.hotelbeds.com

B2B konaklama dağıtımı için booking, content ve cache API'lerini kapsayan HBX Group Hotelbeds API Suite teknik profili.

hotelbedshbxbedbank
İncele →
distribution

OTA vs Metasearch vs Travel Marketplace: Farklar

OTA, metasearch ve travel marketplace modellerini transaction ownership, supplier relationship, monetization, handoff ve teknik architecture açısından karşılaştırın.

otametasearchtravel-marketplace
İncele →
distribution

Package Holiday vs Hotel Metasearch: Mimari Farklar

Paket tatil dağıtımı ile hotel metasearch modelini offer identity, pricing, supplier topology, booking ownership ve cancellation açısından karşılaştırın.

package-holidayhotel-metasearchtour-operator
İncele →
distribution-api

Sabre Travel APIs: GDS ve Travel Distribution Profili

developer.sabre.com

Air, lodging, car, booking ve agency workflow'larını kapsayan Sabre Travel APIs için teknik GDS ve dağıtım profili.

sabregdsflight-api
İncele →