Przejdź do głównej zawartości

Wsparcie – każda skarga obsłużona automatycznie: zamieniaj niezadowolone odpowiedzi z ankiet w zgłoszenia

Poproś o opinię po każdym zakupie i automatycznie zamieniaj każdą niezadowoloną odpowiedź z Survio w zgłoszenie w Freshdesk lub Intercom razem z numerem zamówienia, by Twój zespół wsparcia mógł szybko się skontaktować z klientem.

Napisane przez Success Team Survio

Który przypadek jest dla Ciebie?

Przypadek A – dla małego e-sklepu z prostym helpdeskiem: każda skarga staje się zgłoszeniem w Freshdesk.

Przypadek B – dla zespołów wsparcia w Intercomie: każda skarga staje się wewnętrznym zgłoszeniem w Intercomie.

Wyślij krótką ankietę po każdym zakupie i pozwól, aby każda niezadowolona odpowiedź automatycznie tworzyła zgłoszenie dla Twojego zespołu wsparcia, z numerem zamówienia i adresem e-mail klienta wypełnionymi. Nie musisz już przeglądać odpowiedzi, by znaleźć skargi.
​

Tak wygląda zgłoszenie, które Twój zespół dostaje w Freshdesk (przypadek A):
​

Unhappy customer ticket in Freshdesk with the rating, comment and order


​

A tak wygląda wewnętrzne zgłoszenie, jakie Twój zespół dostaje w Intercomie (przypadek B):
​

Back-office ticket Survey feedback in Intercom with the rating, comment and order

Jak to działa. E-mail z potwierdzeniem zamówienia zawiera link do ankiety Survio z numerem zamówienia i adresem e-mail klienta w linku. Survio wysyła każde ukończone odpowiedzi do URL webhooka. Narzędzie do automatyzacji (w tym poradniku używamy n8n) sprawdza, czy klient jest niezadowolony i wtedy tworzy zgłoszenie w Twoim helpdesku.

Nie znasz jeszcze webhooks w Survio? Zacznij od Webhooks: wysyłaj odpowiedzi do swoich narzędzi w czasie rzeczywistym, potem wróć tutaj.
​

Co zbudujesz

W obu przypadkach niezadowolona odpowiedź oznacza ocenę 1 lub 2 na 5 albo odpowiedź Raczej niezadowolony lub Niezadowolony.

W skrócie

Przypadek A: Freshdesk

Przypadek B: Intercom

Efekt

Nowe zgłoszenie w Freshdesk

Wewnętrzne back-office zgłoszenie w Intercomie

Narzędzia

Survio, n8n, Freshdesk

Survio, n8n, Intercom

Najlepsze dla

Mały e‑sklep z prostą obsługą zgłoszeń

Zespół wsparcia pracujący już w Intercomie

Co musisz mieć przed startem

  • Ankieta Survio na płatnym planie. Webhooki i niestandardowe parametry URL nie są dostępne w planie Free, a każdy plan pozwala na określoną liczbę webhooków na ankietę (szczegóły w artykule o webhooks).

  • Konto n8n, n8n Cloud albo wersję self-hosted.

  • Twój helpdesk: dla przypadku A — konto Freshdesk; dla przypadku B — przestrzeń robocza Intercom, gdzie możesz zarządzać typami zgłoszeń i tworzyć aplikację w Developer Hub.

W tym poradniku używamy krótkiej ankiety satysfakcji klienta: oceny gwiazdkowej, pytania zamkniętego „Ogólnie, jak oceniasz swoje zadowolenie?”, pytania zamkniętego „Jak kupowałeś u nas tym razem?” oraz pola na komentarz.
​

Krok 1 — Dodaj numer zamówienia i e-mail do linku ankiety

  1. Otwórz ankietę, przejdź do Zbieranie odpowiedzi → Niestandardowe parametry URL i utwórz dwa parametry: email i order-id. Nazwy parametrów nie mogą zawierać podkreśleń. Więcej informacji w Parametry URL.

  2. Dodaj link do ankiety do e-maila z potwierdzeniem zamówienia i pozwól swojemu sklepowy wypełnić obie wartości dla każdego klienta.

URL parameters email and order-id in Survio
Survey link with the email and order-id parameters

Zgłoszenie potrzebuje e-maila klienta. Zgłoszenie helpdesku zawsze jest powiązane z klientem, a workflow bierze e-mail z parametru email. Odpowiedzi bez niego nie mogą stworzyć zgłoszenia.

Krok 2 — Utwórz webhook w n8n

  1. W n8n utwórz nowy workflow i dodaj node Webhook jako trigger.

  2. Ustaw HTTP Method na POST.

  3. Przejdź do zakładki Production URL i skopiuj adres.

  4. Kliknij Opublikuj. Production URL działa tylko po opublikowaniu workflow.

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

