Ana içeriğe geç

Müşteri tutma – müşteriyi kaybetmeden önce kurtarın: e-posta ile veya HubSpot'ta her olumsuz yanıt üzerine hemen harekete geçin

Bir müşteri Survio anketinizde düşük puan verdiği anda, tamamı ile birlikte yanıtı içeren bir e-posta alın veya HubSpot'taki kontakte arama görevi oluşturun; böylece müşteriniz ayrılmadan önce ulaşabilirsiniz.

Yazar: Success Team Survio

Hangi senaryo size uygun?

Senaryo A – basit, herkes için: Her olumsuz anket yanıtı doğrudan e-postanıza gelir.

Senaryo B – bir CRM kullanan ekipler için: Her memnuniyetsiz müşteri için HubSpot'taki kontaktına otomatik arama görevi eklenir; ekibiniz aynı gün ulaşır.

Bir müşteri memnun değilse ilk saatler onun kalıp kalmayacağını belirler. Bu kurulum ile anketinizdeki düşük puanlı her yanıt, tamamı ve müşterinin iletişim bilgileriyle birlikte saniyeler içinde size ulaşır; böylece hâlâ fırsat varken arayabilir veya yazabilirsiniz.
​

Senaryo A'da her olumsuz yanıt için aldığınız e-posta şöyle görünür:
​

Unhappy customer e-mail in Gmail with the whole response


​

Senaryo B’de ekibinizin HubSpot'ta aldığı arama görevi şöyle görünür:
​

Call unhappy customer task on a HubSpot contact with the whole response

Nasıl çalışır. Survio, tamamlanan her yanıtı bir webhook URL'sine gönderir. Otomasyon aracı (bu rehberde n8n kullanıyoruz) bunu alır, müşterinin memnun olup olmadığını kontrol eder ve memnun değilse size e-posta gönderir veya HubSpot'ta görev açar. Olumlu yanıtlar yok sayılır.

Survio'da webhooks kullanımı hakkında bilginiz yok mu? Önce Webhooks: yanıtları diğer araçlarınıza gerçek zamanlı göndermek makalesine göz atın, sonra buraya dönün.
​

Neyi oluşturacaksınız

Her iki senaryoda da olumsuz yanıt demek: 5 üzerinden 1 veya 2 puan veya "Pek memnun değilim" veya "Memnun değilim" cevabı alınmasıdır.

Kısa bakış

Senaryo A: size e-posta

Senaryo B: HubSpot'ta görev

Sonuç

Tüm yanıt komple gelen kutunuzda

Müşterinin HubSpot kontaktında o gün için arama görevi ve tüm yanıt

Araçlar

Survio, n8n, Gmail

Survio, n8n, HubSpot

En iyi kim için

Olumsuz müşteriyle kendisi ilgilenen sahipler

CRM ile müşteri takibi yapan ekipler

Başlamadan önce

  • Bir ücretli Survio anketi. Webhooks Ücretsiz planda yoktur ve her plan, anket başına belirli sayıda webhook izin verir (bkz. webhooks makalesi).

  • Bir n8n hesabı, n8n Cloud veya kendi barındırdığınız n8n.

  • Senaryo A: uyarı için bir Gmail hesabı. Senaryo B: bir HubSpot hesabı.

Bu rehberde kısa bir müşteri memnuniyeti anketi kullanıyoruz: yıldız derecelendirme, "Genel olarak memnun musunuz?" tek seçenekli soru, “Bu alışverişi bizimle nasıl yaptınız?” çoktan seçmeli soru, açık uçlu yorum ve isteğe bağlı e-posta sorusu.
​

1. adım — Kimin yanıtladığını bilmek için hazırlanın

Kimin yanıtladığını bilmek, müşteriye ulaşabilmenizi sağlar; şart değildir. Olmadan da Senaryo A her olumsuz yanıtı yollar, sadece kimin yazdığını göremezsiniz. Senaryo B için, HubSpot kontaktına görev ekleyebilmek için müşterinin e-postası gerekir.

Survio yanıtları, siz iletişim toplamazsanız anonim kalır. Şunları kullanabilirsiniz:

  • Anketin sonunda isteğe bağlı e-posta sorusu, örn. "Yanıtınıza geri dönmemizi isterseniz e-posta adresinizi bırakın." E-posta yanıtı soru tipini seçin.

  • Kendi müşteri bilgileriniz ile özel URL parametreleri. Yanıtları al → Özel URL parametrelerine gidin, "email", "order-id" gibi parametreler oluşturun ve bunların değerlerini müşteriye gönderdiğiniz bağlantıya ekleyin (ör. sipariş onay e-postasında). Parametre adında alt çizgi olamaz. Bkz. Özel URL parametreleri.

  • Survio e-posta davetleri kullanın. Anketi Survio'nun kendi e-posta davetiyle yollarsanız, gönderdiğiniz adres her yanıtla birlikte gelir. Bkz. E-posta davetleri.

