Expand description
OpenSefaz - SDK Rust para integração com SEFAZ
Esta biblioteca fornece uma interface segura e robusta para comunicação com os serviços da SEFAZ para emissão de NF-e, NFC-e, CT-e e outros documentos fiscais.
§Exemplo de uso
use opensefaz_rs::{Config, NfeClient, Certificado, Ambiente};
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let config = Config::new(
"99999999999999".to_string(), // CNPJ
"99".to_string(), // UF
Ambiente::Homologacao,
);
let cert_mock = "-----BEGIN CERTIFICATE-----
MIICajCCAdOgAwIBAgIJAKL0UG+mRKSzMA0GCSqGSIb3DQEBCwUAMBExDzANBgNV
BAMMBnRlc3RjYTAeFw0yNDAxMDEwMDAwMDBaFw0yNTAxMDEwMDAwMDBaMBExDzAN
BgNVBAMMBnRlc3RjYTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAL3a
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQC92g==
-----END PRIVATE KEY-----";
let certificado = Certificado::from_pem_str(cert_mock, "senha")?;
let client = NfeClient::new(config, certificado)?;
// Consultar situação de uma NF-e
let resultado = client.consultar_por_chave("42150899999999999999550010000000011234567890").await?;
println!("Situação: {:?}", resultado.status);
Ok(())
}Re-exports§
pub use error::Error;pub use error::Result;pub use config::Config;pub use config::Ambiente;pub use certificate::Certificado;pub use nfe::NfeClient;pub use types::*;