Używaj Production URL, nie Test URL. Test URL nasłuchuje tylko gdy edytor czeka na zdarzenie testowe, więc dostawy z Survio nie dojdą gdy zamkniesz edytor. Survio ponawia nieudaną dostawę przez około dzień, a po 5 dniach wyłącza webhook.

Krok 3 — Połącz ankietę w Survio

  1. Otwórz ankietę i przejdź do Zbieranie odpowiedzi.

  2. W menu po lewej pod Automatyzacje i integracje wybierz Webhooks i kliknij + Dodaj webhook.

  3. Wklej Production URL z n8n w pole Webhook URL i kliknij Zapisz webhook. Webhook aktywuje się natychmiast.

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


​

Krok 4 — Wyślij odpowiedź testową i znajdź id pytań

  1. Otwórz ankietę przez link z dwoma wypełnionymi parametrami i wyślij pełną odpowiedź z niską oceną.

  2. W n8n przejdź do zakładki Executions. Dostawa pojawi się po kilku sekundach.

  3. Otwórz wykonanie i kliknij node Webhook. Rozwiń body, potem data. Numer zamówienia i e-mail są w parameters; pod answers zapisz id każdego pytania.

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


​

Przypadek A — Otwórz zgłoszenie w Freshdesk

Przygotuj Freshdesk

W Freshdesk kliknij swoje zdjęcie profilowe w prawym górnym rogu, wybierz Ustawienia profilu i kliknij Pokaż klucz API. Traktuj klucz jak hasło. Potrzebny będzie też fragment Twojego adresu Freshdesk: część przed .freshdesk.com.
​

Stwórz workflow

Po webhooku skonfiguruj 3 kroki: Niezadowolony? przepuszcza tylko niezadowolone odpowiedzi, Przygotuj zgłoszenie wpisuje temat i opis, a Utwórz zgłoszenie w Freshdesk otwiera zgłoszenie.

  1. Dodaj node If, nazwij go Niezadowolony? i ustaw trzy warunki połączone LUB: ocena mniejsza lub równa 2, odpowiedź to Raczej niezadowolony, lub to Niezadowolony. Pobierz odpowiedzi po id pytania – patrz tabela poniżej.

  2. Do wyjścia prawda dodaj node Edit Fields (Set) nazwany Przygotuj zgłoszenie z trzema polami String: E-mail, Tytuł i Opis.

  3. Potem dodaj node Freshdesk o nazwie Utwórz zgłoszenie w Freshdesk i wybierz zasób Zgłoszenie oraz operację Utwórz. Ustaw poświadczenie Freshdesk z kluczem API i wpisz tylko fragment domeny, np. twojsklep z https://twojsklep.freshdesk.com.

Gdzie

Co wpisać

Niezadowolony?: ocena

{{ $json.body.data.answers.find(a => a.question.id === 90403153)?.answer ?? 99 }}, Number: mniejsza lub równa 2

Niezadowolony?: satysfakcja

{{ $json.body.data.answers.find(a => a.question.id === 90403151)?.answer?.labels?.[0] ?? "" }}, String: równa Raczej niezadowolony (drugi warunek dla Niezadowolony)

Przygotuj zgłoszenie: E-mail

{{ $json.body.data.parameters?.email || "" }}

Przygotuj zgłoszenie: Tytuł

Niezadowolony klient: {{ $json.body.data.answers.find(a => a.question.id === 90403153)?.answer }}/5, zamówienie {{ $json.body.data.parameters?.['order-id'] }}

Przygotuj zgłoszenie: Opis

Ocena, satysfakcja, kanał, komentarz, zamówienie i czas, rozdzielone <br> — każda informacja jako osobna linia w Freshdesk (patrz gotowy workflow)

Utwórz zgłoszenie: zgłaszający

Identyfikacja: Email, w polu Wartość: {{ $json['E-mail'] }}

Utwórz zgłoszenie: status i priorytet

Status: Otwarte, Priorytet: Wysoki, Źródło: pozostaw Portal

Utwórz zgłoszenie: opcje

W Opcje kliknij Dodaj opcję i dodaj Description {{ $json.Description }}, Subject {{ $json.Title }} i Tag survio,unhappy-response

Freshdesk node Create ticket in Freshdesk with the requester e-mail, status, priority, subject, description and tags

Jeżeli adres e-mail nie należy jeszcze do kontaktu w Freshdesk, Freshdesk utworzy go automatycznie. Kliknij Opublikuj jeszcze raz; zmiany po publikacji są widoczne dopiero po ponownej publikacji.

