İçeriğe geç

Canlıya çıkış

Bağlantınızı test istemcisiyle tamamladıktan sonra bu listeyi gözden geçirin. Hepsi tamamsa size verilen iletişim kanalından Trimango ekibine yazın; canlı istemciniz açılır.

  • Gizli anahtar yalnız sunucuda (ortam değişkeni ya da sır yöneticisi); tarayıcıda, acente ekranlarında, kaynak kodunda ve günlüklerde yok.
  • Bütün çağrılar sizin sunucunuzdan yapılıyor; acentelerin tarayıcısı Trimango’yu doğrudan çağırmıyor.
  • 401 alındığında yeniden deneme yapılmıyor, alarm üretiliyor.
  • Taban adres, istemci kimliği, gizli anahtar ve webhook imza anahtarı yapılandırmadan okunuyor; koda gömülü değil.
  • Hata kararları title’a değil type’a ve HTTP koduna göre veriliyor; tanınmayan type HTTP koduna düşüyor.
  • 422 yanıtındaki errors mesajları ilgili alanla birlikte acenteye gösteriliyor.
  • 429’da Retry-After başlığı ya da gövdedeki retry_after kadar bekleniyor; beklerken aynı istemciyle istek gönderilmiyor.
  • Bağlantı hatası, zaman aşımı ve 5xx’te artan aralıklarla, sınırlı sayıda yeniden deneniyor.
  • Bilinmeyen yanıt alanları ve tanınmayan sabit değerler (status, reason) uygulamayı bozmuyor.
  • Villalar kendi tarafınızda id ile saklanıyor; slug ve code değişince kayıt kopmuyor.
  • GET isteklerinde ETag saklanıyor ve If-None-Match ile gönderiliyor.
  • Eşitleme işi dakikalık sınırın yarısını geçmiyor; 429’da duraklıyor.
  • Listeden çıkan ya da detayı 404 dönen villa satıştan kaldırılıyor.
  • Webhook kullanılsa da düzenli yedek kontrol çalışıyor (ör. saatte bir özet, günde bir tam detay).
  • Gösterilen fiyatlar teklif uçlarından (*_try) alınıyor; sezon fiyatlarından elle hesaplanmıyor.
  • Talepten hemen önce POST /quotes ile teklif yeniden alınıyor; bookable: false ise talep gönderilmiyor ve reason acenteye gösteriliyor.
  • Talepte expected_total gönderiliyor; 409 reservation:price-changed gelirse yeni toplam gösterilip onay alınıyor ve aynı submission_id ile yeniden gönderiliyor.
  • submission_id her talep için bir kez üretiliyor; yeniden denemede ve zaman aşımından sonra aynısı kullanılıyor.
  • Misafir telefonu ülke koduyla gönderiliyor; language her talepte var.
  • Talep yanıtındaki rezervasyon code, access_token ve access_expires_at saklanıyor.
  • Acenteye talebin kesin rezervasyon olmadığı açıkça gösteriliyor: requested ve awaiting_payment opsiyondur, option_expires_at’e kadar geçerlidir. Kesinleşme confirmed ile olur.
  • Misafirden sizin tarafınızda ödeme alınmıyor; ödeme linkini misafire Trimango ekibi gönderir.
  • Rezervasyon durumu GET /reservations/{code} ile ölçülü aralıklarla okunuyor; süresi dolan erişim anahtarı POST /reservations/lookup ile yenileniyor.
  • Adres https ile başlıyor ve dışarıdan erişilebiliyor.
  • Önce zaman damgası (X-Trimango-Timestamp, ±5 dakika), sonra imza (X-Trimango-Signature) doğrulanıyor; imza ham gövde üzerinden hesaplanıyor ve sabit sürede karşılaştırılıyor. Sunucu saati NTP ile eşitli.
  • Yanıt 10 saniye içinde 2xx; asıl iş arka planda yapılıyor.
  • Aynı olay id’si ikinci kez gelirse yeniden işlenmeden 2xx dönülüyor.
  • Tanınmayan olay türü ve kapsam hata vermiyor; gerekirse geniş yenilemeye düşüyor.
  • Trimango ekibinin gönderdiği test olayı başarıyla alındı.

Ayrıntı: Webhook.

  1. Trimango ekibi canlı istemcinizi açar ve size canlı taban adresi, istemci kimliği ve gizli anahtarı iletir. Webhook kullanıyorsanız canlı webhook adresinizi bildirin; canlı imza anahtarı ayrıca verilir.
  2. Canlı bilgileri canlı ortamınızın yapılandırmasına girin. Test ve canlı bilgileri karıştırmayın: test kimliği canlı adreste 401 alır.
  3. GET /site canlı istemciyle 200 dönüyor ve name beklediğiniz kayıt.
  4. Kataloğun ilk tam eşitlemesini canlıda yapın. Test ortamından aldığınız villa kayıtlarını, rezervasyonları ve ETag’leri canlıya taşımayın; hepsini canlıdan yeniden alın.
  5. İlk gerçek talebi Trimango ekibiyle birlikte izleyin.
  6. Test istemcisini geliştirme ve deneme için saklayın; artık kullanmayacaksanız iptal edilmesini isteyin.