E-mail answer question in the Survio survey editor
URL parameters email and order-id in Survio
Survey link with the email and order-id parameters


​

2. adım — n8n'de webhook oluşturun

  1. n8n’de yeni bir iş akışı oluşturup bir Webhook düğümünü tetikleyiciye ekleyin.

  2. HTTP Method olarak POST seçin.

  3. Production URL sekmesine geçin ve adresi kopyalayın.

  4. Yayınla'ya tıklayın. Production URL sadece iş akışı yayınlandığında teslim alır.

n8n Webhook node with HTTP Method POST and the Production URL tab
Published button in the n8n editor

Production URL yerine Test URL kullanmayın. Test URL sadece editör dinlerken çalışır; editörü kapatınca Survio iletimleri başarısız olur. Survio başarısız teslimatı yaklaşık bir gün boyunca tekrar dener, 5 gün sonunda webhook'u kapatır.

3. adım — Survio’da anketinizi bağlayın

  1. Anketinizi açın, Yanıtları al bölümüne gidin.

  2. Sol çubuktan Otomasyonlar & Entegrasyonlar altında Webhooks'u seçin ve + Webhook ekle'ye tıklayın.

  3. n8n Production URL'sini Webhook URL alanına yapıştırın ve Webhook'u kaydet'e tıklayın. Webhook hemen etkinleşir.

Add a webhook dialog in Survio with the n8n Production URL filled in
Saved webhook in Survio, switched on


​

4. adım — Test yanıtı gönderin ve soru id’lerinizi bulun

  1. Anketinizi normal linkiyle açın ve düşük puanlı bir yanıt gönderin. Survio sadece tamamlanan yanıtları yollar; sona kadar tıklayın.

  2. n8n’de Yürütmeler sekmesini açın. Teslimat birkaç saniyede gözükür.

  3. Yürütme'yi açın, Webhook düğümüne tıklayın. body → data → answers içini açın. Her yanıtın question.id, label, answer alanı burada.

  4. Puan, memnuniyet ve e-posta sorularının id’lerini not edin. Pin ile yanıtı sabitleyebilirsiniz.

Executions tab in n8n with successful runs
Webhook node output in n8n: body, data, answers

Müşterinin e-postası nereden gelir. data.email sadece anket Survio e-posta davetiyle gönderilirse dolar. E-posta sorusundan ise yanıt alanında, URL parametresinden ise data.parameters içinde gelir. Hazır iş akışları bu üç kaynağı da kontrol eder.

Senaryo A — Her olumsuz yanıt için e-posta alın

Webhook'u iki adım takip eder: Olumsuz mu? sadece olumsuz yanıtları geçirir ve Yanıtı ilet bunları e-posta ile size yollar.

Olumsuz mu?

  1. Webhook'un ardından bir If düğünü ekleyin, adını Olumsuz mu? yapın.

  2. Üç koşul ekleyin ve VEYA ile birleştirin, herhangi biri yeterli:

Değer

Koşul

Karşılaştır

{{ $json.body.data.answers.find(a => a.question.id === 90403153)?.answer ?? 99 }}

Sayı: küçük/eşit

2

{{ $json.body.data.answers.find(a => a.question.id === 90403151)?.answer?.labels?.[0] ?? "" }}

Dize: eşit

Pek memnun değilim

{{ $json.body.data.answers.find(a => a.question.id === 90403151)?.answer?.labels?.[0] ?? "" }}

Dize: eşit

Memnun değilim

90403153 (puan) ve 90403151 (memnuniyet sorusu) id'lerini kendi anketinizdeki ile değiştirin. ?? 99 puan yoksa olumlu sayar.

If node Unhappy? with three conditions combined with OR

Yanıt metinleri tam eşleşmeli. Seçenekleri anketinizde tam gösterildiği gibi yazınız. Çoklu dil varsa, her bir dil için test edin ve ekleyin.