Freshdesk wysyła klientowi e-mail o nowym zgłoszeniu. Domyślnie Freshdesk wysyła zgłaszającemu e-mail „Ticket Received” z tytułem zgłoszenia, więc klient zobaczy „Niezadowolony klient: …”. Wyłącz New Ticket Created w Admin → Email Notifications → Requester Notifications lub zmień Tytuł w kroku Przygotuj zgłoszenie, jeśli chcesz to inaczej sformułować.

n8n workflow: Survio Webhook, Unhappy?, Prepare ticket, Create ticket in Freshdesk


​

Przypadek B — Otwórz zgłoszenie w Intercomie

Przygotuj Intercom

  1. W Intercomie przejdź do Ustawienia → Skrzynka odbiorcza → Zgłoszenia i utwórz nowy typ zgłoszenia, np. Opinie z ankiet, w kategorii Back-office. Zgłoszenia back-office są wewnętrzne: klient ich nie widzi. Zobacz poradnik Intercoma o typach zgłoszeń.

  2. Znajdź id typu zgłoszenia: w Ustawienia → Skrzynka odbiorcza → Zgłoszenia, otwórz zakładkę Typy zgłoszeń, znajdź typ pod Back-office ticket types i kliknij ikonę ołówka. Identyfikator to numer na końcu adresu strony, np. …/ticket-types/1234567. Wkleisz go do workflow.

  3. Utwórz token dostępu: w Intercom Developer Hub otwórz aplikację i przejdź do Konfiguracja → Uwierzytelnianie. Szczegóły znajdziesz w poradniku Intercoma: autoryzacja w Intercomie. Traktuj token jak hasło.

Survey feedback ticket type in Intercom settings

Stwórz workflow

Po webhooku ustaw 3 kroki: Niezadowolony? przepuszcza tylko niezadowolone odpowiedzi, Przygotuj zgłoszenie pisze tytuł i opis, a Utwórz zgłoszenie w Intercomie przesyła dane do Intercom.

  1. Dodaj node If, nazwij go Niezadowolony?, i ustaw trzy warunki połączone LUB: ocena mniejsza lub równa 2, odpowiedź to Raczej niezadowolony, lub to Niezadowolony. Pobierz odpowiedzi po id pytania – patrz tabela poniżej.

  2. Do wyjścia prawda dodaj node Edit Fields (Set) jako Przygotuj zgłoszenie (pola: E-mail, Tytuł, Opis).

  3. Następnie dodaj node HTTP Request o nazwie Utwórz zgłoszenie w Intercom.

Gdzie

Co wpisać

Niezadowolony?: ocena

{{ $json.body.data.answers.find(a => a.question.id === 90403153)?.answer ?? 99 }}, Number: mniejsza lub równa 2

Niezadowolony?: satysfakcja

{{ $json.body.data.answers.find(a => a.question.id === 90403151)?.answer?.labels?.[0] ?? "" }}, String: równa Raczej niezadowolony (i drugi warunek dla Niezadowolony)

Przygotuj zgłoszenie: E-mail

{{ $json.body.data.parameters?.email || "" }}

Przygotuj zgłoszenie: Tytuł

Niezadowolony klient: {{ $json.body.data.answers.find(a => a.question.id === 90403153)?.answer }}/5, zamówienie {{ $json.body.data.parameters?.['order-id'] }}

Przygotuj zgłoszenie: Opis

Ocena, satysfakcja, kanał, komentarz, zamówienie i czas — każda informacja w oddzielnej linii (patrz gotowy workflow)

Utwórz zgłoszenie: metoda i URL

POST, https://api.intercom.io/tickets

Utwórz zgłoszenie: uwierzytelnienie

Uwierzytelnianie: Generic Credential Type, Generic Auth Type: Bearer Auth, następnie dodaj poświadczenie Bearer Auth z tokenem Intercom

Utwórz zgłoszenie: nagłówek

Włącz Send Headers, wpisz Intercom-Version z wartością 2.11

Utwórz zgłoszenie: body

Włącz Send Body, Content Type: JSON, Specify Body: Using JSON. Wklej: {{ JSON.stringify({ ticket_type_id: 'YOUR-TICKET-TYPE-ID', contacts: [{ email: $json['E-mail'] }], ticket_attributes: { _default_title_: $json.Title, _default_description_: $json.Description } }) }}

If node Unhappy? with three conditions combined with OR
Prepare ticket node with the E-mail, Title and Description fields
HTTP Request node Create ticket in Intercom: POST, URL, Bearer Auth and the Intercom-Version header
HTTP Request node body: JSON with the ticket type, contact, title and description

Jeśli e-mail nie należy do kontaktów w Intercomie, Intercom utworzy kontakt automatycznie. Kliknij Opublikuj jeszcze raz; zmiany będą aktywne po publikacji.

