InLiveTools.EmissorFiscal 1.0.40

dotnet add package InLiveTools.EmissorFiscal --version 1.0.40
                    
NuGet\Install-Package InLiveTools.EmissorFiscal -Version 1.0.40
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="InLiveTools.EmissorFiscal" Version="1.0.40" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="InLiveTools.EmissorFiscal" Version="1.0.40" />
                    
Directory.Packages.props
<PackageReference Include="InLiveTools.EmissorFiscal" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add InLiveTools.EmissorFiscal --version 1.0.40
                    
#r "nuget: InLiveTools.EmissorFiscal, 1.0.40"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package InLiveTools.EmissorFiscal@1.0.40
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=InLiveTools.EmissorFiscal&version=1.0.40
                    
Install as a Cake Addin
#tool nuget:?package=InLiveTools.EmissorFiscal&version=1.0.40
                    
Install as a Cake Tool

InLiveTools.EmissorFiscal

Biblioteca .NET para emissão de NFC-e (Nota Fiscal de Consumidor Eletrônica, modelo 65): calcula os impostos, monta e assina o XML, transmite à SEFAZ de forma síncrona e trata o cancelamento — tudo a partir de um objeto de venda, sem acesso a banco de dados.

Feita para quem precisa emitir NFC-e a partir de um PDV, e-commerce ou serviço próprio e quer manter a regra de negócio da aplicação separada do núcleo fiscal.

Recursos

  • Emissão de NFC-e (modelo 65) para o Simples Nacional.
  • Cálculo dos impostos do item (ICMS/CSOSN, PIS, COFINS) e dos valores da Lei da Transparência (IBPT).
  • Assinatura digital (XML-DSig) com certificado A1.
  • Geração do QR Code e da URL de consulta da NFC-e.
  • Transmissão síncrona à SEFAZ e leitura do retorno (autorização, rejeição, denegação).
  • Cancelamento por evento (110111), com o XML do procEventoNFe pronto para arquivamento.
  • Multi-target: netstandard2.0 e net10.0.
  • Sem dependência de banco de dados: a biblioteca recebe os dados da venda já resolvidos e devolve o XML assinado/autorizado. A regra de negócio da sua aplicação fica fora do núcleo fiscal.

Instalação

dotnet add package InLiveTools.EmissorFiscal

Ou via PackageReference:

<PackageReference Include="InLiveTools.EmissorFiscal" Version="1.0.37" />

Pré-requisitos

  • Certificado digital A1 (.pfx) válido do emitente.
  • CSC (Código de Segurança do Contribuinte) e o seu identificador (IdCSC), obtidos no portal da SEFAZ da UF do emitente.
  • Inscrição Estadual ativa e credenciamento do emitente para NFC-e na sua UF.

Emitindo uma NFC-e

using System.IO;
using InLiveTools.EmissorFiscal.Nfce;
using InLiveTools.EmissorFiscal.Nfce.Modelos;

var emissor = new EmissorNFCe();

var configuracao = new ConfiguracaoEmissaoNFCe
{
    Ambiente = AmbienteFiscal.Homologacao,          // AmbienteFiscal.Producao quando for valer
    CertificadoArquivoBytes = File.ReadAllBytes("certificado.pfx"),
    CertificadoSenha = "senha-do-certificado",
    IdentificadorCsc = "000001",                    // IdCSC informado no portal da SEFAZ
    Csc = "SEU-CODIGO-DE-SEGURANCA-DO-CONTRIBUINTE",
    ResponsavelTecnico = new ResponsavelTecnicoNFCe
    {
        Cnpj = "00000000000000",
        Contato = "Suporte Tecnico",
        Email = "suporte@suaempresa.com.br",
        Telefone = "1130000000"
    }
};

