İçeriğe geç
OmniChannels.ai

CRM'i Webhook'larla Omnichannel Gelen Kutusuna Bağlama

CRM'i omnichannel gelen kutusuna webhook'larla bağlayın: senkronize edilecek olaylar, idempotency, yeniden deneme, kişi eşleştirme, veri gizliliği ve referans mimari.

Güncelleme 8 dk okuma

Yazar: OmniChannels.ai Editorial Team · İnceleyen: BroadNet Messaging Solutions Team

Entegrasyon

Kısa yanıt

CRM'i omnichannel gelen kutusuna bağlamak için konuşma ve mesaj olayları için gelen kutusu webhook'larına abone olun; olayları imzaları doğrulayan ve her olayı olay kimliğiyle yalnızca bir kez kaydeden küçük bir uç noktada alın, ardından eşzamansız işleyin: göndereni normalleştirilmiş telefon, e-posta veya sosyal medya kimliğiyle bir CRM kişisiyle eşleştirin ve etkinlikleri geri yazın. CRM iş akışlarından mesaj göndermek veya sahipliği güncellemek için gelen kutusu API'sini diğer yönde kullanın.

Bu sayfada
  1. CRM ve omnichannel gelen kutusu neleri değiş tokuş etmeli?
  2. Hangi webhook olaylarına abone olmalısınız?
  3. Güvenilir bir webhook alıcısı nasıl kurulur?
  4. Kişiler kanallar arasında nasıl eşleştirilmeli?
  5. CRM entegrasyonunda veri gizliliği nasıl ele alınır?
  6. Referans mimari nasıl görünür?
  7. Uygulamalı örnek: Cidde'de bir klinik grubu
  8. Sık yapılan hatalar nelerdir?
  9. OmniChannels.ai nasıl yardımcı olur?

Öne çıkan noktalar

  • Webhook'lar olayları gelen kutusundan CRM'e neredeyse gerçek zamanlı iletir; API'ler ise diğer yönde veri çeker veya eylem tetikler. Sağlam bir entegrasyon ikisini de kullanır.
  • Webhook teslimi genellikle en az bir kez gerçekleşir; bu yüzden alıcı, olay kimliğine göre mükerrer kayıtları ayıklamalı ve sırasız gelen olaylara tolerans göstermelidir.
  • Webhook'ları hızla onaylayın ve CRM işini bir arka plan kuyruğunda yapın; böylece yavaş CRM çağrıları yeniden denemeleri ve mükerrer kayıtları tetiklemez.
  • Kişileri E.164 telefon numaraları ve küçük harfli e-posta adresleri gibi normalleştirilmiş tanımlayıcılarla eşleştirin; kayıtları asla yalnızca ada göre birleştirmeyin.
  • CRM'e yalnızca gereken veriyi gönderin, özet yeterliyse mesaj içeriğini CRM dışında tutun ve GDPR ile BAE ve Suudi Arabistan veri koruma yasaları gibi uygulanan gizlilik mevzuatına uyun.

Bu rehber; CRM'lerinin ve omnichannel gelen kutularının müşteriye dair tek bir görünümü paylaşmasını isteyen CTO'lar, çözüm mimarları ve CRM yöneticileri içindir. Hangi olayların senkronize edileceğini, yeniden denemelere ve mükerrer kayıtlara dayanıklı bir webhook alıcısının nasıl kurulacağını, kişilerin WhatsApp, Instagram ve e-posta arasında nasıl eşleştirileceğini ve tasarımı hangi gizlilik kurallarının şekillendirdiğini açıklar.

CRM ve omnichannel gelen kutusu neleri değiş tokuş etmeli?

Gelen kutusu CRM'e size kimin, hangi kanaldan, ne hakkında ulaştığını ve sonucun ne olduğunu söylemelidir. CRM de gelen kutusuna müşterinin kim olduğunu, sahibinin kim olduğunu ve temsilcilerin hangi bağlama ihtiyaç duyduğunu söylemelidir.

