Ir para conteúdo principal

Suporte – Cada reclamação é tratada automaticamente: transforme respostas insatisfeitas de inquérito em tickets

Solicite feedback após cada compra e faça com que cada resposta insatisfeita no Survio seja transformada em um ticket no Freshdesk ou Intercom, já com o número do pedido, para que a equipa de suporte acompanhe. Guia com n8n e fluxos prontos.

Escrito por Success Team Survio

Qual é o seu cenário?

Caso A – para pequenas lojas online com helpdesk simples: cada reclamação torna-se um ticket no Freshdesk.

Caso B – para equipas de suporte que usam Intercom: cada reclamação torna-se um ticket interno no Intercom.

Envie um inquérito breve após cada compra e garanta que cada resposta insatisfeita abra um ticket para a equipa de suporte, já com o número do pedido e o e-mail do cliente preenchidos. Assim, ninguém precisa rever manualmente as respostas para identificar reclamações.
​

Este é o ticket que a sua equipa recebe no Freshdesk, Caso A:
​

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


​

E este é o ticket interno que a sua equipa recebe no Intercom, Caso B:
​

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

Como funciona. O e-mail de confirmação do pedido inclui uma ligação para um inquérito Survio, já com o número do pedido e o e-mail do cliente na ligação. O Survio envia cada resposta concluída para um URL de webhook. Uma ferramenta de automação (usamos o n8n neste guia) verifica se o cliente está insatisfeito e, se sim, cria um ticket no seu sistema de suporte.

Novo em webhooks do Survio? Comece por Webhooks: enviar respostas para as suas outras ferramentas em tempo real, depois volte aqui.
​

O que vai construir

Em ambos os casos, uma resposta insatisfeita significa avaliação de 1 ou 2 em 5, ou a resposta Pouco satisfeito ou Insatisfeito.

Num relance

Caso A: Freshdesk

Caso B: Intercom

Resultado

Um novo ticket no Freshdesk

Um ticket interno de backoffice no Intercom

Ferramentas

Survio, n8n, Freshdesk

Survio, n8n, Intercom

Ideal para

Uma pequena loja online com helpdesk simples

Uma equipa de suporte que já trabalha no Intercom

Antes de começar

  • Um inquérito Survio num plano pago. Webhooks e parâmetros de URL não estão disponíveis no plano Free, e cada plano permite um número definido de webhooks por inquérito (ver o artigo dos webhooks).

  • Conta n8n: Cloud ou self-hosted.

  • O seu sistema de suporte: para o Caso A, conta do Freshdesk; para o Caso B, workspace do Intercom onde pode gerir tipos de tickets e criar uma app no Developer Hub.

Neste guia usa-se um inquérito curto de satisfação do cliente: classificação por estrelas, pergunta "No geral, quão satisfeito(a) está?" (escolha única), pergunta "Como realizou a compra desta vez?" (escolha múltipla) e comentário aberto.
​

Passo 1 — Inserir o número do pedido e o e-mail na ligação do inquérito

  1. Abra o seu inquérito, vá a Recolher respostas → Parâmetros de URL e crie dois parâmetros: email e order-id. Os nomes dos parâmetros não podem conter underscores. Consulte Parâmetros de URL.

  2. Adicione a ligação do inquérito ao e-mail de confirmação de pedido e faça com que o sistema da loja preencha ambos os valores para cada cliente.

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

O ticket precisa do e-mail do cliente. Um ticket de suporte pertence sempre a um cliente e o fluxo obtém o e-mail a partir do parâmetro email. Respostas que cheguem sem este parâmetro não podem tornar-se tickets.

Passo 2 — Criar o webhook no n8n

  1. No n8n, crie um novo workflow e adicione um nó Webhook como trigger.

  2. Defina o Método HTTP para POST.

  3. Altere para o separador Production URL e copie o endereço apresentado.

  4. Clique em Publicar. O Production URL só aceita entregas quando o workflow está publicado.

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