n8n workflow: Survio Webhook, Unhappy?, Prepare ticket, Create ticket in Intercom


​

Pobierz gotowy workflow

Zamiast budować krok 2 i swój przypadek osobno, zacznij od gotowego workflow. Pobierz plik swojego przypadku z załączników na końcu tego artykułu: survio-unhappy-responses-to-freshdesk-tickets.json dla przypadku A lub survio-unhappy-responses-to-intercom-tickets.json dla przypadku B. Następnie:

  1. W n8n utwórz puste workflow. Otwórz menu (trzy kropki) przy nazwie workflow i wybierz Import, potem Z pliku. Wskaż pobrany plik.

  2. Otwórz Niezadowolony? i Przygotuj zgłoszenie i zamień id pytań na swoje własne, ustaw też właściwą strefę czasową zamiast Europe/Prague.

  3. Przypadek A: otwórz Utwórz zgłoszenie w Freshdesk i podłącz swoje konto przez klucz API i domenę.

  4. Przypadek B: otwórz Utwórz zgłoszenie w Intercom, dodaj token jako Bearer Auth credential i podaj id typu zgłoszenia zamiast YOUR-TICKET-TYPE-ID.

  5. Otwórz Survio Webhook, skopiuj Production URL do Survio (krok 3) i kliknij Opublikuj.

n8n workflow menu with Import and From file

Przetestuj cały proces

  1. Otwórz ankietę przez link z własnym e-mailem i testowym numerem zamówienia, wyślij ocenę 2.

  2. W kilka sekund pojawi się nowe zgłoszenie w Freshdesk (przypadek A) lub nowe back-office zgłoszenie w Intercomie (przypadek B) z numerem zamówienia w temacie.

  3. Wyślij ocenę 5. Zgłoszenie się nie utworzy.

  4. Zamknij zgłoszenie testowe i sprawdź zakładkę Executions w n8n dla obu prób.

Rozwiązywanie problemów

Objaw

Przyczyna

Jak naprawić

Nic nie trafia do n8n

W Survio ustawiony jest Test URL lub workflow nie jest opublikowany

Wklej Production URL do Survio i kliknij Opublikuj

Freshdesk credential nie działa

Podano całość adresu domeny lub błędny klucz API

Podaj tylko część przed .freshdesk.com i skopiuj klucz API z Ustawienia profilu

Zgłoszenie Freshdesk pokazuje całą odpowiedź w jednej linii

Opis używa zwykłych enterów

Oddziel linie znacznikiem <br>

Utworzenie zgłoszenia w Intercomie kończy się błędem 401

Brak lub nieprawidłowy token dostępu

Sprawdź poświadczenie Bearer Auth w node Utwórz zgłoszenie w Intercom

Utworzenie zgłoszenia nie działa przez ticket type

YOUR-TICKET-TYPE-ID nie został podmieniony lub podano błędny id

Podaj swój id typu zgłoszenia w workflow

Utworzenie zgłoszenia nie działa przez kontakt

Brak parametru email w odpowiedzi

Upewnij się, że e-mail zamówienia trafia w parametr

Każda odpowiedź tworzy zgłoszenie

Przygotuj zgłoszenie jest podłączone do wyjścia fałsz lub warunki połączone AND

Podłącz tylko do wyjścia prawda i połącz warunki LUB

Ostatnia zmiana nie działa

Workflow jest opublikowany, ale zmiany nie (przycisk Publikuj z kropką)

Kliknij Publikuj jeszcze raz

Survio wyłączyło webhook

Webhook nie działał 5 dni z rzędu

Usuń przyczynę i włącz webhook ponownie w Survio

Dobrze wiedzieć

  • Survio wysyła tylko ukończone odpowiedzi, każdy komunikat to osobna odpowiedź, w kilka sekund.

  • Nie wysyła odpowiedzi sprzed powstania webhooka ani z czasu, gdy webhook był wstrzymany.

  • Nieudana dostawa jest ponawiana do 8 razy przez około 27 godzin i każda próba czeka do 30 sekund na odpowiedź.

  • Po 5 dniach nieudanych prób Survio wyłącza webhook i trzeba go włączyć na nowo.

  • Pauzowanie webhooka zachowuje miejsce; usunięcie jest trwałe.

  • Survio nie przechowuje historii dostaw w aplikacji. Zakładka Executions w n8n jest Twoim logiem.

  • Wysyłka odpowiedzi na webhooks nie zużywa dodatkowych odpowiedzi z planu.

Chcesz, żebyśmy zrobili to za Ciebie? Na stronie Webhooki w Survio kliknij Zamów konfigurację ekspercką, napisz co chcesz, aby się działo, a nasz zespół zbuduje i przetestuje gotowy webhook.

Czy to odpowiedziało na twoje pytanie?