[][src]Crate fiscalidade

fiscalidade Biblioteca Rust para geração, validação, assinatura de XMLs de Documentos Fiscais e transmissão com webservices da SEFAZ.

Exemplo

O exemplo abaixo mostra como obter o status do serviço de homologação para o Mato Grosso:

extern crate anyhow;
extern crate fiscalidade;

use fiscalidade::{Ambiente, Dfe, Pkcs12Certificate, Tipo, Uf, WebServices};

fn main() -> anyhow::Result<()> {
    let webservices = WebServices::from_file("resources/webservices.ini")?;
    let pkcs12 = Pkcs12Certificate::from_file("resources/certificado.pfx", "minha-senha-secreta")?;
    let dfe = Dfe::new(Tipo::Nfe)
        .set_webservices(webservices)
        .set_pkcs12(pkcs12);
    let xml = dfe.status_servico(Uf::Mt, Ambiente::Homologacao)?;
    println!("XML retornado: {}", String::from_utf8_lossy(&xml));
    Ok(())
}

Structs

Client

Client HTTP com suporte a TLS e compressão de dados.

ClientBuilder

Construtor de clients HTTP usando build pattern.

Dfe
Documento
Pkcs12Certificate

Objeto para manipulação de certificados PKCS #12.

WebServices
WebServicesBuilder

Enums

Ambiente
ClientError

Tipo para tratar erros relacionados a I/O e ao client HTTP.

DfeError
Modelo
Pkcs12CertificateError

Tipo para tratar erros relacionados a I/O e leitura de certificado PKCS #12.

Servico
Tipo
TipoDocumento
Uf
VersaoUrl
WebServicesBuilderError
WebServicesError

Constants

CLIENT_CONNECT_TIMEOUT

Tempo padrão de timeout para conexão de client HTTP.

CLIENT_TIMEOUT

Tempo padrão de timeout para transmissão de dados de client HTTP.

Functions

format_action
format_cons_cad
format_cons_sit
format_cons_stat_serv
format_dados_msg
format_envelope
format_portal
validar_ambiente

Valida se Ambiente é está presente na lista de Ambientes válidos.

validar_chave

Valida chave de nota usando regra ^[0-9]{44}$ extraída de arquivo XSD da SEFAZ.

validar_uf

Valida se UF é está presente na lista de UFs válidas.

Type Definitions

ClientBuilderResult

Tipo para tratar retorno do builder de client HTTP.

ClientResult

Tipo para tratar retorno do client HTTP.

DfeResult
Pkcs12CertificateResult

Tipo para tratar retorno de leitura do certificado PKCS #12.

WebServicesBuilderResult
WebServicesIniResult