Skip to main content

Crate nfe_parser

Crate nfe_parser 

Source
Expand description

§NFe - Biblioteca Rust para Nota Fiscal Eletrônica

Esta biblioteca fornece estruturas e utilitários para parsing e serialização de arquivos XML de Nota Fiscal Eletrônica (NF-e) brasileira.

§Funcionalidades

  • Parse de XML de NF-e (Layout 4.00)
  • Serialização de estruturas para XML
  • Suporte a NF-e (modelo 55) e NFC-e (modelo 65)
  • Validação de campos obrigatórios

§Exemplo de uso

use std::fs::File;
use std::convert::TryFrom;
use nfe::Nfe;

fn main() -> Result<(), Box<dyn std::error::Error>> {
    let file = File::open("nota.xml")?;
    let nfe = Nfe::try_from(file)?;
     
    println!("Chave de acesso: {}", nfe.chave_acesso);
    println!("Emitente: {:?}", nfe.emit.razao_social);
     
    Ok(())
}

Re-exports§

pub use base::dest::Destinatario;
pub use base::dest::IndicadorContribuicaoIe;
pub use base::emit::Emitente;
pub use base::endereco::Endereco;
pub use base::ide::ComposicaoChaveAcesso;
pub use base::ide::DestinoOperacao;
pub use base::ide::Emissao;
pub use base::ide::FinalidadeEmissao;
pub use base::ide::FormatoImpressaoDanfe;
pub use base::ide::Identificacao;
pub use base::ide::ModeloDocumentoFiscal;
pub use base::ide::Operacao;
pub use base::ide::TipoAmbiente;
pub use base::ide::TipoConsumidor;
pub use base::ide::TipoEmissao;
pub use base::ide::TipoIntermediador;
pub use base::ide::TipoOperacao;
pub use base::ide::TipoPresencaComprador;
pub use base::ide::TipoProcessoEmissao;
pub use base::item::Imposto;
pub use base::item::Item;
pub use base::item::Produto;
pub use base::totais::Totalizacao;
pub use base::transporte::ModalidadeFrete;
pub use base::transporte::Transporte;
pub use base::Error;
pub use base::Nfe;
pub use base::VersaoLayout;
pub use builder::NfeBuilder;
pub use builder::ItemBuilder;

Modules§

base
Base da NF-e - Estruturas fundamentais da Nota Fiscal Eletrônica
builder
Builder para criação de NF-e
modelos
Módulo de modelos