6 changed files with 174 additions and 86 deletions
-
32nfse-example.py
-
1pytrustnfe/nfse/natal/__init__.py
-
13tests/XMLs/natal_sent_xml.xml
-
80tests/test_nfse_natal.py
-
18tests/test_nfse_paulistana.py
@ -0,0 +1,13 @@ |
|||
<EnviarLoteRpsEnvio xmlns="http://www.abrasf.org.br/ABRASF/arquivos/nfse.xsd"><LoteRps Id="1"><NumeroLote>1</NumeroLote><Cnpj>23809070000190</Cnpj><InscricaoMunicipal>2143992</InscricaoMunicipal><QuantidadeRps>1</QuantidadeRps><ListaRps><Rps><InfRps Id="1"><IdentificacaoRps><Numero>1</Numero><Serie>UNICA</Serie><Tipo>1</Tipo></IdentificacaoRps><DataEmissao>2020-01-279</DataEmissao><NaturezaOperacao>1</NaturezaOperacao><RegimeEspecialTributacao>1</RegimeEspecialTributacao><OptanteSimplesNacional>1</OptanteSimplesNacional><IncentivadorCultural>2</IncentivadorCultural><Servico><Valores><ValorServicos>1.00</ValorServicos><IssRetido>2</IssRetido><BaseCalculo>0.00</BaseCalculo></Valores><ItemListaServico>01.07</ItemListaServico><CodigoCnae>6209100</CodigoCnae><Discriminacao>Sistema NFSe</Discriminacao><CodigoMunicipio>2408102</CodigoMunicipio></Servico><PrestadorServico><IdentificacaoPrestador><Cnpj>23809070000190</Cnpj><InscricaoMunicipal>2143992</InscricaoMunicipal></IdentificacaoPrestador><NomeFantasia>SERVICOS DE TI</NomeFantasia><Endereco><Endereco>AV AMINTAS</Endereco><Numero>3755</Numero><Complemento>SALA 32</Complemento><Bairro>Lagoa Nova</Bairro><Uf>RN</Uf><Cep>59075810</Cep></Endereco><Contato><Telefone>4132095554</Telefone><Email>SUPORTE@EMAIL.COM.BR</Email></Contato></PrestadorServico><TomadorServico><RazaoSocial>LEONIR</RazaoSocial><Endereco><Numero>128</Numero><Bairro>Lagoa Nova</Bairro><Uf>BH</Uf><Cep>1231231313</Cep></Endereco><Contato><Telefone>leonir@yahoo.com.br</Telefone></Contato><OrgaoGerador><CodigoMunicipio>3159506</CodigoMunicipio></OrgaoGerador></TomadorServico></InfRps></Rps></ListaRps></LoteRps><Signature xmlns="http://www.w3.org/2000/09/xmldsig#"><SignedInfo><CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/><SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1"/><Reference URI=""><Transforms><Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature"/><Transform Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/></Transforms><DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/><DigestValue>z7+372qFhKwwj41AkJ3chbHEYGM=</DigestValue></Reference></SignedInfo><SignatureValue>JgW5SbS50rDeJav88IiMdONT6wrKD1pom9otB3QfVllSzfe23olZBsAR6D1/XezBaqCd123yKTbN0o+WPGDaz6Qj+RiCC8Ezthv9Re3RZw5vFCaGGzjj5Rm+KwHoY5kfoK+EhZQKqMdLRzYesdI0f5B9RawM0R8c1XCIYNS6j/0=</SignatureValue><KeyInfo><X509Data><X509Certificate>MIICMTCCAZqgAwIBAgIQfYOsIEVuAJ1FwwcTrY0t1DANBgkqhkiG9w0BAQUFADBX |
|||
MVUwUwYDVQQDHkwAewA1ADkARgAxAEUANAA2ADEALQBEAEQARQA1AC0ANABEADIA |
|||
RgAtAEEAMAAxAEEALQA4ADMAMwAyADIAQQA5AEUAQgA4ADMAOAB9MB4XDTE1MDYx |
|||
NTA1NDc1N1oXDTE2MDYxNDExNDc1N1owVzFVMFMGA1UEAx5MAHsANQA5AEYAMQBF |
|||
ADQANgAxAC0ARABEAEUANQAtADQARAAyAEYALQBBADAAMQBBAC0AOAAzADMAMgAy |
|||
AEEAOQBFAEIAOAAzADgAfTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAk41G |
|||
nqXXLaiOC/y0/cA4tbS+NZCqI+x4EsztgDFvPPlHstiVYcLRkni4i93gK9zoC6g0 |
|||
mh66HMVzAfE8vRNwW5b7m6nWS1SiHBon7/Mqsw4MIq3SC+J/fTbKpqwyfAuH2YZl |
|||
AiQuQc85fyllAMLh2WrA7JgOLR/5tF3kLtpbHdECAwEAATANBgkqhkiG9w0BAQUF |
|||
AAOBgQArdh+RyT6VxKGsXk1zhHsgwXfToe6GpTF4W8PHI1+T0WIsNForDhvst6nm |
|||
QtgAhuZM9rxpOJuNKc+pM29EixpAiZZiRMCSWEItNyEVdUIi+YnKBcAHd88TwO86 |
|||
d126MWQ2O8cu5W1VoDp7hYBYKOnLbYi11/StO+0rzK+oPYAvIw== |
|||
</X509Certificate></X509Data></KeyInfo></Signature></EnviarLoteRpsEnvio> |
|||
@ -0,0 +1,80 @@ |
|||
# coding=utf-8 |
|||
|
|||
import mock |
|||
import os.path |
|||
import unittest |
|||
from pytrustnfe.certificado import Certificado |
|||
from pytrustnfe.nfse.natal import recepcionar_lote_rps |
|||
|
|||
|
|||
class test_nfse_natal(unittest.TestCase): |
|||
|
|||
caminho = os.path.dirname(__file__) |
|||
|
|||
def _get_nfse(self): |
|||
rps_list = [ |
|||
{ |
|||
"numero": "1", |
|||
"serie": "UNICA", |
|||
"tipo_rps": "1", |
|||
"data_emissao": "2020-01-279", |
|||
"natureza_operacao": "1", |
|||
"regime_tributacao": "1", |
|||
"optante_simples": "1", |
|||
"incentivador_cultural": "2", |
|||
"servico": { |
|||
"valor_servico": "1.00", |
|||
"iss_retido": "2", |
|||
"base_calculo": "0.00", |
|||
"codigo_servico": "01.07", |
|||
"cnae_servico": "6209100", |
|||
"descricao": "Sistema NFSe", |
|||
"codigo_municipio": "2408102", |
|||
}, |
|||
"prestador": { |
|||
"cnpj": "23809070000190", |
|||
"inscricao_municipal": "2143992", |
|||
"razao_social": "SERVICOS DE TI", |
|||
"fantasia": "SERVICOS DE TI", |
|||
"endereco": "AV AMINTAS", |
|||
"numero": "3755", |
|||
"complemento": "SALA 32", |
|||
"bairro": "Lagoa Nova", |
|||
"codigo_municipio": "2408102", |
|||
"uf": "RN", |
|||
"cep": "59075810", |
|||
"telefone": "4132095554", |
|||
"email": "SUPORTE@EMAIL.COM.BR", |
|||
}, |
|||
"tomador": { |
|||
"cpf_cnpj": "01812418000166", |
|||
"razao_social": "LEONIR", |
|||
"endereco": "RUA GROBEIRO", |
|||
"numero": "128", |
|||
"bairro": "Lagoa Nova", |
|||
"cidade": "3159506", |
|||
"uf": "BH", |
|||
"cep": "1231231313", |
|||
"email": "leonir@yahoo.com.br", |
|||
"orgao_gerador": {"codigo_municipio": "3159506"}, |
|||
}, |
|||
} |
|||
] |
|||
nfse = { |
|||
"numero_lote": "1", |
|||
"cnpj_prestador": "23809070000190", |
|||
"inscricao_municipal": "2143992", |
|||
"lista_rps": rps_list, |
|||
} |
|||
return nfse |
|||
|
|||
def test_recepcionar_lote_rps(self): |
|||
pfx_source = open(os.path.join(self.caminho, "teste.pfx"), "rb").read() |
|||
pfx = Certificado(pfx_source, "123456") |
|||
|
|||
nfse = self._get_nfse() |
|||
path = os.path.join(os.path.dirname(__file__), "XMLs") |
|||
sent_xml = open(os.path.join(path, "natal_sent_xml.xml"), "r").read() |
|||
|
|||
retorno = recepcionar_lote_rps(pfx, nfse=nfse) |
|||
self.assertEqual(retorno["sent_xml"], sent_xml) |
|||
Write
Preview
Loading…
Cancel
Save
Reference in new issue