Como conectar o Typeform ao Shopify Flow
O Typeform envia um Webhook sempre que alguém preenche um de seus formulários, com todas as respostas incluídas na carga útil. O Workflow Webhooks transforma essa chamada em um gatilho do Shopify Flow, para que sua loja possa reagir a ela: atribuir uma Tag a um cliente, adicionar uma nota ao pedido, enviar um e-mail interno, atualizar um metacampo - tudo o que o Shopify Flow pode fazer.
Este guia define todo o fluxo de trabalho - o Typeform envia, o Workflow Webhooks recebe e verifica, e o Shopify Flow executa - com a assinatura HMAC do Typeform verificada em cada solicitação, de modo que somente o Typeform possa iniciar seu fluxo de trabalho.
O que o senhor pode construir
- Marque o cliente que preencheu uma pesquisa pós-compra, com base nas respostas fornecidas.
- Registre uma pontuação de satisfação no registro do cliente como um metacampo.
- Encaminhe as respostas insatisfatórias diretamente para sua equipe de suporte por e-mail.
Eventos típicos a serem enviados: o envio de uma resposta de formulário.
Antes de começar
- Workflow Webhooks instalado em sua loja do Shopify.
- Shopify Flow instalado, que está disponível gratuitamente na App Store do Shopify.
- Uma conta no Typeform com permissão para criar webhooks.
Etapa 1 - Crie o webhook em Workflow Webhooks
- Acesse Workflow Webhooks -> Webhooks -> Criar webhook e atribua a ele um nome que você reconheça no Shopify Flow, como
Typeform events. - Na seção “Autenticação”, selecione HMAC.
- Em “Provedor de assinatura”, selecione Typeform. O aplicativo preenche o cabeçalho, o algoritmo, o payload assinado e a janela de repetição para você - não há mais nada a configurar.
- Deixe o campo “segredo” em branco por enquanto e clique em “Salvar”. Copie a URL do webhook exibida na página.
Consulte Autenticação para conhecer os outros modos de autenticação e Mapeamento de payload e variáveis de fluxo para saber como selecionar quais campos serão enviados ao Shopify Flow.
Etapa 2 - Adicione o endpoint no Typeform
Abra o formulário, acesse Conectar -> Webhooks -> Adicionar um webhook, cole a URL, ative a opção “segredo” e insira um.
Como localizar sua chave secreta de assinatura do Typeform
A chave secreta configurada no webhook do Typeform.
A própria documentação da Typeform sobre assinaturas de webhooks contém o texto exato e as capturas de tela específicas para a sua conta.
Cole esse segredo no campo “Secret” do webhook em Workflow Webhooks e salve. A partir desse momento, cada envio do Typeform será verificado antes de chegar ao Shopify Flow.
O que isso verifica
| O que | Valor |
|---|---|
| Cabeçalho de assinatura | Typeform-Signature |
| Onde fica a assinatura | O valor do cabeçalho, após o prefixo sha256= |
| O que foi assinado | {body} |
| Assinatura | HMAC-SHA256, codificado em base64 |
| Data e hora | Não é utilizado por este remetente |
| Proteção contra reprodução | Nenhuma - esse remetente não assina o carimbo de data e hora; portanto, todas as assinaturas válidas permanecem válidas |
| O segredo | Utilizado como texto simples. Cole-o exatamente como o remetente o apresenta |
Na payload assinada, {body} é o corpo da solicitação em formato bruto, byte por byte.
Uma solicitação que não atenda a qualquer um desses critérios é rejeitada com o código de erro 401, é registrada em Histórico e solução de problemas e nunca inicia um fluxo de trabalho.
Etapa 3 - Criar o fluxo de trabalho Shopify Flow
- No “Shopify Flow”, crie um fluxo de trabalho e selecione o gatilho “Workflow Webhooks”.
- Clique em “Gravar eventos” e, em seguida, envie um evento de teste pelo Typeform (ou utilize a opção “Enviar teste” no Workflow Webhooks) para que o Shopify Flow aprenda o formato dos seus dados.
- Cada webhook de que o senhor é proprietário aciona o mesmo gatilho do Flow; portanto, adicione uma primeira condição com base no ID do webhook para restringir esse fluxo de trabalho exclusivamente ao Typeform. O ID é exibido na página do webhook.
- Adicione suas ações - marque um cliente, adicione uma nota, envie um e-mail interno, atualize um metacampo.



Etapa 4 - Teste de ponta a ponta
Acionem um evento real no Typeform. Em Workflow Webhooks -> Histórico, vocês deverão ver a invocação com o status “Sucesso”. Caso a assinatura esteja incorreta, vocês receberão uma entrada com status de falha, acompanhada do motivo; e Verificação de webhooks assinados explica o verificador de assinatura, que mostra exatamente em qual etapa ocorreu a falha.

A assinatura não corresponde▾
Nesta ordem: o segredo (a causa mais comum - um espaço a mais ou uma chave do ambiente errado), se o remetente está usando o segredo de um endpoint diferente e se algo entre o Typeform e o aplicativo reescreve o corpo da mensagem. As assinaturas abrangem os bytes brutos; portanto, um proxy que reformata o JSON as invalida. O verificador de assinaturas na página do webhook mostra o texto exato que foi assinado.
Recebo um erro 401 em todas as solicitações▾
Verifique se a autenticação do webhook está configurada como HMAC com o provedor Typeform selecionado, se o segredo está preenchido e se o Typeform está enviando dados para a URL exatamente como o aplicativo a exibe, incluindo o código no final.
Não há nada no Histórico▾
A solicitação nunca foi recebida. Verifique novamente a URL no Typeform e consulte o próprio registro de entrega do Typeform para verificar a resposta recebida. Um erro do tipo 404 indica um webhook incorreto ou excluído; um erro do tipo 429 significa que você ultrapassou o limite de invocações do seu plano - consulte Planos e uso.
O fluxo de trabalho é executado para os eventos errados▾
Cada webhook da sua loja aciona o mesmo gatilho do Shopify Flow. Adicione uma condição com base no ID do webhook como primeira etapa do fluxo de trabalho ou restrinja os eventos que você envia do Typeform.
Relacionado
- Verificação de webhooks assinados - todos os prestadores de serviços que verificamos e como descrever aqueles que não verificamos.
- Mapeamento de payload e variáveis de fluxo - extrair os campos corretos do payload e inseri-los no Shopify Flow.
- Proteção contra entregas duplicadas - o que ocorre quando o Typeform tenta novamente enviar um formulário.
- Histórico e solução de problemas - o registro de todas as solicitações, com reprodução.

