Skip to main content

Migrar do NFe.io

Tempo estimado de migração: 1–3 horas de desenvolvimento

Diferenças Principais

AspectoNFe.ioEngine API
AutenticaçãoAPI Key no header AuthorizationBearer JWT ou x-api-key
Estrutura de URL/v1/companies/{companyId}/productinvoices/{id}/nfe/{id} (sem empresa na URL)
Empresa no pedidocompanyId na URLissuerId no body
Tipo de notaSeparado por endpoint (productinvoices, serviceinvoices)Separado por módulo (/nfe, /nfse)
WebhooksConfigurados por empresaConfigurados globalmente

Mapeamento de Endpoints

NFe.ioEngine APINotas
POST /v1/companies/{id}/productinvoicesPOST /nfe/emitirissuerId no body
GET /v1/companies/{id}/productinvoices/{inv}GET /nfe/{id}
GET /v1/companies/{id}/productinvoicesGET /nfe
DELETE /v1/companies/{id}/productinvoices/{inv}POST /nfe/{id}/cancelarMétodo diferente
POST /v1/companies/{id}/serviceinvoicesPOST /nfse/emitir
GET /v1/companies/{id}/serviceinvoices/{inv}GET /nfse/{id}
DELETE /v1/companies/{id}/serviceinvoices/{inv}POST /nfse/{id}/cancelar
POST /v1/companiesPOST /companies
GET /v1/companies/{id}GET /companies/{id}
PUT /v1/companies/{id}/certificatePOST /companies/{id}/certificateMultipart/form-data

Mapeamento de Campos

NFe (productinvoices → nfe)

Campo NFe.ioCampo Engine APINotas
cityServiceCodeNão aplicável para NFe
descriptionnaturezaOperacao
borrower.federalTaxNumberdestinatario.cnpj
borrower.namedestinatario.nome
borrower.address.streetdestinatario.endereco.logradouro
borrower.address.numberdestinatario.endereco.numero
borrower.address.districtdestinatario.endereco.bairro
borrower.address.city.codedestinatario.endereco.codigoMunicipioCódigo IBGE
borrower.address.city.namedestinatario.endereco.municipio
borrower.address.statedestinatario.endereco.uf
borrower.address.postalCodedestinatario.endereco.cep

Gotchas — O que é diferente

O NFe.io coloca companyId na URL: /v1/companies/{companyId}/productinvoices. Na Engine API, o identificador da empresa é o campo issuerId dentro do JSON do body.
NFe.io: DELETE /v1/companies/{id}/productinvoices/{inv}. Engine API: POST /nfe/{id}/cancelar com o campo obrigatório motivo (15–255 caracteres).
NFe.io usa productinvoices para NFe e serviceinvoices para NFSe. A Engine API usa os módulos /nfe e /nfse diretamente.
No NFe.io, os webhooks são configurados por empresa. Na Engine API, um webhook recebe eventos de todas as empresas do seu token — filtre pelo issuerId no payload.

Checklist de Migração

1

Criar conta na Engine API

Registre-se em app.engineapi.com.br.
2

Cadastrar empresas emissoras

POST /companies para cada CNPJ. Guarde os id retornados.
3

Upload dos certificados

POST /companies/{issuerId}/certificate para cada empresa.
4

Testar em homologação

Emita notas com environment: 2 e valide os campos mapeados.
5

Adaptar endpoints

Remova companyId da URL e mova para issuerId no body.
6

Configurar webhooks globais

Um webhook global recebe eventos de todas as empresas — filtre por issuerId.
7

Migrar para produção

Mude environment: 1 e redirecione sua integração para a Engine API.

Próximos passos

Autenticação

JWT e API Keys da Engine API

Webhooks

Filtrar eventos por empresa emissora