Utilize o Production URL, nunca o Test URL. O Test URL apenas escuta enquanto o editor está à espera de um evento, por isso as entregas do Survio falham assim que fechar o editor. O Survio tenta novamente por cerca de um dia e, após 5 dias de falhas, desativa o webhook.

Passo 3 — Ligar o inquérito no Survio

  1. Abra o seu inquérito e aceda a Recolher respostas.

  2. Na barra lateral esquerda, em Automatizações & Integrações, selecione Webhooks e clique em + Adicionar um webhook.

  3. Cole o Production URL do n8n no campo Webhook URL e clique em Guardar webhook. O webhook é ativado de imediato.

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


​

Passo 4 — Enviar uma resposta de teste e identificar os ids das perguntas

  1. Abra o inquérito através de uma ligação com ambos os parâmetros preenchidos e submeta uma resposta completa com avaliação baixa.

  2. No n8n, abra o separador Execuções. A entrega chega em poucos segundos.

  3. Abra a execução e clique no nó Webhook. Expanda body e depois data. O número do pedido e o e-mail estão em parameters; em answers, aponte o id de cada pergunta.

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


​

Caso A — Abrir um ticket no Freshdesk

Preparar o Freshdesk

No Freshdesk, clique na sua foto de perfil no canto superior direito, escolha Definições de perfil e clique em Ver API key. Trate a chave como uma palavra-passe. Também irá precisar do domínio do Freshdesk: a parte do endereço do seu helpdesk antes de .freshdesk.com.
​

Construir o workflow

Três passos após o webhook: Insatisfeito? permite só respostas insatisfeitas, Preparar ticket define o assunto e descrição e Criar ticket no Freshdesk abre o ticket.

  1. Adicione um nó If, renomeie para Insatisfeito? e adicione três condições combinadas com OU: classificação igual ou inferior a 2, resposta de satisfação igual a Pouco satisfeito, ou igual a Insatisfeito. Selecione as respostas pelos ids das perguntas como na tabela abaixo.

  2. Na saída verdadeiro, adicione um nó Editar campos (Set) chamado Preparar ticket com três campos String: E-mail, Título e Descrição.

  3. Depois, adicione um nó Freshdesk chamado Criar ticket no Freshdesk e escolha o recurso Ticket e a operação Criar. Crie as credenciais do Freshdesk com a sua API key e insira apenas o domínio, por exemplo sualoja para https://sualoja.freshdesk.com.

Onde

O que inserir

Insatisfeito?: classificação

{{ $json.body.data.answers.find(a => a.question.id === 90403153)?.answer ?? 99 }}, Número: menor ou igual a 2

Insatisfeito?: satisfação

{{ $json.body.data.answers.find(a => a.question.id === 90403151)?.answer?.labels?.[0] ?? "" }}, String: igual a Pouco satisfeito (e uma segunda condição para Insatisfeito)

Preparar ticket: E-mail

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

Preparar ticket: Título

Cliente insatisfeito: {{ $json.body.data.answers.find(a => a.question.id === 90403153)?.answer }}/5, pedido {{ $json.body.data.parameters?.['order-id'] }}

Preparar ticket: Descrição

Classificação, satisfação, canal, comentário, pedido e data, separados por <br> para cada linha ser separada no Freshdesk (veja o workflow pronto)

Criar ticket: solicitante

Identificação do solicitante: E-mail e, em Valor: {{ $json['E-mail'] }}

Criar ticket: estado e prioridade

Estado: Aberto, Prioridade: Alta, Origem: manter Portal

Criar ticket: opções

Em Opções, clique em Adicionar opção e adicione Descrição {{ $json.Description }}, Assunto {{ $json.Title }} e Etiquetas survio,unhappy-response

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

Se o e-mail ainda não pertencer a nenhum contacto no Freshdesk, será criado. Clique em Publicar novamente; alterações feitas após publicar ficam ativas apenas após nova publicação.

