Travel Event Reconciliation Architecture

Booking, payment, cancellation ve supplier event'lerini kaynaklar arasında uzlaştıran deterministic reconciliation mimarisini tasarlayın.

Editoryal bilgi
Advertisement

Travel sistemlerinde booking, payment, webhook ve provider report aynı gerçeği farklı zamanlarda ve farklı kimliklerle anlatabilir. Reconciliation katmanının görevi hangi state'in authoritative olduğunu kanıtlamak ve tutarsızlıkları izlenebilir biçimde çözmektir.

Production senaryosu

Booking create timeout oluyor. Provider daha sonra CONFIRMED webhook'u gönderiyor. Payment tarafında capture var; internal DB hâlâ UNKNOWN. Gece gelen supplier report'unda aynı booking reference tekrar görünüyor.

Mimari akış

text
API Response / Webhook / Payment / Supplier Report
 -> Normalize Event
 -> Correlation Keys
 -> Deduplication
 -> Event Ordering
 -> State Comparison
 -> Reconciliation Rule
 -> Corrective Action
 -> Audit Record

Correlation keys

  • internal booking ID
  • booking attempt ID
  • provider reference
  • idempotency key
  • payment transaction ID
  • traveler/product/date composite key

Composite key yalnız fallback olmalı; stable provider/internal identifiers daha güçlüdür.

Reconciliation rule

Her source için authority tanımlayın. Örneğin booking existence için provider booking reference, payment state için PSP transaction state, commercial settlement için matured supplier report daha güçlü olabilir.

Trade-off

Real-time reconciliation düşük latency sağlar ama karmaşıktır. Batch reconciliation daha basittir ama inconsistency daha uzun yaşar.

İkisi birlikte kullanılabilir: critical mismatch için near-real-time, finansal doğrulama için batch.

Failure modes

  • duplicate event,
  • missing webhook,
  • provider report gecikmesi,
  • out-of-order cancellation,
  • payment captured / booking missing,
  • booking confirmed / payment failed,
  • aynı provider reference'ın iki internal record'a bağlanması.

Idempotency ve replay

Reconciliation job tekrar çalıştırılabilir olmalı. Aynı evidence set'i aynı sonucu üretmelidir.

Observability

  • unreconciled count,
  • reconciliation latency,
  • auto-fix rate,
  • manual-review rate,
  • booking/payment divergence,
  • duplicate reference count.

Alternatifler

Düşük hacimli sistemde günlük SQL reconciliation yeterli olabilir. Çok provider ve ödeme akışı olan sistemde explicit event/reconciliation service daha sürdürülebilirdir.

Production checklist

  • source authority matrix
  • stable correlation keys
  • idempotent rules
  • replay support
  • audit trail
  • manual review queue
  • financial vs operational reconciliation separation
Teknik danışmanlık

Mimarinizi birlikte review edelim.

Travel distribution ve metasearch mimarinizi ölçeklenebilirlik, hata senaryoları ve operasyon açısından değerlendirebiliriz.

Projenizi konuşalım →

İlgili içerikler

architecture

Payment + Booking Distributed Transaction

Travel booking'de payment ve supplier booking adımlarını distributed transaction olarak modelleyin; authorize, capture, compensation, UNKNOWN outcome ve reconciliation desenlerini uygulayın.

paymentbookingdistributed-transaction
İncele →
architecture

Booking Lifecycle Event Model

Travel booking state'ini create, confirm, modify, cancel, fail ve reconcile event'leriyle izleyen lifecycle modelini tasarlayın.

bookingeventlifecycle
İ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 →