You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
4 years ago | |
|---|---|---|
| docs | 10 years ago | |
| pynfe | 4 years ago | |
| tests | 10 years ago | |
| .gitignore | 5 years ago | |
| AUTHORS | 11 years ago | |
| LICENCE | 16 years ago | |
| MANIFEST.in | 5 years ago | |
| PLANEJAMENTO | 10 years ago | |
| README.md | 6 years ago | |
| requirements-nfse.txt | 5 years ago | |
| requirements.txt | 8 years ago | |
| run_fake_soap_server.py | 16 years ago | |
| run_tests.py | 16 years ago | |
| separarpfx.sh | 8 years ago | |
| setup.py | 5 years ago | |
| test.py | 9 years ago | |
README.md
Atualizado para a versão 4.00 NF-e/NFC-e
Visão Geral
Biblioteca de interface com o webservice de Nota Fiscal Eletronica,
(NF-e/NFC-e/NFS-e) da SEFAZ, oficializada pelo Ministerio da Fazendo do
Governo do Brasil.
Desenvolvido e testado com Python 3.6 no GNU/Linux.
A NF-e visa substituir as notas fiscais séries 1 e 1A.
A NFC-e visa substituir as notas fiscais modelo 2 e
cupom fiscal emitido por ECF.
NFS-e padrão Abrasf para autorizadores Ginfes e Betha.
Dependências
- lxml
- biblioteca de leitura e gravação de arquivos XML, de alta performance e fácil de implementar.
- signxml
- assinatura e validação do XML
- pyopenssl
- biblioteca para manuseio do certificado digital
- requests
- biblioteca para a comunicação com os webservices da SEFAZ
- suds-jurko (*apenas para NFS-e)
- biblioteca para a comunicação com os webservices via wsdl
- pyxb (*apenas para NFS-e)
- biblioteca para geração de bindings a partir de XML Schema(xsd)
Referências
-
Site oficial da Nota Fiscal eletrônica
-
lxml
-
requests
-
Schemas para validação dos arquivos
-
Validador de xml
-
Validador de assinaturas
Instalação
pip3 install --user https://github.com/TadaSoftware/PyNFe/archive/master.zip
Opcional para NFS-e:
pip3 install --user -r https://github.com/TadaSoftware/PyNFe/raw/master/requirements-nfse.txt
Exemplos de uso
- Consulta Status
from pynfe.processamento.comunicacao import ComunicacaoSefaz
certificado = "/home/user/certificado.pfx"
senha = 'senha'
uf = 'pr'
homologacao = True
con = ComunicacaoSefaz(uf, certificado, senha, homologacao)
xml = con.status_servico('nfe')
print (xml.text)