var documento = new DocumentoVendaNFCe
{
    Serie = 1,
    NumeroNF = 123,                                 // numeração reservada pela sua aplicação
    Emitente = new EmitenteNFCe
    {
        Cnpj = "00000000000000",
        RazaoSocial = "Loja Exemplo LTDA",
        NomeFantasia = "Loja Exemplo",
        InscricaoEstadual = "000000000000",
        Regime = RegimeTributario.SimplesNacional,
        Logradouro = "Rua Exemplo",
        Numero = "100",
        Bairro = "Centro",
        CodigoMunicipio = 3550308,                  // código IBGE do município
        NomeMunicipio = "Sao Paulo",
        Uf = "SP",
        CodigoUf = 35,                              // código IBGE da UF
        Cep = "01001000"
    },
    Itens =
    {
        new ItemVendaNFCe
        {
            Codigo = "7891234",
            Descricao = "Produto de exemplo",
            UnidadeComercial = "UN",
            Quantidade = 1,
            ValorUnitario = 10.00m,
            ValorBruto = 10.00m,
            Ncm = "22021000",
            Cfop = "5102",
            OrigemMercadoria = 0,
            SituacaoTributariaIcms = "102"          // CSOSN (Simples Nacional)
        }
    },
    Pagamentos =
    {
        new PagamentoNFCe { Forma = FormaPagamentoNFCe.Dinheiro, Valor = 10.00m }
    }
};

var resultado = emissor.Emitir(documento, configuracao);

if (resultado.Autorizada)
{
    // resultado.ChaveAcesso     -> chave de acesso (44 dígitos)
    // resultado.NumeroProtocolo -> protocolo de autorização
    // resultado.XmlAutorizado   -> nfeProc (NFe + protocolo), guarde por 5 anos
    // resultado.QrCodeUrl / resultado.UrlConsulta -> impressão do DANFE NFC-e
}
else
{
    // resultado.Desfecho -> Rejeitada, Denegada ou FalhaComunicacao
    // resultado.CStat / resultado.Motivo -> retorno da SEFAZ
    // resultado.XmlAssinado permanece disponível para arquivamento / retransmissão
}

Desfechos da emissão

O retorno (ResultadoEmissaoNFCe.Desfecho) distingue os quatro estados que exigem tratamento diferente:

Desfecho Significado
Autorizada Autorizada pela SEFAZ. Pode imprimir e entregar o comprovante fiscal.
Rejeitada Recebida e rejeitada por validação. O número foi consumido.
Denegada Denegada por irregularidade fiscal do emitente/destinatário.
FalhaComunicacao Sem resposta da SEFAZ (timeout/rede). Operação retentável.

Em qualquer desfecho em que o XML chegou a ser montado, XmlAssinado é preenchido — útil para arquivamento e futura retransmissão sem regenerar o documento.

Cancelando uma NFC-e

var cancelamento = new CancelamentoNFCe
{
    ChaveAcesso = resultado.ChaveAcesso,
    ProtocoloAutorizacao = resultado.NumeroProtocolo,
    CnpjEmitente = "00000000000000",
    CodigoUf = 35,
    Justificativa = "Cancelamento a pedido do consumidor apos a venda"   // 15 a 255 caracteres
};

var retorno = emissor.Cancelar(cancelamento, configuracao);

if (retorno.Aceito)
{
    // retorno.XmlEvento -> procEventoNFe (evento + retorno), guarde por 5 anos
}

Prazo: o cancelamento só é aceito pela SEFAZ dentro do prazo legal, contado a partir da autorização. Validar o prazo antes de chamar Cancelar é responsabilidade da sua aplicação.

Mantida pela InLive Consultoria

Esta biblioteca é desenvolvida e mantida pela InLive Consultoria.

🌐 www.inlive.com.br

Sobre a InLive Consultoria

A InLive Consultoria atua no desenvolvimento de sistemas integrados que geram inteligência estratégica e corporativa, com foco em redes de franquias.

Somos uma empresa criativa, com expertise no desenvolvimento de softwares para as plataformas web, mobile e desktop.

Licença

Distribuída sob a licença MIT.

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
.NET Core netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.0 is compatible.  netstandard2.1 was computed. 
.NET Framework net461 was computed.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen40 was computed.  tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.0.40 96 7/30/2026
1.0.39 88 7/30/2026
1.0.38 104 7/25/2026
1.0.37 94 7/25/2026
1.0.36 104 7/24/2026
1.0.35 94 7/24/2026
1.0.34 94 7/23/2026
1.0.33 103 7/23/2026
1.0.32 98 7/21/2026
1.0.30 115 6/29/2026
1.0.29 106 6/29/2026
1.0.27 123 6/26/2026
1.0.26 112 6/25/2026
1.0.25 108 6/25/2026
1.0.24 112 6/24/2026
1.0.23 152 2/9/2026
1.0.22 162 1/15/2026
1.0.21 151 1/14/2026
1.0.20 141 1/14/2026
1.0.19 368 11/13/2025
Loading failed