Yön Veri Tipik kullanım
Gelen kutusundan CRM'e Yeni konuşma, kanal, kişi tanımlayıcıları Kişi oluşturma veya güncelleme, etkinlik kaydı
Gelen kutusundan CRM'e Atama ve durum değişiklikleri, çözüm Talep veya fırsat zaman çizelgesini güncelleme, işlem süresini raporlama
Gelen kutusundan CRM'e Giden şablonlar için mesaj iletim durumu Kampanya veya bildirim sonuçlarını izleme
CRM'den gelen kutusuna Kişi adı, dil, hesap sahibi, seviye Yönlendirme ve kişiselleştirme
CRM'den gelen kutusuna Onaylı bir şablon gönderme tetikleyicisi Sipariş, randevu veya talep güncellemeleri
CRM'den gelen kutusuna Sahiplik değişikliği Geri dönen müşterileri hesap yöneticisine yönlendirme

Gerçek bir iş akışını destekleyen en küçük kümeyle başlayın. Her mesaj gövdesini CRM'e senkronize etmek nadiren gerekir ve gizlilik riskini artırır.

Hangi webhook olaylarına abone olmalısınız?

Yalnızca mesajlara değil, yaşam döngüsü olaylarına abone olun. Tam olay adları platformlar arasında farklılık gösterir; bu yüzden bunları şu kategorilere eşleyin:

  • Konuşma oluşturuldu — bir müşterinin herhangi bir kanaldan gönderdiği ilk mesaj.
  • Mesaj alındı — kanal ve gönderen tanımlayıcısıyla birlikte gelen müşteri mesajı.
  • Mesaj gönderildi — giden temsilci veya şablon mesajı.
  • Mesaj durumu — kanal bildirdiği ölçüde gönderildi, iletildi, okundu veya başarısız.
  • Konuşma atandı — sahip veya kuyruk değişti.
  • Konuşma çözüldü veya yeniden açıldı — durum geçişleri.
  • Kişi güncellendi — tanımlayıcılar veya öznitelikler gelen kutusunda değişti.

WhatsApp için Meta'nın kendi webhook'ları gelen mesajları ve giden mesajların durum güncellemelerini platforma iletir; gelen kutusu sağlayıcınız ise kendi olaylarını sistemlerinize sunar.

Güvenilir bir webhook alıcısı nasıl kurulur?

Hızlı kabul edin, doğrulayın, bir kez kaydedin, sonra işleyin. İletim sorunlarının çoğu, CRM işinin webhook isteği içinde yapılmasından kaynaklanır.

Adım adım alıcı tasarımı

  1. Ortam başına, örneğin /webhooks/inbox gibi tek bir HTTPS uç noktası sunun.
  2. Gerçekliği doğrulayın. İmzayı (genellikle RFC 2104'te tanımlandığı üzere paylaşılan bir gizli anahtarla ham gövdenin HMAC'i) veya göndericinin belgelediği belirteci kontrol edin. JSON'u ayrıştırmadan önce ham baytlar üzerinde hesaplayın.
  3. Güncelliği kontrol edin. Bir zaman damgası varsa, tekrar saldırılarını sınırlamak için kısa bir toleransın dışındaki olayları reddedin.
  4. Mükerrer kayıtları ayıklayın. Olay kimliğini benzersiz kısıtlamalı bir tabloya ekleyin. Kimlik zaten var olduğu için ekleme başarısız olursa başarı döndürün ve durun.
  5. Kuyruğa alın. Olayı bir kuyruğa koyun ve hemen 2xx yanıtı döndürün.
  6. Eşzamansız işleyin. Bir çalışan kuyruğu okur, kişiyi eşleştirir ve upsert'lerle CRM'e yazar.
  7. Geri çekilmeyle yeniden deneyin. CRM kapalıysa kuyruğunuzdan üstel geri çekilmeyle yeniden deneyin; göndericinin yeniden denemelerine güvenmeyin.
  8. Ölü mektup kuyruğu. Birkaç başarısızlıktan sonra olayı bir ölü mektup kuyruğuna taşıyın ve bir kişiyi uyarın.
  9. Mutabakat yapın. Son gelen kutusu konuşmalarını CRM kayıtlarıyla karşılaştıran ve boşlukları gelen kutusu API'sinden dolduran periyodik bir iş çalıştırın.