O Freshdesk envia um e-mail ao cliente sobre o novo ticket. Por padrão, o Freshdesk envia ao solicitante um e-mail "Ticket Recebido" com o assunto do ticket. O cliente verá assim o assunto "Cliente insatisfeito: …". Se preferir, pode desativar New Ticket Created em Admin → Notificações por e-mail → Notificações ao solicitante ou alterar o título em Preparar ticket para algo mais adequado para o cliente.

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


​

Caso B — Abrir um ticket no Intercom

Preparar o Intercom

  1. No Intercom, vá a Definições → Caixa de entrada → Tickets e crie um novo tipo de ticket, por exemplo Feedback de inquérito, na categoria Back-office. Tickets de back-office são internos: o cliente não os vê. Veja o guia da Intercom em How to set up ticket types.

  2. Descubra o id do tipo de ticket: em Definições → Caixa de entrada → Tickets, vá ao separador Tipos de ticket, encontre o seu tipo na secção Tipos de ticket de back-office e clique no ícone do lápis. O id é o número no final do endereço da página, por exemplo …/ticket-types/1234567. Vai usá-lo no workflow.

  3. Crie um access token: no Developer Hub do Intercom, abra a sua app e vá a Configurar → Autenticação. Veja o guia de autenticação do Intercom. Trate o token como uma palavra-passe.

Survey feedback ticket type in Intercom settings

Construir o workflow

Três passos após o webhook: Insatisfeito? permite só respostas insatisfeitas, Preparar ticket cria o título e a descrição, Criar ticket no Intercom envia para o Intercom.

  1. Adicione um nó If chamado Insatisfeito?, com três condições combinadas por OU: classificação igual ou inferior a 2, resposta de satisfação igual a Pouco satisfeito ou Insatisfeito. Selecione as respostas pelo id das perguntas, como na tabela.

  2. Na saída verdadeiro, adicione um nó Editar campos (Set) chamado Preparar ticket, com três campos String: E-mail, Título e Descrição.

  3. Depois, adicione um nó HTTP Request chamado Criar ticket no Intercom.

Onde

O que inserir

Insatisfeito?: classificação

{{ $json.body.data.answers.find(a => a.question.id === 90403153)?.answer ?? 99 }}, Número: menor ou igual a 2

Insatisfeito?: satisfação

{{ $json.body.data.answers.find(a => a.question.id === 90403151)?.answer?.labels?.[0] ?? "" }}, String: igual a Pouco satisfeito (e uma segunda condição para Insatisfeito)

Preparar ticket: E-mail

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

Preparar ticket: Título

Cliente insatisfeito: {{ $json.body.data.answers.find(a => a.question.id === 90403153)?.answer }}/5, pedido {{ $json.body.data.parameters?.['order-id'] }}

Preparar ticket: Descrição

Classificação, satisfação, canal, comentário, pedido e data, cada um em sua própria linha (ver workflow pronto)

Criar ticket: Método e URL

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

Criar ticket: Autenticação

Autenticação: Generic Credential Type, Generic Auth Type: Bearer Auth, depois crie as credenciais Bearer Auth com o access token do Intercom

Criar ticket: Header

Ative Send Headers, Intercom-Version com valor 2.11

Criar ticket: Body

