Rezervasyon Motoru Plus özel ödeme ağ geçidi ve hediye kartı desteği

Genel Bakış

Cloudbeds Rezervasyon Motoru Plus artık özel ödeme ağ geçidi entegrasyonuna veya hediye kartı ödemelerini desteklemeye olanak tanıyor, böylece ödeme seçeneklerini yönetmede daha fazla esneklik sağlıyor.

Diğer özellikler şunlardır:

  • Banka havalesi seçeneği kullanılarak özel ödeme ağ geçidi entegrasyonu
  • Özel misafir alanlarıyla hediye kartı desteği

Önemli Bilgiler

  • Tesislerin, Cloudbeds PMS üzerinde banka havalesi seçeneğini etkinleştirmeleri gerekir ki Rezervasyon Motoru Plus için özel ödeme ağ geçidi ekleyebilsinler.
  • Rezervasyon Motoruna özel ödeme ağ geçidini bildiren bir etkinliği tetiklemek için özel bir JavaScript gereklidir.
  • Sadece bir (1) özel ödeme ağ geçidi entegre edilebilir, yani tesisler hem banka havalesi hem de özel ödeme ağ geçidini aynı anda sunamazlar.
  • Hediye Kartı desteği için, hediye kartı numaralarının girilebilmesi adına özel bir misafir alanı eklenmelidir.
  • Aşağıdaki talimatlar yalnızca Rezervasyon Motoru Plus için geçerlidir. Cloudbeds Rezervasyon Motorunun eski sürümünü kullanan tesisler bu talimatları takip etmelidir.

🚩Başlamadan Önce

  • Not: Burada verilen adımlar, HTML ve CSS konusunda zaten deneyimli olanlar için ek bir bilgi kaynağıdır; sadece deneyimli web geliştiricilere önerilir.
  • Kod zamanla güncelliğini yitirebilir ve ek çalışmalar gerekebilir.
  • Cloudbeds, grup rezervasyon bileşeni oluşturma, rezervasyon motoru özelleştirmesi veya otel web sitesi tasarımı/geliştirmesi konusunda destek sunmamaktadır.
  • Henüz bir web siten yoksa, bu makaleye göz atabilirsin.
  • Zaten bir web siten varsa, rezervasyon motorumuzu kurmak için web tasarımcın veya geliştiricinle iletişime geçmeni öneririz.
  • Özel bir ödeme seçeneği eklemek için, tesislerin Rezervasyon Motorunun sunduğu EventSystemi kullanacak özel bir JavaScripte sahip olmaları gerekir.

Cloudbeds Rezervasyon Motoru'na Üçüncü Taraf Ödeme Ağ Geçitleri ve Hediye Kartları Ekleme

Adım 1 - Özelleştir sekmesine eriş
  1. Hesap Menüsü Account menu.png içindeki Ayarlar sayfasına Settings.png git ve Rezervasyon Motoru bölümüne tıkla
  2. Özelleştir seçeneğine tıkla
  3. JavaScript alanına aşağıdaki kodu ekle; bu kod, Rezervasyon Motoru hazır olduğunda tetiklenen ve dinlenen on-booking-engine-ready etkinliğine abone olur ve EventSystem kullanarak özel ödeme seçeneğinin kullanımını Rezervasyon Motoruna bildirir
  4. Kaydet butonuna tıkla
<script>
window.addEventListener('on-booking-engine-ready', (e) => {
  const { eventSystem } = e.detail;

  eventSystem.dispatchEvent("custom-payment-option-change", {
    id: "%PAYMENT_OPTION_ID%",
    instructions: "Talimatlar için varsayılan metniniz buraya gelecek.",
    name: "Etiket için varsayılan metniniz buraya gelecek.",
  });
});
</script>
Adım 2 - EventSystem kullanımı
  • eventSystem.dispatch() fonksiyonunu kullanarak custom-payment-option-change etkinliğini aşağıdaki veri yükü ile tetikle:

    • id [string] 0'dan büyük uzunlukta ve CSS id olarak geçerli (boşluk, noktalı virgül vb. olmamalı) olmalıdır. Önerilen id formatı: kebab-case. %PAYMENT_OPTION_ID% değerini, özel ödeme ağ geçidiniz için kullanmak istediğiniz id ile değiştir. Bu id, kullanıcı arayüzünü özelleştirmek için CSS seçicilerinde kullanılacak.

    • instructions [string] isteğe bağlıdır - kullanıcı özel ödeme seçeneğine tıkladığında gösterilecek talimatlar veya açıklama (akordeon şeklinde genişler). Tesis bu metni göstermek isterse bu değer tanımlanmalıdır ve belirli diller için CSS ile özelleştirilmezse yedek olarak kullanılır.

    • name [string] 0'dan büyük uzunlukta olmalıdır.

  • Önemli:

    • Etkinlik veri yükü tüm gereksinimleri karşılamazsa, Özel Ödeme Seçeneği kayıt edilmeyecek ve Banka Havalesi seçeneği gösterilmeye devam edecektir.

    • Cloudbeds PMS'de değişiklikleri kaydet ve Rezervasyon Motoruna eriş. Ödeme sayfasında, özel ödeme ağ geçidin varsayılan kart simgesi ile ödeme seçeneği olarak görünecektir.

    • Özel Ödeme seçeneğinin görünümünü özelleştirmek için Cloudbeds PMS'de özel meta etiketleri ekleyerek özel CSS ekleyebilirsin.