Idempotency ve sıralama neden önemli?

Webhook göndericileri genellikle zamanında başarı yanıtı alamadıklarında yeniden dener; bu da teslimi en az bir kez yapar. Aynı olay iki kez gelebilir ve bir "çözüldü" olayı son "mesaj alındı" olayından önce ulaşabilir. Bunu şöyle ele alın:

  • Olay kimliğini mükerrer kayıt ayıklama anahtarı olarak kullanın.
  • CRM'de konuşma veya mesaj kimliğine dayalı upsert'ler kullanın.
  • Olay zaman damgalarını veya sıra numaralarını karşılaştırın ve daha eski durumu yok sayın.

CRM iş akışınız mesaj göndermek için gelen kutusu API'sini çağırdığında, API destekliyorsa bir idempotency anahtarı geçin; Idempotency-Key HTTP başlığı için hazırlanan IETF taslağı yaygın deseni açıklar.

Kişiler kanallar arasında nasıl eşleştirilmeli?

Normalleştirilmiş tanımlayıcılarla eşleştirin, deterministik eşleşmeleri tercih edin ve belirsizliği bir kişiye yönlendirin.

Tanımlayıcı Şu şekilde normalleştirin Eşleşme güveni Notlar
WhatsApp veya SMS telefon numarası E.164, örneğin +9715XXXXXXXX Yüksek Baştaki sıfırlı yerel biçimlere dikkat edin
E-posta adresi Küçük harf, kırpılmış Yüksek Takma adlar aynı kişi olabilir; varsaymayın
Instagram hesabı Platform kapsamlı kullanıcı kimliği O hesap içinde yüksek Kullanıcı adları değişebilir; yalnızca kullanıcı adını değil, kimliği saklayın
Telegram kullanıcısı Platform kullanıcı kimliği O bot veya hesap içinde yüksek Telefon paylaşılmayabilir
İsim Tek başına kullanılmaz Düşük Asla ada göre birleştirmeyin

Karar kuralları:

  1. Tek bir tam eşleşme: bağlayın.
  2. Eşleşme yok: kaynak kanalla birlikte bir potansiyel müşteri veya "eşleşmemiş kişi" oluşturun.
  3. Birden fazla eşleşme: bir temsilci için işaretleyin, otomatik birleştirmeyin.
  4. Müşteri konuşmada başka bir tanımlayıcıyı doğruluyor: kanıtın notuyla birlikte bağlayın.

CRM entegrasyonunda veri gizliliği nasıl ele alınır?

Her sistemin yalnızca ihtiyaç duyduğu veriyi taşıyın, nedenini belgeleyin ve silmenin iki sistemde de çalışmasını sağlayın.

  • Veri minimizasyonu. CRM'de konuşma bağlantılarını, sonuçları ve özetleri saklayın; tanımlı bir amaç yoksa dökümlerin tamamını gelen kutusunda tutun.
  • Hukuki dayanak ve izin. Pazarlama opt-in'ini kanal başına kaydedin; bir destek konuşması pazarlama şablonları için izin değildir.
  • Saklama. Saklama sürelerini gelen kutusu, CRM, kuyruklar ve günlüklerde hizalayın; webhook yük günlükleri çoğu zaman unutulur.
  • Erişim kontrolü. CRM'de mesaj içeriğini ve ekleri kimlerin görebileceğini sınırlayın.
  • Silme ve erişim talepleri. Bir sistemdeki talebin diğerine yayılmasını sağlayın.
  • Sınır ötesi aktarımlar. Her sistemin veriyi nerede sakladığını kontrol edin. GDPR, AB'deki kişilerin kişisel verileri için geçerlidir; BAE ve Suudi Arabistan'ın da kendi kişisel veri koruma yasaları vardır. Güncel yükümlülükleri ilgili düzenleyici ve hukuk ekibinizle teyit edin.