Ative Send Body, Body Content Type: JSON, Specify Body: Using JSON, e no JSON: {{ 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

Se o e-mail ainda não pertencer a nenhum contacto no Intercom, será criado. Clique novamente em Publicar; alterações feitas depois de publicar exigem nova publicação para ficarem disponíveis.

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


​

Obtenha o workflow pronto

Em vez de criar manualmente o Passo 2 e os passos do seu caso, utilize o nosso workflow pronto. Faça o download do ficheiro correspondente no final deste artigo: survio-unhappy-responses-to-freshdesk-tickets.json para o Caso A, ou survio-unhappy-responses-to-intercom-tickets.json para o Caso B. Depois:

  1. No n8n, crie um workflow vazio. No menu (três pontos) ao lado do nome do workflow, escolha Importar e depois A partir de ficheiro. Selecione o ficheiro descarregado.

  2. Abra Insatisfeito? e Preparar ticket e substitua os ids das perguntas pelos seus e a zona Europe/Prague pelo seu fuso horário.

  3. Caso A: abra Criar ticket no Freshdesk e ligue à sua conta Freshdesk com a sua API key e domínio.

  4. Caso B: abra Criar ticket no Intercom, adicione o access token Bearer Auth do Intercom e coloque o id correto do seu tipo de ticket no lugar de YOUR-TICKET-TYPE-ID.

  5. Abra Survio Webhook, copie o Production URL para o Survio (Passo 3) e clique em Publicar.

n8n workflow menu with Import and From file

Teste de ponta a ponta

  1. Abra o inquérito através de uma ligação com o seu próprio e-mail e um número de pedido de teste, e submeta uma classificação de 2.

  2. Em segundos, surge um novo ticket no Freshdesk (Caso A) ou um novo ticket interno de backoffice no Intercom (Caso B), ambos com o número do pedido no assunto.

  3. Submeta uma classificação de 5. Não será criado ticket.

  4. Feche o ticket de teste e consulte o separador Execuções no n8n para ver ambas as entregas.

Resolução de problemas

Sintoma

Causa

Correção

Nada chega ao n8n

O Test URL está no Survio ou o workflow não está publicado

Copie o Production URL para o Survio e clique em Publicar

Credencial do Freshdesk não conecta

Domínio colocado como endereço completo ou API key errada

Indique só a parte antes de .freshdesk.com e copie novamente a API key das Definições de perfil

O ticket do Freshdesk aparece todo numa linha só

A Descrição usa apenas quebras de linha simples

Separe as linhas com <br>

Falha ao criar ticket no Intercom com 401

O access token está incorreto ou ausente

Verifique a credencial Bearer Auth em Criar ticket no Intercom

Falha ao criar ticket devido ao tipo de ticket

YOUR-TICKET-TYPE-ID não foi substituído, ou o id está errado

Coloque o id correto do seu tipo de ticket no body

Falha ao criar ticket devido ao solicitante/contacto

A resposta não tinha o parâmetro email

Garanta que o e-mail do pedido preenche o parâmetro

Cada resposta cria um ticket

Preparar ticket está na saída falsa, ou as condições usam E

Ligue à saída verdadeiro e use condições com OU

A sua última alteração não tem efeito

O workflow está publicado, mas não a alteração (o botão Publicar mostra um ponto).

Clique novamente em Publicar

Survio desativou o webhook

A URL do webhook falhou durante 5 dias seguidos

Resolva o problema e volte a ativar o webhook no Survio

Informações úteis

  • O Survio envia apenas respostas concluídas, uma mensagem por resposta, em poucos segundos.

  • Nada é enviado retroativamente: nem respostas de antes do webhook existir, nem respostas durante uma pausa do webhook.

  • Uma entrega falhada é repetida até 8 vezes em aproximadamente 27 horas, e cada tentativa aguarda até 30 segundos por uma resposta.

  • Se as entregas falharem por 5 dias seguidos, o Survio desativa o webhook e será preciso reativá-lo.

  • Pausar um webhook mantém a vaga; eliminar é permanente.

  • O Survio não guarda um histórico de entregas na aplicação. O separador Execuções no n8n é o seu registo.

  • Enviar respostas para webhooks não consome respostas adicionais do seu plano.

Prefere que configuramos por si? Na página Webhooks do Survio, clique em Obter configuração por especialista, diga-nos o que pretende e a nossa equipa prepara, testa e entrega o webhook a funcionar.

Isto respondeu à sua pergunta?