Adım 3 - Ek Özelleştirmeler
  • Etiketler için dil bazlı metinler belirtebilirsin:
html[lang="%LANG%"] [data-id="%PAYMENT_OPTION_ID%-name"]::before {
  content: "Etiket için diline özel metnin buraya gelecek.";
}
  • Talimatlar da dil bazlı olarak yapılandırılabilir:
html[lang="%LANG%"] [data-id="%PAYMENT_OPTION_ID%-instructions"]::before {
  content: "Talimatlar için diline özel metnin buraya gelecek.";
}
  • Ayrıca bir özel logo/simge de ekleyebilirsin:
// Varsayılan SVG simgesini gizlemek için
[data-id="%PAYMENT_OPTION_ID%-icon"] svg {
  display: none;
}

// Simgeyi arka plan resmi olarak ayarlayarak özelleştirmek için
[data-id="%PAYMENT_OPTION_ID%-icon"] {
  background-image: url(PAYMENT_OPTION_ICON_URL);
  background-size: cover;
  background-position: center;
  width: 40px;
  height: 40px;
}
  • Bu noktada, ödeme seçeneğini ekledin ve özelleştirdin. Misafir, Özel Ödeme Seçeneği ile rezervasyon yaptığında, rezervasyon Cloudbeds PMS üzerinde e-banking ödeme yöntemi ile oluşturulacak ve biz herhangi bir ödeme tahsil etmeyeceğiz.
  • EventSystem kullanarak, oluşturulan rezervasyonla ilgili verileri almak ve kullanıcıyı ödeme işlemini tamamlaması için ödeme ağ geçidine yönlendirmek amacıyla reservation-created etkinliğini dinleyebilirsin (üçüncü taraf ödeme ağ geçidi entegrasyonları için).
eventSystem.addEventListener('reservation-created', (data) => {
  // Rezervasyon oluşturulduktan sonra çalışacak kodun buraya...
})

  • reservation-created etkinliği tarafından açığa çıkarılan veri şu şekildedir:
interface CreatedReservation {
  booking_id?: `${number}`;
  booking_total?: number;
  checkin_date?: string;
  checkout_date?: string;
  city?: string;
  currency_code?: string;
  hotel_name?: string;
  real_booking_total?: number;
  resRooms?: {
    adults: `${number}`;
    id: `${number}`;
    kids: `${number}`;
    package: `${number}`;
    package_name: string | null;
    rate_id: `${number}`;
    room_total: `${number}`;
    room_type_id: `${number}`;
    room_type_name: string;
    room_type_photos: ({
      TYPE?: string;
      alt: string;
      cropParam: string | null;
      croppedImage: string;
      fullPath: string;
      galleryPath?: string | null;
      id: string;
      imageHeight: string;
      imageWidth: string;
      mime?: string;
      originalName: string;
      ownerId?: string;
      ownerType?: string;
      parentId: string;
      path: string;
      section?: string;
      size?: string;
      thumbPath: string;
      uploadedAt?: string;
      utype?: string;
    } & {
      featured: number;
      featuredPath: string | null;
    })[];
  }[];
  rooms?: Record<string, {="{" adults:="adults:" number;="number;" amount:="amount:" bookedid:="bookedId:" string[];="string[];" kids:="kids:" name:="name:" string;="string;" packageid?:="packageId?:" packagename?:="packageName?:" picture?:="picture?:" price?:="price?:" rateid:="rateId:" roomid:="roomId:" unit?:="unit?:" }="}">;
  state?: string;
  total_tax?: number;
  widget_property?: number;
};</string,>

 

Bu makale yardımcı oldu mu?
4 kişi içerisinden 1 kişi bunun yardımcı olduğunu düşündü

Yorumlar

0 yorum

Yorum yazmak için lütfen oturum açın: oturum aç.