Como ligar o WooCommerce ao Shopify Flow
O WooCommerce pode enviar um Webhook relativo a pedidos, produtos, clientes e cupões a partir de uma loja WordPress. O Workflow Webhooks transforma essa chamada num gatilho do Shopify Flow, para que a sua loja possa reagir a ela: atribuir uma etiqueta a um cliente, adicionar uma nota ao pedido, enviar um e-mail interno, atualizar um metacampo - tudo o que o Shopify Flow permite fazer.
Este guia define todo o processo - o WooCommerce envia, o Workflow Webhooks recebe e verifica, o Shopify Flow executa - com a assinatura HMAC do WooCommerce verificada em cada pedido, pelo que apenas o WooCommerce pode iniciar o seu fluxo de trabalho.
O que pode construir
- Importe um pedido de uma loja WooCommerce para Shopify Flow: associe o cliente correspondente ou adicione uma nota.
- Mantenha a lista de clientes atualizada enquanto efetua a migração do WooCommerce para o Shopify.
- Reagir no
Shopifyquando um produto ficar esgotado no WooCommerce.
Eventos típicos a enviar: order.created, order.updated, product.updated, customer.created.
Antes de começar
- Workflow Webhooks instalado na sua loja Shopify.
- Shopify Flow instalada, que está disponível gratuitamente na App Store da Shopify.
- Uma conta no WooCommerce com permissão para criar webhooks.
Passo 1 - Crie o webhook em Workflow Webhooks
- Aceda a Workflow Webhooks -> Webhooks -> Criar webhook e atribua-lhe um nome que consiga reconhecer no Shopify Flow, como, por exemplo,
WooCommerce events. - Na secção «Autenticação», selecione HMAC.
- Na secção «Provedor de assinatura», selecione WooCommerce. A aplicação preenche automaticamente o cabeçalho, o algoritmo, o payload assinado e a janela de repetição - não há mais nada a configurar.
- Por enquanto, deixe o campo «segredo» em branco e clique em «Guardar». Copie o URL do webhook que aparece na página.
Consulte Autenticação para conhecer os outros modos de autenticação e Mapeamento da carga útil e variáveis de fluxo para saber como selecionar os campos que serão enviados ao Shopify Flow.
Passo 2 - Adicione o ponto final no WooCommerce
No WordPress, abra o WooCommerce -> Configurações -> Avançado -> Webhooks, adicione um webhook com o URL como «URL de entrega» e defina o «Segredo».
Como encontrar o seu segredo de assinatura do WooCommerce
A configuração do Secret no webhook (WooCommerce → Definições → Avançado → Webhooks).
A própria documentação do WooCommerce sobre assinaturas de webhooks contém o texto exato e as capturas de ecrã relativas à sua conta.
Cole esse segredo no campo «Secret» do webhook em Workflow Webhooks e guarde. A partir desse momento, todas as entregas do WooCommerce serão verificadas antes de chegarem ao Shopify Flow.
O que isto verifica
| O quê | Valor |
|---|---|
| Cabeçalho da assinatura | X-WC-Webhook-Signature |
| Onde se encontra a assinatura | O valor completo do cabeçalho |
| 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 - este remetente não assina o carimbo temporal, pelo que todas as assinaturas válidas permanecem válidas |
| O segredo | Utilizado como texto simples. Cole-o exatamente tal como o remetente o apresenta |
Na payload assinada, {body} corresponde ao corpo da solicitação em formato bruto, byte a byte.
Um pedido que não cumpra qualquer um destes requisitos é rejeitado com o código de erro 401, é registado em Histórico e resolução de problemas e nunca dá início a um fluxo de trabalho.
Passo 3 - Criar o fluxo de trabalho Shopify Flow
- No «Shopify Flow», crie um fluxo de trabalho e selecione o gatilho «Workflow Webhooks».
- Clique em «Registar eventos» e, em seguida, envie um evento de teste a partir do WooCommerce (ou utilize a opção «Enviar teste» em Workflow Webhooks) para que o Shopify Flow aprenda a estrutura dos seus dados.
- Cada webhook de que dispõe aciona o mesmo gatilho do Shopify Flow; por isso, adicione uma primeira condição com base no ID do webhook para que este fluxo de trabalho se aplique apenas ao WooCommerce. O ID é apresentado na página do webhook.
- Adicione as suas ações - identifique um cliente, adicione uma nota, envie um e-mail interno, atualize um metacampo.



Passo 4 - Teste-o de ponta a ponta
Gatilho de um evento real no WooCommerce. Em Workflow Webhooks -> Histórico, deverá ver a chamada com o estado «Sucesso». Se a assinatura estiver incorreta, receberá, em vez disso, um registo com o motivo da falha, e Verificação de webhooks assinados explica como funciona o verificador de assinaturas, que lhe mostra exatamente qual a etapa em que ocorreu a falha.

A assinatura não corresponde▾
Por este pedido: o segredo (a causa mais comum - um espaço a mais ou uma chave proveniente de um ambiente errado), se o remetente está a utilizar o segredo de um ponto final diferente e se algo entre o WooCommerce e a aplicação reescreve o corpo da mensagem. As assinaturas abrangem os bytes em bruto, pelo que um proxy que reformate o JSON as invalida. O verificador de assinaturas na página do webhook apresenta o texto exato que foi assinado.
Recebo um erro 401 em todos os pedidos▾
Verifique se a autenticação do webhook está definida para HMAC com o fornecedor WooCommerce selecionado, se o segredo está preenchido e se o WooCommerce está a enviar dados para a URL exatamente como a aplicação a apresenta, incluindo o código no final.
Não aparece nada no Histórico▾
O pedido nunca chegou. Verifique novamente o URL no WooCommerce e consulte o registo de entregas do próprio WooCommerce para ver a resposta que recebeu. Um erro 404 significa que o webhook está incorreto ou foi eliminado; um erro 429 significa que ultrapassou o limite de invocações do seu plano - consulte Planos e utilização.
O fluxo de trabalho é executado para os eventos errados▾
Cada webhook da sua loja aciona o mesmo gatilho do Flow. Adicione uma condição com base no ID do webhook como primeiro passo do fluxo de trabalho ou restrinja os eventos que envia a partir do WooCommerce.
Relacionado
- Verificação de webhooks assinados - todos os prestadores que verificamos e como descrever aqueles que não verificamos.
- Mapeamento da carga útil e variáveis de fluxo - extrair os campos corretos da payload e transferi-los para o Shopify Flow.
- Proteção contra entregas duplicadas - o que acontece quando o WooCommerce tenta novamente efetuar uma entrega.
- Histórico e resolução de problemas - o registo de cada pedido, com reprodução.