Yanıtı ilet

  1. Olumsuz mu? (true çıkışı) bir Gmail düğümüne bağlayın, adını Yanıtı ilet yapın, Mesaj ve Gönder seçin.

  2. Gmail hesabınızı bağlayın, Alıcı kısmına adresinizi yazın.

  3. Konuya Memnun olmayan müşteri: {{ $json.body.data.answers.find(a => a.question.id === 90403153)?.answer ?? "?" }}/5 yazın.

  4. E-posta türü olarak HTML seçin. Mesaj kısmına yanıtı tüm detaylarıyla listeleyin; örnek akışta, her soru ve cevabı, zaman, sipariş, iletişim görünür.

  5. Seçeneklerde n8n Attribution'u ekle kapalı kalsın.

Gmail node Forward the response with To, Subject and Message

False çıkışına bir şey bağlamayın: olumlu yanıtlar burada biter. Değişiklik sonrası tekrar Yayınla’ya tıklayın.

n8n workflow: Survio Webhook, Unhappy?, Forward the response


​

Senaryo B — HubSpot'ta arama görevi oluşturun

Burada olumsuz yanıt bir çağrı görevine döner; HubSpot'taki kontaktınıza o gün için, yanıtın tamamı ile birlikte atanır. HubSpot, kontaktı bulmak için müşterinin e-postasına ihtiyaç duyar; bu yöntem, en iyi Survio e-posta davetleri ile veya 1. adımda anlatılan "email" URL parametresi ile çalışır.
​

Yine Olumsuz mu? adımı ile başlayın, ardından true çıkışında aşağıdaki üç adımı ekleyin.
​

Görevi hazırla

Edit Fields (Set) düğümü ekleyin, adını Görevi hazırla yapın ve şu String alanlarını oluşturun. Soru id'lerini kendinize göre, Europe/Prague ifadesini kendi zaman diliminize göre değiştirin.

Alan adı

Değer

E-posta

{{ $json.body.data.email || $json.body.data.parameters?.email || $json.body.data.answers.find(a => a.question.id === 90403187)?.answer || "" }}

Konu

Memnun olmayan müşteri araması: {{ $json.body.data.answers.find(a => a.question.id === 90403153)?.answer }}/5, sipariş {{ $json.body.data.parameters?.['order-id'] }}

Gövde

