Passo a passo
1
Acesse o painel do WooCommerce
No WordPress Admin:
WooCommerce → Configurações → Avançado → Webhooks
2
Crie 4 webhooks
Um para cada evento abaixo. Use a mesma URL e o mesmo Segredo em todos.
| Nome | Tópico |
|---|---|
| Pedido Criado | order.created |
| Pedido Atualizado | order.updated |
| Cliente Criado | customer.created |
| Cliente Atualizado | customer.updated |
3
Configure cada webhook com:
Teste o webhook
Após salvar, clique em "Enviar payload de teste" no WooCommerce.
Volte para Logs do Webhook — deve aparecer um evento com status OK.
O que cada evento sincroniza
- order.created
-
Cria o pedido na dashboard, sincroniza o cliente e os itens comprados.
Já aparece na fila de envios se status =
processing. - order.updated
- Atualiza status do pedido (ex.: de pending para processing quando o pagamento é confirmado).
- customer.created
-
Cria o cliente. A role (
subscriberoucustomer) é lida aqui e define o badge azul/cinza. - customer.updated
-
Atualiza dados e role do cliente. Um
customerpode ser promovido asubscriberaqui.
Campo de preferência de envio
Para que a preferência de envio (Envio Imediato / Aguarda Caixa) apareça no pedido, o checkout precisa enviar o campo:
meta_data key: _shipping_preference
valores aceitos:
valores aceitos:
imediato ou aguarda_caixa
Se usar outro nome de campo, edite a linha correspondente em
WebhookController.php → extractMetaValue().