Referans mimari nasıl görünür?

Metin biçiminde akış şöyledir: kanallardan gelen kutusuna, gelen kutusundan alıcıya, alıcıdan kuyruğa, kuyruktan çalışana, çalışandan CRM'e ve CRM iş akışlarından gelen kutusu API'sine geri.

Bileşen Sorumluluk Temel tasarım tercihi
Kanallar (WhatsApp, Instagram, e-posta, Telegram) Müşteri mesajlarını gelen kutusuna iletir Her platformun kurallarına tabidir
Omnichannel gelen kutusu Konuşmalar, atama, temsilciler, olaylar Webhook yayar; API sunar
Webhook alıcısı Doğrulama, mükerrer kayıt ayıklama, kuyruğa alma Durumsuz, hızlı 2xx yanıtı
Olay deposu ve kuyruk Kalıcı tampon, yeniden oynatma Benzersiz olay kimliği, ölü mektup kuyruğu
Senkronizasyon çalışanı Kişi eşleştirme, CRM upsert'leri Idempotent yazmalar, geri çekilme
CRM Kişiler, fırsatlar, talepler, iş akışları Gelen kutusu API'sini idempotency anahtarlarıyla çağırır
Mutabakat işi Boşlukları tespit etme ve giderme Zamanlanmış çalışır
İzleme Gecikme, hatalar, ölü mektuplar Bir sahibe uyarılar

Uygulamalı örnek: Cidde'de bir klinik grubu

Suudi Arabistan'da kurgusal bir sağlık grubu olan "Wahat Clinics", hasta randevuları için bir CRM'i, WhatsApp ve e-posta için bir gelen kutusunu kullanıyor.

  • Bir hasta WhatsApp'tan mesaj yazıyor. Gelen kutusu bir konuşma oluşturuldu olayı yayar; alıcı doğrular, kaydeder ve kuyruğa alır.
  • Çalışan numarayı E.164'e normalleştirir, tek bir hasta kaydı bulur ve mesaj metnini değil, konuşmaya bir bağlantıyı içeren bir etkinlik kaydeder.
  • CRM hastanın tercih ettiği dili Arapça olarak gösterir ve gelen kutusuna iletir; gelen kutusu da Arapça kuyruğuna yönlendirir.
  • Randevu CRM'de alındığında bir iş akışı, gelen kutusu API'sini çağırarak onaylı bir bilgilendirme (Utility) şablon onayı gönderir; yeniden deneme iki onay göndermesin diye idempotency anahtarı olarak randevu kimliğini geçirir.
  • Gelen kutusunun "mesaj iletildi" olayı randevu kaydını günceller.

Sık yapılan hatalar nelerdir?

  • Zaman aşımlarına, yeniden denemelere ve mükerrer kayıtlara yol açan CRM yazmalarını webhook isteği içinde yapmak.
  • Mükerrer etkinlik ve kişi oluşturan mükerrer kayıt ayıklamanın olmaması.
  • +971 ve 0 biçimlerinin hiç buluşmamasına yol açan normalleştirilmemiş telefon numaralarıyla eşleştirmek.
  • İsme veya kısmi eşleşmelere göre otomatik birleştirmek.
  • Tüm mesaj içeriğini amaç veya saklama kuralı olmadan CRM'e kopyalamak.
  • Kaçırılan bir olayın kalıcı sapmaya dönüşmesine yol açan mutabakatın olmaması.
  • Kaynak kodda gizli anahtarlar ve bir döndürme planının olmaması.

OmniChannels.ai nasıl yardımcı olur?

