Browse Source

Merge remote-tracking branch 'upstream/master'

pull/59/head
mandala21 7 years ago
parent
commit
87ad5f5f77
  1. 5
      pynfe/processamento/comunicacao.py
  2. 8
      pynfe/processamento/serializacao.py
  3. 87
      pynfe/utils/webservices.py

5
pynfe/processamento/comunicacao.py

@ -17,7 +17,6 @@ from pynfe.utils.flags import (
from pynfe.utils.webservices import NFE, NFCE, NFSE
from pynfe.entidades.certificado import CertificadoA1
from .assinatura import AssinaturaA1
from pynfe.utils.descompactar import DescompactaGzip
class Comunicacao(object):
@ -291,7 +290,7 @@ class ComunicacaoSefaz(Comunicacao):
'uf': uf,
'ano': ano,
'cnpj': cnpj,
'modelo': '55',
'modelo': '55' if modelo == 'nfe' else '65', # 55=NF-e; 65=NFC-e;
'serie': serie.zfill(3),
'num_ini': str(numero_inicial).zfill(9),
'num_fin': str(numero_final).zfill(9),
@ -357,7 +356,7 @@ class ComunicacaoSefaz(Comunicacao):
raise Exception('Modelo não encontrado! Defina modelo="nfe" ou "nfce"')
# Estados que utilizam outros ambientes
else:
lista_svrs = ['AC', 'RJ', 'RN', 'PB', 'SC', 'SE', 'PI']
lista_svrs = ['AC', 'RJ', 'RN', 'PB', 'SC', 'SE', 'PI', 'DF', 'ES']
lista_svan = ['MA','PA']
if self.uf.upper() in lista_svrs:
if self._ambiente == 1:

8
pynfe/processamento/serializacao.py

@ -305,9 +305,9 @@ class SerializacaoXML(Serializacao):
etree.SubElement(icms_item, 'modBCST').text = str(produto_servico.icms_st_modalidade_determinacao_bc)
etree.SubElement(icms_item, 'pMVAST').text = str(produto_servico.icms_st_percentual_adicional) # Percentual da margem de valor Adicionado do ICMS ST
etree.SubElement(icms_item, 'pRedBCST').text = str(produto_servico.icms_st_percentual_reducao_bc) # APercentual da Redução de BC do ICMS ST
etree.SubElement(icms_item, 'vBCST ').text = str(produto_servico.icms_st_valor_base_calculo)
etree.SubElement(icms_item, 'pICMSST ').text = str(produto_servico.icms_st_aliquota)
etree.SubElement(icms_item, 'vICMSST ').text = str(produto_servico.icms_st_valor)
etree.SubElement(icms_item, 'vBCST').text = str(produto_servico.icms_st_valor_base_calculo)
etree.SubElement(icms_item, 'pICMSST').text = str(produto_servico.icms_st_aliquota)
etree.SubElement(icms_item, 'vICMSST').text = str(produto_servico.icms_st_valor)
# 20=Com redução de base de cálculo
elif produto_servico.icms_modalidade == '20':
etree.SubElement(icms_item, 'pRedBC').text = '{:.2f}'.format(produto_servico.icms_percentual_reducao_bc or 0) # Percentual da Redução de BC
@ -728,7 +728,7 @@ class SerializacaoQrcode(object):
# url_chave - Texto com a URL de consulta por chave de acesso a ser impressa no DANFE NFC-e.
# Informar a URL da “Consulta por chave de acesso da NFC-e”.
# A mesma URL que deve estar informada no DANFE NFC-e para consulta por chave de acesso
lista_uf_padrao = ['PR', 'CE', 'RS', 'RJ', 'RO']
lista_uf_padrao = ['PR', 'CE', 'RS', 'RJ', 'RO', 'DF']
if uf.upper() in lista_uf_padrao:
qrcode = NFCE[uf.upper()]['QR'] + url
url_chave = NFCE[uf.upper()]['URL']

87
pynfe/utils/webservices.py

@ -26,12 +26,12 @@ NFCE = {
'AM': {
# csc_homologacao = '0123456789'
# token_homologacao = '000001'
'STATUS': 'nfce.sefaz.am.gov.br/nfce-services-nac/services/NfeStatusServico2',
'AUTORIZACAO': 'nfce.sefaz.am.gov.br/nfce-services-nac/services/NfeAutorizacao',
'RECIBO': 'nfce.sefaz.am.gov.br/nfce-services-nac/services/NfeRetAutorizacao',
'CHAVE': 'nfce.sefaz.am.gov.br/nfce-services-nac/services/NfeConsulta2',
'INUTILIZACAO': 'nfce.sefaz.am.gov.br/nfce-services-nac/services/NfeInutilizacao2',
'EVENTOS': 'nfce.sefaz.am.gov.br/nfce-services-nac/services/RecepcaoEvento',
'STATUS': 'nfe.sefaz.am.gov.br/services2/services/NfeStatusServico4',
'AUTORIZACAO': 'nfe.sefaz.am.gov.br/services2/services/NfeAutorizacao4',
'RECIBO': 'nfe.sefaz.am.gov.br/services2/services/NfeRetAutorizacao4',
'CHAVE': 'nfe.sefaz.am.gov.br/services2/services/NfeConsulta4',
'INUTILIZACAO': 'nfe.sefaz.am.gov.br/services2/services/NfeInutilizacao4',
'EVENTOS': 'nfe.sefaz.am.gov.br/services2/services/RecepcaoEvento4',
'QR': 'sefaz.am.gov.br/nfceweb/consultarNFCe.jsp?',
'URL': 'sefaz.am.gov.br/nfceweb/formConsulta.do',
'HTTPS': 'http://sistemas.',
@ -107,7 +107,7 @@ NFCE = {
'QR': 'http://nfce.set.rn.gov.br/consultarNFCe.aspx?',
'HTTPS': '',
'HOMOLOGACAO': ''
},
'PB': {
'STATUS': '',
@ -127,7 +127,7 @@ NFCE = {
'EVENTOS': '',
'QR': 'sefaz.pe.gov.br/nfce/consulta?',
'HTTPS': 'http://nfce.',
'HOMOLOGACAO': 'http://nfce.',
'HOMOLOGACAO': 'http://nfcehomolog.',
'URL': 'sefaz.pe.gov.br/nfce/consulta'
},
'AL': {
@ -155,7 +155,7 @@ NFCE = {
'HTTPS': 'http://nfe.',
'HOMOLOGACAO': 'http://hnfe.',
'URL': 'http://hinternet.sefaz.ba.gov.br/nfce/consulta'
},
},
'MG': {
'STATUS': '',
'AUTORIZACAO': '',
@ -172,7 +172,10 @@ NFCE = {
'CHAVE': '',
'INUTILIZACAO': '',
'EVENTOS': '',
'QR': ''
'QR': 'sefaz.es.gov.br/ConsultaNFCe/qrcode.aspx? ',
'HTTPS': 'http://nfe.',
'HOMOLOGACAO': 'http://homologacao.',
'URL': 'www.sefaz.es.gov.br/nfce/consulta'
},
'RJ': {
'STATUS': '',
@ -181,16 +184,16 @@ NFCE = {
'CHAVE': '',
'INUTILIZACAO': '',
'EVENTOS': '',
'QR': 'http://www4.fazenda.rj.gov.br/consultaNFCe/QRCode?',
'QR': 'http://www4.fazenda.rj.gov.br/consultaNFCe/QRCode?',
'URL': 'www.nfce.fazenda.rj.gov.br/consulta'
},
# Os Web Services de homologação da NFC-e 4.00 são:
# https://homologacao.nfce.fazenda.sp.gov.br/ws/NFeAutorizacao4.asmx
# https://homologacao.nfce.fazenda.sp.gov.br/ws/NFeStatusServico4.asmx
# https://homologacao.nfce.fazenda.sp.gov.br/ws/NFeConsultaProtocolo4.asmx
# https://homologacao.nfce.fazenda.sp.gov.br/ws/NFeRetAutorizacao4.asmx
# https://homologacao.nfce.fazenda.sp.gov.br/ws/NFeRecepcaoEvento4.asmx
# https://homologacao.nfce.fazenda.sp.gov.br/ws/NFeInutilizacao4.asmx
# Os Web Services de homologação da NFC-e 4.00 são:
# https://homologacao.nfce.fazenda.sp.gov.br/ws/NFeAutorizacao4.asmx
# https://homologacao.nfce.fazenda.sp.gov.br/ws/NFeStatusServico4.asmx
# https://homologacao.nfce.fazenda.sp.gov.br/ws/NFeConsultaProtocolo4.asmx
# https://homologacao.nfce.fazenda.sp.gov.br/ws/NFeRetAutorizacao4.asmx
# https://homologacao.nfce.fazenda.sp.gov.br/ws/NFeRecepcaoEvento4.asmx
# https://homologacao.nfce.fazenda.sp.gov.br/ws/NFeInutilizacao4.asmx
'SP': {
'STATUS': 'nfce.fazenda.sp.gov.br/ws/NFeStatusServico4.asmx',
'AUTORIZACAO': 'nfce.fazenda.sp.gov.br/ws/NFeAutorizacao4.asmx',
@ -263,6 +266,10 @@ NFCE = {
'HTTPS': 'http://nfe.',
'HOMOLOGACAO': 'http://homolog.'
},
'DF': {
'QR': 'http://www.fazenda.df.gov.br/nfce/qrcode?',
'URL': 'www.fazenda.df.gov.br/nfce/consulta'
},
# RO, AC, RR, PA, AP, TO, MA, PI, RN, PB, AL, SE, BA, ES, RJ, GO, DF
'SVRS': {
'STATUS': 'svrs.rs.gov.br/ws/NfeStatusServico/NfeStatusServico4.asmx',
@ -289,12 +296,12 @@ NFE = {
'HOMOLOGACAO': 'https://hom'
},
'AM': {
'STATUS': 'nfe.sefaz.am.gov.br/services2/services/NfeStatusServico2',
'AUTORIZACAO': 'nfe.sefaz.am.gov.br/services2/services/NfeAutorizacao',
'RECIBO': 'nfe.sefaz.am.gov.br/services2/services/NfeRetAutorizacao',
'CHAVE': 'nfe.sefaz.am.gov.br/services2/services/NfeConsulta2',
'INUTILIZACAO': 'nfe.sefaz.am.gov.br/services2/services/NfeInutilizacao2',
'EVENTOS': 'nfe.sefaz.am.gov.br/services2/services/RecepcaoEvento',
'STATUS': 'nfe.sefaz.am.gov.br/services2/services/NfeStatusServico4',
'AUTORIZACAO': 'nfe.sefaz.am.gov.br/services2/services/NfeAutorizacao4',
'RECIBO': 'nfe.sefaz.am.gov.br/services2/services/NfeRetAutorizacao4',
'CHAVE': 'nfe.sefaz.am.gov.br/services2/services/NfeConsulta4',
'INUTILIZACAO': 'nfe.sefaz.am.gov.br/services2/services/NfeInutilizacao4',
'EVENTOS': 'nfe.sefaz.am.gov.br/services2/services/RecepcaoEvento4',
'CADASTRO': 'nfe.sefaz.am.gov.br/services2/services/cadconsultacadastro2',
'HTTPS': 'https://',
'HOMOLOGACAO': 'https://hom'
@ -309,7 +316,7 @@ NFE = {
'CHAVE': 'sefaz.ce.gov.br/nfe4/services/NFeConsultaProtocolo4?WSDL',
'INUTILIZACAO': 'sefaz.ce.gov.br/nfe4/services/NFeInutilizacao4?WSDL',
'EVENTOS': 'sefaz.ce.gov.br/nfe4/services/NFeRecepcaoEvento4?WSDL',
'CADASTRO': 'sefaz.ce.gov.br/nfe2/services/CadConsultaCadastro2?wsdl',
'CADASTRO': 'nfe.sefaz.ce.gov.br/nfe4/services/CadConsultaCadastro4?wsdl',
'DOWNLOAD': 'sefaz.ce.gov.br/nfe2/services/NfeDownloadNF?wsdl',
'HTTPS': 'https://nfe.',
'HOMOLOGACAO': 'https://nfeh.'
@ -335,23 +342,23 @@ NFE = {
'CADASTRO': 'nfe.sefaz.ba.gov.br/webservices/CadConsultaCadastro4/CadConsultaCadastro4.asmx',
'HTTPS': 'https://',
'HOMOLOGACAO': 'https://h'
},
},
'MG': {
'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',
'INUTILIZACAO': 'nfe.fazenda.mg.gov.br/nfe2/services/NFeInutilizacao4',
'EVENTOS': 'nfe.fazenda.mg.gov.br/nfe2/services/RecepcaoEvento',
'EVENTOS': 'nfe.fazenda.mg.gov.br/nfe2/services/NFeRecepcaoEvento4',
'CADASTRO': 'nfe.fazenda.mg.gov.br/nfe2/services/cadconsultacadastro2',
'HTTPS': 'https://',
'HOMOLOGACAO': 'https://h'
},
'SP': {
'STATUS': 'nfe.fazenda.sp.gov.br/ws/NFeStatusServico4.asmx',
'STATUS': 'nfe.fazenda.sp.gov.br/ws/nfestatusservico4.asmx',
'AUTORIZACAO': 'nfe.fazenda.sp.gov.br/ws/nfeautorizacao4.asmx',
'RECIBO': 'nfe.fazenda.sp.gov.br/ws/nferetautorizacao4.asmx',
'CHAVE': 'nfe.fazenda.sp.gov.br/ws/nfeconsulta4.asmx',
'CHAVE': 'nfe.fazenda.sp.gov.br/ws/nfeconsultaprotocolo4.asmx',
'INUTILIZACAO': 'nfe.fazenda.sp.gov.br/ws/nfeinutilizacao4.asmx',
'EVENTOS': 'nfe.fazenda.sp.gov.br/ws/nferecepcaoevento4.asmx',
'CADASTRO': 'nfe.fazenda.sp.gov.br/ws/cadconsultacadastro4.asmx',
@ -377,7 +384,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': 'https://cad.sefazrs.rs.gov.br/ws/cadconsultacadastro/cadconsultacadastro2.asmx',
'CADASTRO': 'cad.sefazrs.rs.gov.br/ws/cadconsultacadastro/cadconsultacadastro2.asmx',
'DOWNLOAD': 'sefazrs.rs.gov.br/ws/nfeDownloadNF/nfeDownloadNF.asmx',
'DESTINADAS': 'sefazrs.rs.gov.br/ws/nfeConsultaDest/nfeConsultaDest.asmx',
'HTTPS': 'https://nfe.',
@ -390,18 +397,18 @@ NFE = {
'CHAVE': 'nfe.ms.gov.br/ws/NFeConsultaProtocolo4',
'INUTILIZACAO': 'nfe.ms.gov.br/ws/NFeInutilizacao4',
'EVENTOS': 'nfe.ms.gov.br/ws/NFeRecepcaoEvento4',
'CADASTRO': 'nfe.fazenda.ms.gov.br/producao/services2/CadConsultaCadastro2',
'CADASTRO': 'nfe.sefaz.ms.gov.br/ws/CadConsultaCadastro4',
'HTTPS': 'https://',
'HOMOLOGACAO': 'https://homologacao.'
},
'MT': {
'STATUS': 'sefaz.mt.gov.br/nfews/v2/services/NfeStatusServico2?wsdl',
'AUTORIZACAO': 'sefaz.mt.gov.br/nfews/v2/services/NfeAutorizacao?wsdl',
'RECIBO': 'sefaz.mt.gov.br/nfews/v2/services/NfeRetAutorizacao?wsdl',
'CHAVE': 'sefaz.mt.gov.br/nfews/v2/services/NfeConsulta2?wsdl',
'INUTILIZACAO': 'sefaz.mt.gov.br/nfews/v2/services/NfeInutilizacao2?wsdl',
'EVENTOS': 'sefaz.mt.gov.br/nfews/v2/services/RecepcaoEvento?wsdl',
'CADASTRO': 'sefaz.mt.gov.br/nfews/v2/services/CadConsultaCadastro2?wsdl',
'STATUS': 'nfe.sefaz.mt.gov.br/nfews/v2/services/NfeStatusServico4?wsdl',
'AUTORIZACAO': 'nfe.sefaz.mt.gov.br/nfews/v2/services/NfeAutorizacao4?wsdl',
'RECIBO': 'nfe.sefaz.mt.gov.br/nfews/v2/services/NfeRetAutorizacao4?wsdl',
'CHAVE': 'nfe.sefaz.mt.gov.br/nfews/v2/services/NfeConsulta4?wsdl',
'INUTILIZACAO': 'nfe.sefaz.mt.gov.br/nfews/v2/services/NfeInutilizacao4?wsdl',
'EVENTOS': 'nfe.sefaz.mt.gov.br/nfews/v2/services/RecepcaoEvento4?wsdl',
'CADASTRO': 'nfe.sefaz.mt.gov.br/nfews/v2/services/CadConsultaCadastro4?wsdl',
'HTTPS': 'https://nfe.',
'HOMOLOGACAO': 'https://homologacao.'
},
@ -461,7 +468,7 @@ NFE = {
# Nfs-e
NFSE = {
#
#
'BETHA': {
'AUTORIZACAO':'GerarNfse',
'CANCELAR':'CancelarNfse',
@ -485,4 +492,4 @@ NFSE = {
'HTTPS':'https://producao.ginfes.com.br/ServiceGinfesImpl?wsdl',
'HOMOLOGACAO':'https://homologacao.ginfes.com.br/ServiceGinfesImpl?wsdl'
}
}
}
Loading…
Cancel
Save