diff --git a/pynfe/processamento/nfe.py b/pynfe/processamento/nfe.py index bbf31df..2494b5e 100644 --- a/pynfe/processamento/nfe.py +++ b/pynfe/processamento/nfe.py @@ -189,9 +189,11 @@ class ComunicacaoNFe(Comunicacao): :return: """ # UF que utilizam a SVRS - Sefaz Virtual do RS: Para serviço de Consulta Cadastro: AC, RN, PB, SC - lista_svrs = ['AC', 'RN', 'PB', 'SC'] + lista_svrs = ['AC', 'RN', 'PB', 'SC', 'PA'] # RS implementa um método diferente na consulta de cadastro + # usa o mesmo url para produção e homologação + # não tem url para NFCE if self.uf.upper() == 'RS': url = NFE['RS']['CADASTRO'] elif self.uf.upper() in lista_svrs: @@ -347,7 +349,7 @@ class ComunicacaoNFe(Comunicacao): raise Exception('Modelo não encontrado! Defina modelo="nfe" ou "nfce"') # Estados que utilizam outros ambientes else: - lista_svrs = ['AC', 'AL', 'AP', 'DF', 'ES', 'PB', 'PI', 'RJ', 'RN', 'RO', 'RR', 'SC', 'SE', 'TO'] + lista_svrs = ['AC', 'AL', 'AP', 'DF', 'ES', 'PB', 'PI', 'RJ', 'RN', 'RO', 'RR', 'SC', 'SE', 'TO', 'PA'] if self.uf.upper() in lista_svrs: if self._ambiente == 1: ambiente = 'HTTPS' diff --git a/pynfe/processamento/serializacao.py b/pynfe/processamento/serializacao.py index 7433e28..7950c65 100644 --- a/pynfe/processamento/serializacao.py +++ b/pynfe/processamento/serializacao.py @@ -259,8 +259,18 @@ class SerializacaoXML(Serializacao): etree.SubElement(prod, 'qTrib').text = str(produto_servico.quantidade_tributavel) etree.SubElement(prod, 'vUnTrib').text = '{:.4f}'.format(produto_servico.valor_unitario_tributavel or 0) + # frete + if produto_servico.total_frete: + etree.SubElement(prod, 'vFrete').text = '{:.2f}'.format(produto_servico.total_frete) + # seguro + if produto_servico.total_seguro: + etree.SubElement(prod, 'vSeg').text = '{:.2f}'.format(produto_servico.total_seguro) + # desconto if produto_servico.desconto: etree.SubElement(prod, 'vDesc').text = '{:.2f}'.format(produto_servico.desconto) + # outras despesas acessórias + if produto_servico.outras_despesas_acessorias: + etree.SubElement(prod, 'vOutro').text = '{:.2f}'.format(produto_servico.outras_despesas_acessorias) """ Indica se valor do Item (vProd) entra no valor total da NF-e (vProd) 0=Valor do item (vProd) não compõe o valor total da NF-e diff --git a/pynfe/utils/webservices.py b/pynfe/utils/webservices.py index 9e45e80..357b0ea 100644 --- a/pynfe/utils/webservices.py +++ b/pynfe/utils/webservices.py @@ -352,7 +352,7 @@ NFE = { 'STATUS': 'nfe.fazenda.mg.gov.br/nfe2/services/NFeStatusServico4', 'AUTORIZACAO': 'nfe.fazenda.mg.gov.br/nfe2/services/NFeAutorizacao4', 'RECIBO': 'nfe.fazenda.mg.gov.br/nfe2/services/NFeRetAutorizacao4', - 'CHAVE': 'nfe.fazenda.mg.gov.br/nfe2/services/NFeConsulta4', + 'CHAVE': 'nfe.fazenda.mg.gov.br/nfe2/services/NFeConsultaProtocolo4', 'INUTILIZACAO': 'nfe.fazenda.mg.gov.br/nfe2/services/NFeInutilizacao4', 'EVENTOS': 'nfe.fazenda.mg.gov.br/nfe2/services/NFeRecepcaoEvento4', 'CADASTRO': 'nfe.fazenda.mg.gov.br/nfe2/services/cadconsultacadastro2', @@ -389,7 +389,7 @@ NFE = { 'CHAVE': 'sefazrs.rs.gov.br/ws/NfeConsulta/NfeConsulta4.asmx', 'INUTILIZACAO': 'sefazrs.rs.gov.br/ws/nfeinutilizacao/nfeinutilizacao4.asmx', 'EVENTOS': 'sefazrs.rs.gov.br/ws/recepcaoevento/recepcaoevento4.asmx', - 'CADASTRO': 'cad.sefazrs.rs.gov.br/ws/cadconsultacadastro/cadconsultacadastro2.asmx', + 'CADASTRO': 'https://cad.sefazrs.rs.gov.br/ws/cadconsultacadastro/cadconsultacadastro4.asmx', 'DOWNLOAD': 'sefazrs.rs.gov.br/ws/nfeDownloadNF/nfeDownloadNF.asmx', 'DESTINADAS': 'sefazrs.rs.gov.br/ws/nfeConsultaDest/nfeConsultaDest.asmx', 'HTTPS': 'https://nfe.',