BroadNet Technologies tarafından desteklenen OmniChannels.ai; WhatsApp, Instagram, Messenger, Telegram ve e-posta konuşmalarını temsilci atama ve etiketlemeyle tek bir Omni Inbox'ta toplar; ayrıca Meta Embedded Signup ile WhatsApp kurulumunu ve değişkenli, medyalı ve butonlu onaylı şablonları sunar. CRM entegrasyonu için REST API OpenAPI 3.1 şemasıyla herkese açık biçimde belgelenmiştir; webhook'lar iletim durumlarını (SENT, DELIVERED, READ, FAILED ve daha fazlası) tek bir normalleştirilmiş biçimde bildirir. Filtreli ve CSV dışa aktarımlı iletim raporları mutabakatı destekler. Geliştiriciler sayfasından başlayın.

Sık sorulan sorular

CRM entegrasyonunda webhook ile API arasındaki fark nedir?

Webhook, yeni bir mesaj veya çözülen bir konuşma gibi bir şey olduğunda gelen kutusunun uç noktanıza gönderdiği HTTP isteğidir. API ise sisteminizin veri okumak veya yanıt göndermek ya da konuşmayı yeniden atamak gibi eylemler gerçekleştirmek için çağırdığı bir şeydir. Webhook'lar CRM'i yoklama (polling) olmadan güncel tutar; API'ler CRM iş akışlarının gelen kutusu üzerinde işlem yapmasına izin verir.

Webhook'lar için idempotency ne anlama gelir?

Idempotency, aynı olayı iki kez işlemenin bir kez işlemekle aynı etkiyi yaratması demektir. Webhook göndericileri zamanında başarı yanıtı alamadıklarında yeniden denediği için uç noktanız mükerrer kayıtlar alabilir. Her olayın benzersiz kimliğini saklayın, daha önce işlenmiş kimlikleri atlayın ve CRM yazma işlemlerini upsert olarak tasarlayın; böylece tekrarlanan bir olay ikinci bir etkinlik ya da kişi oluşturamaz.

Bir WhatsApp numarasını CRM kişisiyle nasıl eşleştirirsiniz?

Her iki tarafı ülke kodu içeren, boşluksuz ve baştaki sıfırlardan arınmış uluslararası E.164 biçimine normalleştirin, ardından CRM'de bu değerle arama yapın. Tam olarak bir kişi eşleşirse bağlayın. Hiç eşleşme yoksa bir potansiyel müşteri veya eşleşmemiş kişi oluşturun. Birden fazla eşleşme varsa tahmin yürütmeyin; konuşmayı bir temsilcinin seçmesi için işaretleyin ve kararı bir sonraki sefer için kaydedin.

Sohbet dökümlerinin tamamı CRM'de saklanmalı mı?

Yalnızca net bir amacınız ve hukuki dayanağınız varsa. Birçok ekip CRM'de konuşmaya bir bağlantı, bir özet, sonuç ve zaman damgalarını saklarken, dökümün tamamı kendi erişim kontrolleri ve saklama süresiyle gelen kutusunda kalır. Bu, mükerrer kişisel veriyi azaltır ve GDPR gibi yasalar kapsamında silme taleplerinin yerine getirilmesini kolaylaştırır.

Webhook uç noktaları nasıl güvenceye alınmalı?

Uç noktayı yalnızca HTTPS üzerinden sunun, göndericinin her isteğe eklediği imzayı veya paylaşılan gizli anahtarı doğrulayın, tekrar saldırılarını sınırlamak için eski zaman damgalı istekleri reddedin ve gizli anahtarları kodda değil, bir gizli anahtar yöneticisinde tutun. Uç noktanın yapabileceklerini kısıtlayın: yalnızca olayları kuyruğa almalı, CRM verisini açığa çıkarmamalı veya rastgele komutları kabul etmemelidir.

Kaynaklar

  1. Webhook'lar — WhatsApp Cloud API, Meta for Developers
  2. Idempotency-Key HTTP Başlık Alanı — IETF HTTPAPI Çalışma Grubu taslağı
  3. RFC 2104: HMAC — Mesaj Doğrulama için Anahtarlı Özetleme
  4. (AB) 2016/679 Sayılı Tüzük (GDPR) — EUR-Lex
  5. Veri koruma yasaları — BAE Hükümeti portalı (u.ae)