NFEConsulta é uma biblioteca .NET moderna para consulta de NF-e e serviços fiscais. Além de verificar a situação da NF-e (autorizada, cancelada e outros eventos), permite consultar dados de CNPJ, obter informações e situação cadastral da empresa, validar certificados digitais A1/A3 e verificar sua data de expiração, oferecendo uma API simples, rápida e pronta para integração em aplicações fiscais.
- Status oficial da SEFAZ via
NFeStatusServico4, em vez de ping ou teste de rede. - Resolucao conservadora de endpoints por UF, com SP como default e override explicito quando necessario.
CorrelationIdopcional para rastrear jobs, lotes e logs.- Validacao de XML contra XSD oficial incluso no pacote.
- Contratos tipados para separar retorno fiscal de falha tecnica.
- Suporte para biblioteca, CLI e API REST interna.
- Pagina inicial da documentacao
- Guia inicial
- Uso da biblioteca
- Referencia da API
- Solucao de problemas
- Integracao interna
- Contribuindo
- Historico de alteracoes
dotnet add package NFEConsultausing System.Security.Cryptography.X509Certificates;
using NFEConsulta.Infrastructure;
using NFEConsulta.Models;
using NFEConsulta.Services;
using X509Certificate2 certificado = CertificadoProvider.ObterPorPem(
"certs/cert.pem",
"certs/key.pem");
NFeConsultaOptions options = new()
{
Ambiente = TipoAmbiente.Producao,
Uf = UfNFe.SP,
CorrelationId = "job-20260619-001"
};
using NFeConsultaClient client = NFeConsultaClient.CriarComCertificado(certificado, options);
ConsultaNFeResult resultado = await client.ConsultarChaveAsync("99999999999999999999999999999999999999999999");using NFEConsulta.Infrastructure;
CertificadoInfo info = certificado.ExtrairInfo();
Console.WriteLine($"CNPJ: {info.Cnpj}");
Console.WriteLine($"Vencimento: {info.DataExpiracao}");nfeconsulta certificado --cert-pem cert.pem --key-pem key.pem
# Ou com saida em JSON:
nfeconsulta certificado --cert-pem cert.pem --key-pem key.pem --jsonVocê pode consultar a situação fiscal e cadastral de um CNPJ, CPF ou Inscrição Estadual (IE) diretamente junto aos webservices estaduais da SEFAZ usando o método NFeCadastroClient.
using NFEConsulta.Models;
using NFEConsulta.Services;
NFeConsultaOptions options = new()
{
Ambiente = TipoAmbiente.Producao,
Uf = UfNFe.SP // Define a UF da consulta
};
using NFeCadastroClient client = NFeCadastroClient.CriarComCertificado(certificado, options);
CadastroConsultaResult resultado = await client.ConsultarCadastroAsync("12345678901234"); // CNPJ, CPF ou IE
if (resultado.Sucesso)
{
foreach (var cad in resultado.Contribuintes)
{
Console.WriteLine($"Nome: {cad.Nome}");
Console.WriteLine($"IE: {cad.IE}");
Console.WriteLine($"Situação: {cad.Situacao}"); // Ex: "Habilitado"
Console.WriteLine($"Endereço: {cad.Endereco?.Logradouro}, {cad.Endereco?.Numero} - {cad.Endereco?.NomeMunicipio}/{cad.UF}");
}
}- Validacao de chave de acesso de 44 digitos.
- Extracao de chave a partir de XML de NF-e.
- Validacao XML contra XSD oficial.
- Consulta de NF-e por chave.
- Consulta do status oficial da SEFAZ.
- Consulta de cadastro de contribuinte (CNPJ, CPF ou IE) via SEFAZ (
CadConsultaCadastro4). - Extração de dados e metadados de certificados digitais (CNPJ, nome, datas).
- Suporte para biblioteca, CLI e API interna.
src/NFEConsulta.Core: biblioteca principal publicada no NuGet comoNFEConsulta.src/NFEConsulta.Cli: CLI publicada comoNFEConsulta.Cli.src/NFEConsulta.Api: API REST interna.
A versao publica atual e 0.4.2.
| Projeto | Descrição |
|---|---|
| NFEEmissor | Emissor completo de Nota Fiscal Eletrônica (NF-e) |
| NFeSchemaDownloader | Mantém os Schemas XML (XSD) da SEFAZ sempre atualizados automaticamente |
| NFEDanfe | Gera DANFE em PDF a partir de XML NF-e autorizado |
- NFEEmissor.Cli (se houver) / ferramentas do ecossistema.
- NFEDanfe.Cli → Geração de DANFE pela linha de comando.
- NFeSchemaDownloader.Cli → Automação de download de Schemas.
NFeSchemaDownloader (Mantém XSDs atualizados)
│
▼
NFEEmissor (Gera o XML da NF-e)
│
▼
NF-e XML
│
▼
NFEConsulta (Valida XML via XSD e consulta SEFAZ)
│
▼
NFEDanfe (Gera o PDF final)
Fabyo Guimaraes Oliveira
- LinkedIn: https://www.linkedin.com/in/fabyo-guimaraes/
- GitHub: https://github.com/fabyo
MIT.
