Webhooks da Emitra no Make
Atualizado em
Nesta página
No Make (antigo Integromat) você monta cenários visuais que reagem a eventos da Emitra: registrar a nota autorizada numa planilha, avisar o financeiro de uma rejeição, atualizar o CRM.
Pré-requisitos#
- Conta no Make.
- Usuário owner ou admin na Emitra, para cadastrar webhooks.
- Uma chave de API com escopos mínimos, se o cenário for chamar a Emitra. Veja Autenticação.
1. Crie o webhook no Make#
- Crie um cenário e adicione o módulo Custom webhook como gatilho.
- Crie um novo webhook e copie a URL gerada.
2. Cadastre a URL na Emitra#
- No painel, vá em Notas › Automação › Integrações › Webhooks e clique em Novo webhook.
- Cole a URL, escolha os eventos e salve. Guarde o segredo de assinatura.
- No Make, deixe o módulo esperando dados e clique em Testar na Emitra. O Make usa esse evento para descobrir a estrutura do JSON.
A estrutura completa de cada evento está no catálogo.
3. Filtre por tipo de evento#
Se um mesmo webhook recebe vários eventos, coloque um filtro logo depois do gatilho, por exemplo type igual a nfse.authorized. Para separar sandbox e produção, filtre também is_test.
4. Valide a origem#
O Custom webhook aceita qualquer requisição na URL. A verificação HMAC exige o corpo bruto e os headers X-Emitra-Timestamp e X-Emitra-Signature:
- Nas opções avançadas do webhook no Make, habilite a passagem dos headers e do corpo da requisição para o cenário.
- Calcule
sha256=+ HMAC-SHA256 em hexadecimal detimestamp + "." + corpo_brutocom o segredo, usando as funções de hash/HMAC do Make. - Compare com o header e só continue se forem iguais e o timestamp tiver no máximo 5 minutos.
A fórmula está em Verificar a assinatura.
5. Chame a API de volta#
Use um módulo de requisição HTTP:
| Configuração | Valor |
|---|---|
| URL | https://emitra.com.br/api/v1/integracao/nfse/{{data.nfse_id}} |
| Método | GET |
| Header | Authorization: Bearer emt_test_xxxxxxxx_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx |
Para baixar o XML, use /xml no fim da URL e habilite seguir redirects: a resposta pode ser um redirect para um link temporário de 60 segundos.
Para emitir, faça POST /integracao/nfse com corpo JSON e o header Idempotency-Key com um valor estável do sistema de origem. Assim, se o Make repetir a execução, a nota não sai duplicada. Veja Idempotência.