Puan, memnuniyet, kanal, yorum, sipariş ve zaman, <br> ile ayrılır (her biri HubSpot'ta ayrı satıra gelir; hazır iş akışında örneğine bakabilirsiniz)

Kontak bul ya da oluştur

Kontak bul ya da oluştur adında HubSpot düğümü ekleyin, kaynak Contact ve işlem Create or Update. HubSpot hesabınızı bağlayın, Email alanını {{ $json['E-posta'] }} yapın. Mevcut müşteri e-posta ile bulunur; yoksa yeni kontakt açılır.
​

Arama görevi oluştur

  1. Bir HubSpot düğümü daha ekleyin, adını Arama görevi oluştur yapın; kaynak Engagement, işlem Create, tür Task olarak.

  2. Bitiş tarihi için {{ $now.endOf('day').toISO() }}, yani bugünü girin.

  3. Gövde kısmı {{ $('Görevi hazırla').item.json.Gövde }}, Objenin tipi Contact, Durum Başlanmadı ve Konu {{ $('Görevi hazırla').item.json.Konu }} olacak şekilde doldurun.

  4. Etkileşim Özellikleri → İlişkilendirmeler'de Contact IDs kısmına {{ $json.vid }} girin. Sahibi belirtebilirsiniz; girilmezse görev sahipsiz kalır ve HubSpot'ta atanabilir.

HubSpot node Create call task: type Task, due date, subject, body and associations

Yine değişiklik sonrası Yayınla'ya tıklayın.

n8n workflow: Survio Webhook, Unhappy?, Prepare task, Find or create contact, Create call task

Kontakt otomatik olarak şirkete bağlanabilir. HubSpot aynı e-posta uzantısına sahip bir şirket bulursa kontağı otomatik olarak ilişkilendirir, şirket sahibi kontak sahibi olur. Görev Sahip ID'ye atanır.

Hazır iş akışını alın

2. adımı ve seçtiğiniz senaryoyu elle oluşturmak yerine, hazır iş akışından başlayın. Yazının sonunda, ekler kısmından uygun dosyayı indirin: Senaryo A için survio-unhappy-responses-to-gmail.json, Senaryo B için survio-unhappy-responses-to-hubspot-tasks.json. Devamı için:

  1. n8n’de boş bir iş akışı oluşturun. Akış adının yanındaki üç noktadan İçe aktar, ardından Dosyadan'ı seçin; indirdiğiniz dosyayı yükleyin.

  2. Olumsuz mu? adımını açıp soruların id değerlerini kendi anketiniz ile değiştirin.

  3. Senaryo A: Yanıtı ilet adımında Gmail hesabınızı bağlayıp e-posta adresinizi Alıcı kısmına yazın ve id/Europe/Prague karşılıklarını güncelleyin.

  4. Senaryo B: Görevi hazırla adımında idleri/Europe/Prague bilgisini güncelleyin. Ardından Kontak bul ya da oluştur ve Arama görevi oluştur adımlarında HubSpot hesabınızı bağlayıp isteğe göre çağrıyı yapacak kişinin Sahip ID'sini girin.

  5. Survio Webhook'u açın, Production URL'yi Survio'ya (3. adım) ekleyin ve Yayınla'ya tıklayın.

n8n workflow menu with Import and From file


​

Kurulumu uçtan uca test edin

  1. 2 puanlık bir yanıt gönderin. Senaryo A'da e-posta birkaç saniyede gelir; Senaryo B'de HubSpot kontaktında görev görünür.

  2. 5 puanlı ve "Çok memnunum" yanıtı gönderin. Hiçbir şey tetiklenmez.

  3. n8n’de Yürütmeler sekmesinde bakın. Her iki teslimat da gözükür; olumlu olan "Olumsuz mu?" adımında kalır.

Sorun giderme

Belirti

Neden

Çözüm

n8n'de veri gelmiyor

Survio'da Test URL var ya da yayınlanmamış iş akışı

Production URL'yi ekleyip Yayınla'ya tıklayın

Survio kendiniz barındırdığınız n8n'den webhook URL'sini eklemiyor

n8n iç adresi gösteriyor, public adresi değil

n8n'in WEBHOOK_URL ayarını public https adresiniz ile değiştirin ve tekrar kopyalayın

Listen for test event'ta veri görmüyorsunuz

Survio Production URL'ye gönderir, dinleme Test URL'dedir

Bunun yerine Yürütmeler sekmesine bakın

En son değişiklik etki etmiyor

İş akışı yayınlanmış ama değişiklik tekrar yayınlanmamış

Yayınla'ya tekrar tıklayın

Her yanıt e-posta oluyor

Gmail düğümü yanlış yere (false) bağlı ya da koşullar AND ile birleşmiş

Gmail'i sadece true çıkışına bağlayıp koşulları OR yapın

Düşük puanlı yanıt e-posta olmuyor

Yanlış soru id'si veya yanıttaki metin farklı

Id ve metni Yürütmeler sekmesinde test edin

E-postadaki kontak "verilmedi" diyor

Anket Survio e-posta davetiyle gitmemiş, bağlantıda email parametresi yok ya da müşteri e-posta sorusunu geçtikten sonra göndermiş

Survio e-posta davetiyle gönderin, bağlantıya URL parametreleri ekleyin veya e-posta sorusunu zorunlu/ görünür yapın

Senaryo B'de Kontak oluştur/ bul başarısız oluyor

Yanıtta e-posta yoksa HubSpot kontak açamaz

Survio e-posta davetiyle ya da bağlantıda email parametresi ile gönderin

HubSpot'taki görev tek satırda gözüküyor

Gövdeye düz satır sonu girilmiş

Her satıra <br> ekleyin

Survio webhook'u kapatılmış

Webhook 5 gün başarısız iletim aldı

Sebebi giderin ve Survio'dan webhook'u tekrar etkinleştirin

İyi bilmekte fayda var

  • Survio sadece tamamlanan yanıtları yollar; her yanıttan bir mesaj, genelde saniyeler içinde gelir. Yarıda kalırsa gönderilmez.

  • Geriye dönük gönderim olmaz: webhook kurulmadan önce verilen yanıtlar ya da askıdayken iletilmeyenler aktarılmaz.

  • Başarısız teslimatlar ~27 saat içinde 8 kere tekrar denenir, her denemede 30 sn. bekler.

  • 5 gün üst üste başarısızlıkta, Survio ilgili webhook'u devre dışı bırakır, tekrar açmalısınız.

  • Bir webhook'u duraklatırsanız yeri korunur, silerseniz kalıcıdır.

  • Survio uygulamasında teslimat geçmişi tutulmaz; log için n8n'de Yürütmeler sekmesini kullanın.

  • Yanıtların webhook ile gönderilmesi, sahip olduğunuz planda ek yanıt harcamaz.

Kurulumu biz yapalım isterseniz? Survio'da Webhooks sayfasında Uzman kurulumunu alın seçeneğine tıklayın, ne istediğinizi anlatın. Ekibimiz kurar, test eder ve çalışan webhook'u size teslim eder.

Bu cevap sorunuzu yanıtladı mı?