Pular para o conteúdo principal

Webhooks

A NFE.io notifica eventos (emissão, cancelamento, falha, etc.) por webhook. O SDK cobre a configuração dos webhooks e a verificação de assinatura.

Verificar a assinatura (obrigatório)

As entregas são assinadas com HMAC-SHA1 no header x-hub-signature (hex maiúsculo, prefixo sha1=). Verifique usando o corpo bruto (bytes), não o JSON já parseado.

import express from 'express';

app.post('/webhook/nfe', express.raw({ type: '*/*' }), (req, res) => {
const ok = nfe.webhooks.validateSignature(
req.body, // Buffer bruto — NÃO use express.json()
req.headers['x-hub-signature'], // string | string[] | undefined
process.env.NFE_WEBHOOK_SECRET // seu segredo
);
if (!ok) return res.sendStatus(401);
// ... processe o evento
res.sendStatus(200);
});
Use o corpo bruto

validateSignature compara os bytes exatos que a NFE.io assinou. Se você parsear o corpo antes (express.json()), a reserialização muda os bytes e a verificação falha. Use express.raw() e passe o Buffer.

A comparação é feita com timingSafeEqual (resistente a timing attacks) e aceita a assinatura como string ou string[].

Webhooks por empresa vs por conta

EscopoAcessoCaminho
Empresanfe.webhooks.list/create/retrieve/update/delete(companyId, ...)/companies/{id}/webhooks
Contanfe.webhooks.listAccountWebhooks/createAccountWebhook/.../v2/webhooks (host-root)

Métodos de conta (sem companyId): listAccountWebhooks, createAccountWebhook, retrieveAccountWebhook, updateAccountWebhook, deleteAccountWebhook, pingAccountWebhook e deleteAllAccountWebhooks (⚠️ remove todos).

Tipos de evento ao vivo

Prefira fetchEventTypes() (fonte da verdade é o servidor) ao invés da lista fixa getAvailableEvents() (marcada como @deprecated).

const eventTypes = await nfe.webhooks.fetchEventTypes(); // string[]

Próximos passos

NFE.io

A NFE.io é uma empresa de tecnologia que fornece soluções para automatizar e simplificar a emissão e gestão de notas fiscais eletrônicas. Com suas ferramentas, as empresas podem economizar tempo e reduzir erros, aumentando a eficiência e precisão do processo de emissão de notas fiscais.

Um dos principais cases de sucesso da NFE.io é a implementação da solução na empresa de transporte Rodonaves. Com a automatização da emissão e gestão de notas fiscais eletrônicas, a Rodonaves conseguiu reduzir em até 80% o tempo gasto nesse processo, o que se traduziu em uma significativa melhoria na eficiência operacional. Além disso, a empresa também conseguiu eliminar erros e atrasos na emissão de notas fiscais, o que melhorou a relação com seus clientes e aumentou a confiança dos órgãos fiscais.

Outro exemplo é a implementação da NFE.io na empresa de comércio eletrônico, a Loja Integrada. Com a automatização da emissão de notas fiscais, a Loja Integrada conseguiu aumentar a velocidade de emissão de notas em até 10 vezes, o que permitiu que a empresa atendesse a uma maior quantidade de clientes e, consequentemente, aumentar as suas vendas.

Além desses exemplos, a NFE.io também tem outros cases de sucesso com empresas de setores como indústria, construção, varejo e serviços, mostrando a versatilidade e eficácia da sua solução.

Em resumo, a NFE.io é uma empresa de tecnologia que oferece soluções para automatizar e simplificar a emissão e gestão de notas fiscais eletrônicas, ajudando as empresas a economizar tempo e reduzir erros, melhorando a eficiência e precisão do processo. Com cases de sucesso em diferentes setores, a NFE.io tem se destacado como uma empresa líder em automação fiscal.