From 20de6b5c1c745f94d104b0487b26ec97d61d04a6 Mon Sep 17 00:00:00 2001 From: Luiz Felipe do Divino Date: Wed, 14 Mar 2018 10:19:07 -0300 Subject: [PATCH 01/34] =?UTF-8?q?[REF]=20Mudan=C3=A7as=20para=20o=20layout?= =?UTF-8?q?=204.00=20da=20NF-e?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pysped/nfe/leiaute/nfe_400.py | 45 +++++++++++++++++++++-------------- pysped/nfe/processador_nfe.py | 2 +- 2 files changed, 28 insertions(+), 19 deletions(-) diff --git a/pysped/nfe/leiaute/nfe_400.py b/pysped/nfe/leiaute/nfe_400.py index c4bbcf19..c6d61ecf 100644 --- a/pysped/nfe/leiaute/nfe_400.py +++ b/pysped/nfe/leiaute/nfe_400.py @@ -190,6 +190,7 @@ def __init__(self): self.vBCFCPSTRet = TagDecimal(nome='vBCFCPSTRet', codigo='', tamanho=[1, 13, 1], decimais=[0, 2, 2], raiz='') self.pFCPSTRet = TagDecimal(nome='pFCPSTRet' , codigo='', tamanho=[1, 3, 1], decimais=[0, 2, 4], raiz='') self.vFCPSTRet = TagDecimal(nome='vFCPSTRet' , codigo='', tamanho=[1, 13, 1], decimais=[0, 2, 2], raiz='') + self.orig = TagCaracter(nome='orig', codigo='', raiz='') # # Situação tributária do Simples Nacional @@ -226,8 +227,9 @@ def get_xml(self): xml += self.vICMS.xml #xml += self.vBCFCP.xml - xml += self.pFCP.xml - xml += self.vFCP.xml + if self.vFCP.valor: + xml += self.pFCP.xml + xml += self.vFCP.xml elif self.CST.valor == '10': if not self.partilha: @@ -277,9 +279,10 @@ def get_xml(self): xml += self.pICMS.xml xml += self.vICMS.xml - xml += self.vBCFCP.xml - xml += self.pFCP.xml - xml += self.vFCP.xml + if self.vFCP.valor: + xml += self.vBCFCP.xml + xml += self.pFCP.xml + xml += self.vFCP.xml xml += self.vICMSDeson.xml xml += self.motDesICMS.xml @@ -316,10 +319,10 @@ def get_xml(self): xml += self.pDif.xml xml += self.vICMSDif.xml xml += self.vICMS.xml - - xml += self.vBCFCP.xml - xml += self.pFCP.xml - xml += self.vFCP.xml + if self.vFCP.valor: + xml += self.vBCFCP.xml + xml += self.pFCP.xml + xml += self.vFCP.xml elif self.CST.valor == '60': if (self.vBCSTRet.valor or self.pST.valor or self.vICMSSTRet.valor): @@ -363,9 +366,10 @@ def get_xml(self): xml += self.pICMS.xml xml += self.vICMS.xml - xml += self.vBCFCP.xml - xml += self.pFCP.xml - xml += self.vFCP.xml + if self.vFCP.valor: + xml += self.vBCFCP.xml + xml += self.pFCP.xml + xml += self.vFCP.xml xml += self.modBCST.xml @@ -850,7 +854,7 @@ def __init__(self): self.tpIntegra = TagCaracter(nome='tpIntegra', codigo='', tamanho=[ 1, 1], raiz='//detPag/card') self.CNPJ = TagCaracter(nome='CNPJ' , codigo='XA05', tamanho=[14, 14], raiz='//detPag/card', obrigatorio=False) self.tBand = TagCaracter(nome='tBand', codigo='YA01', tamanho=[ 2, 2], raiz='//detPag/card', obrigatorio=False) - self.cAut = TagCaracter(nome='cAut' , codigo='YA01', tamanho=[20, 20], raiz='//detPag/card', obrigatorio=False) + self.cAut = TagCaracter(nome='cAut' , codigo='YA07', tamanho=[20, 20], raiz='//detPag/card', obrigatorio=False) def get_xml(self): if not (self.tpIntegra.valor or self.CNPJ.valor or self.tBand.valor or self.cAut.valor): @@ -1028,6 +1032,9 @@ def __init__(self): self.vFCPST = TagDecimal(nome='vFCPST', codigo='', tamanho=[1, 13, 1], decimais=[0, 2, 2], raiz='//NFe/infNFe/total/ICMSTot', obrigatorio=True) self.vFCPSTRet = TagDecimal(nome='vFCPSTRet', codigo='', tamanho=[1, 13, 1], decimais=[0, 2, 2], raiz='//NFe/infNFe/total/ICMSTot', obrigatorio=True) self.vIPIDevol = TagDecimal(nome='vIPIDevol', codigo='', tamanho=[1, 13, 1], decimais=[0, 2, 2], raiz='//NFe/infNFe/total/ICMSTot', obrigatorio=True) + self.vICMSUFDest = TagDecimal(nome='vICMSUFDest', codigo='', tamanho=[1, 13, 1], decimais=[0, 2, 2], raiz='//NFe/infNFe/total/ICMSTot', obrigatorio=True) + self.vFCPUFDest = TagDecimal(nome='vFCPUFDest', codigo='', tamanho=[1, 13, 1], decimais=[0, 2, 2], raiz='//NFe/infNFe/total/ICMSTot', obrigatorio=True) + self.vICMSUFRemet = TagDecimal(nome='vICMSUFRemet', codigo='', tamanho=[1, 13, 1], decimais=[0, 2, 2], raiz='//NFe/infNFe/total/ICMSTot', obrigatorio=True) def get_xml(self): xml = XMLNFe.get_xml(self) @@ -1035,14 +1042,17 @@ def get_xml(self): xml += self.vBC.xml xml += self.vICMS.xml xml += self.vICMSDeson.xml - xml += self.vFCPUFDest.xml - xml += self.vICMSUFDest.xml - xml += self.vICMSUFRemet.xml xml += self.vFCP.xml xml += self.vBCST.xml xml += self.vST.xml xml += self.vFCPST.xml xml += self.vFCPSTRet.xml + if self.vICMSUFDest.valor: + xml += self.vICMSUFDest.xml + if self.vICMSUFRemet.valor: + xml += self.vICMSUFRemet.xml + if self.vFCPUFDest.valor: + xml += self.vFCPUFDest.xml xml += self.vProd.xml xml += self.vFrete.xml xml += self.vSeg.xml @@ -1297,8 +1307,7 @@ def get_xml(self): if self.ide.mod.valor == '55': xml += self.cobr.xml - for p in self.pag: - xml += p.xml + xml += self.pag.xml xml += self.infAdic.xml xml += self.exporta.xml diff --git a/pysped/nfe/processador_nfe.py b/pysped/nfe/processador_nfe.py index becacd0c..dd0f84d1 100644 --- a/pysped/nfe/processador_nfe.py +++ b/pysped/nfe/processador_nfe.py @@ -200,7 +200,7 @@ class ProcessadorNFe(object): def __init__(self): self.ambiente = 2 self.estado = 'SP' - self.versao = '3.10' + self.versao = '4.00' self.modelo = '55' self.certificado = Certificado() self.caminho = '' From 4e96dcba5479baafb19658a891f4e94e912b7584 Mon Sep 17 00:00:00 2001 From: Luiz Felipe do Divino Date: Tue, 20 Mar 2018 09:45:09 -0300 Subject: [PATCH 02/34] =?UTF-8?q?[FIX]=20Emiss=C3=A3o=20em=20contingencia?= =?UTF-8?q?=20NF-e=204.00?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pysped/nfe/processador_nfe.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pysped/nfe/processador_nfe.py b/pysped/nfe/processador_nfe.py index dd0f84d1..beab54c5 100644 --- a/pysped/nfe/processador_nfe.py +++ b/pysped/nfe/processador_nfe.py @@ -301,7 +301,7 @@ def _conectar_servico(self, servico, envio, resposta, ambiente=None, somente_amb ws_a_usar = webservices.SVAN elif self.contingencia_SCAN or self.contingencia: - ws_a_usar = webservices.ESTADO_WS_CONTINGENCIA + ws_a_usar = webservices.ESTADO_WS_CONTINGENCIA[self.estado] else: # From 39747f9d8b142877a86ed6d29b8dd186b950d4c6 Mon Sep 17 00:00:00 2001 From: Luis Felipe Mileo Date: Fri, 6 Apr 2018 16:47:20 -0300 Subject: [PATCH 03/34] =?UTF-8?q?[FIX]=20For=C3=A7a=20o=20uso=20do=20proto?= =?UTF-8?q?colo=20TLS=201.2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pysped/nfe/processador_nfe.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pysped/nfe/processador_nfe.py b/pysped/nfe/processador_nfe.py index beab54c5..98d23d5a 100644 --- a/pysped/nfe/processador_nfe.py +++ b/pysped/nfe/processador_nfe.py @@ -193,7 +193,7 @@ def connect(self): if sys.version_info >= (2,7,13): self.sock = ssl.wrap_socket(sock, self.key_file, self.cert_file, ssl_version=ssl.PROTOCOL_TLS, do_handshake_on_connect=False) else: - self.sock = ssl.wrap_socket(sock, self.key_file, self.cert_file, ssl_version=ssl.PROTOCOL_SSLv23, do_handshake_on_connect=False) + self.sock = ssl.wrap_socket(sock, self.key_file, self.cert_file, ssl_version=ssl.PROTOCOL_TLSv1_2, do_handshake_on_connect=False) class ProcessadorNFe(object): From 174776c4711955b4e9d4fa8cc21bdf244552eaad Mon Sep 17 00:00:00 2001 From: Luis Felipe Mileo Date: Fri, 6 Apr 2018 16:49:43 -0300 Subject: [PATCH 04/34] =?UTF-8?q?[FIX]=20Corrige=20URL=20servi=C3=A7os=20C?= =?UTF-8?q?ear=C3=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pysped/nfe/webservices_4.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pysped/nfe/webservices_4.py b/pysped/nfe/webservices_4.py index 6939ba46..c344ca9a 100644 --- a/pysped/nfe/webservices_4.py +++ b/pysped/nfe/webservices_4.py @@ -275,8 +275,8 @@ WS_NFE_INUTILIZACAO : 'nfe4/services/NFeInutilizacao4', WS_NFE_CONSULTA : 'nfe4/services/NFeConsultaProtocolo4', WS_NFE_SITUACAO : 'nfe4/services/NFeStatusServico4', - WS_NFE_CONSULTA_CADASTRO: 'nfe2/services/CadConsultaCadastro2', - WS_NFE_RECEPCAO_EVENTO : 'nfe2/services/RecepcaoEvento', + WS_NFE_CONSULTA_CADASTRO: 'nfe2/services/CadConsultaCadastro4', + WS_NFE_RECEPCAO_EVENTO : 'nfe4/services/NFeRecepcaoEvento4', WS_NFE_AUTORIZACAO : 'nfe4/services/NFeAutorizacao4', WS_NFE_CONSULTA_AUTORIZACAO : 'nfe4/services/NFeRetAutorizacao4', }, @@ -285,8 +285,8 @@ WS_NFE_INUTILIZACAO : 'nfe4/services/NFeInutilizacao4', WS_NFE_CONSULTA : 'nfe4/services/NFeConsultaProtocolo4', WS_NFE_SITUACAO : 'nfe4/services/NFeStatusServico4', - WS_NFE_CONSULTA_CADASTRO: 'nfe2/services/CadConsultaCadastro2', - WS_NFE_RECEPCAO_EVENTO : 'nfe2/services/RecepcaoEvento', + WS_NFE_CONSULTA_CADASTRO: 'nfe2/services/CadConsultaCadastro4', + WS_NFE_RECEPCAO_EVENTO : 'nfe4/services/NFeRecepcaoEvento4', WS_NFE_AUTORIZACAO : 'nfe4/services/NFeAutorizacao4', WS_NFE_CONSULTA_AUTORIZACAO : 'nfe4/services/NFeRetAutorizacao4', } From af8c13dd84a561c95916b38de4a98053d8a11aef Mon Sep 17 00:00:00 2001 From: Luis Felipe Mileo Date: Fri, 6 Apr 2018 16:44:40 -0300 Subject: [PATCH 05/34] =?UTF-8?q?[FIX]=20Nome=20dos=20servi=C3=A7os=20nf-e?= =?UTF-8?q?=204.0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pysped/nfe/webservices_4.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pysped/nfe/webservices_4.py b/pysped/nfe/webservices_4.py index c344ca9a..8697056e 100644 --- a/pysped/nfe/webservices_4.py +++ b/pysped/nfe/webservices_4.py @@ -60,11 +60,11 @@ METODO_WS = { WS_NFE_INUTILIZACAO: { 'webservice': 'NFeInutilizacao4', - 'metodo' : 'nfeInutilizacaoNF2', + 'metodo' : 'nfeInutilizacaoNF', }, WS_NFE_CONSULTA: { 'webservice': 'NFeConsultaProtocolo4', - 'metodo' : 'nfeConsultaNF2', + 'metodo' : 'nfeConsultaNF', }, WS_NFE_SITUACAO: { 'webservice': 'NFeStatusServico4', @@ -72,7 +72,7 @@ }, WS_NFE_CONSULTA_CADASTRO: { 'webservice': 'CadConsultaCadastro4', - 'metodo' : 'consultaCadastro2', + 'metodo' : 'consultaCadastro', }, WS_NFE_RECEPCAO_EVENTO: { 'webservice': 'NFeRecepcaoEvento4', @@ -80,11 +80,11 @@ }, WS_NFE_AUTORIZACAO: { 'webservice': 'NFeAutorizacao4', - 'metodo' : 'NfeAutorizacao', + 'metodo' : 'nfeAutorizacaoLote', }, WS_NFE_CONSULTA_AUTORIZACAO: { 'webservice': 'NFeRetAutorizacao4', - 'metodo' : 'NfeRetAutorizacao', + 'metodo' : 'nfeRetAutorizacaoLote', }, #WS_NFE_DOWNLOAD: { #'webservice': 'NfeDownloadNF', From c5fb603a5689e1e16799abce50a704856c8fe35f Mon Sep 17 00:00:00 2001 From: Luis Felipe Mileo Date: Fri, 6 Apr 2018 16:45:20 -0300 Subject: [PATCH 06/34] =?UTF-8?q?[REF]=20Altera=C3=A7=C3=A3o=20para=20supo?= =?UTF-8?q?rtar=20webservice=20do=20Cear=C3=A1=20com=20m=C3=A9todos=20fora?= =?UTF-8?q?=20do=20padr=C3=A3o?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pysped/nfe/processador_nfe.py | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/pysped/nfe/processador_nfe.py b/pysped/nfe/processador_nfe.py index 98d23d5a..d390d77e 100644 --- a/pysped/nfe/processador_nfe.py +++ b/pysped/nfe/processador_nfe.py @@ -349,11 +349,14 @@ def _conectar_servico(self, servico, envio, resposta, ambiente=None, somente_amb # if self.estado == 'CE' or servico == WS_DFE_DISTRIBUICAO: self._soap_envio.soap_action_webservice_e_metodo = True - - if servico == WS_NFE_AUTORIZACAO: - self._soap_envio.metodo = 'nfeAutorizacaoLote' - elif servico == WS_NFE_CONSULTA_AUTORIZACAO: - self._soap_envio.metodo = 'nfeRetAutorizacaoLote' + if self.versao == '3.10': + if servico == WS_NFE_AUTORIZACAO: + self._soap_envio.metodo = 'nfeAutorizacaoLote' + if servico == WS_NFE_CONSULTA_AUTORIZACAO: + self._soap_envio.metodo = 'nfeRetAutorizacaoLote' + if self.versao == '4.00': + if servico == WS_NFE_RECEPCAO_EVENTO: + self._soap_envio.metodo = 'nfeRecepcaoEventoNF' self._soap_retorno.webservice = self._soap_envio.webservice self._soap_retorno.metodo = self._soap_envio.metodo From b456016b5add1345150df5f2905233c3364f9559 Mon Sep 17 00:00:00 2001 From: Magno Date: Wed, 6 Jun 2018 13:28:17 -0300 Subject: [PATCH 07/34] =?UTF-8?q?[FIX]=20TAGs=20referentes=20a=20Informa?= =?UTF-8?q?=C3=A7=C3=B5es=20de=20Pagamento.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pysped/nfe/leiaute/nfe_400.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/pysped/nfe/leiaute/nfe_400.py b/pysped/nfe/leiaute/nfe_400.py index c6d61ecf..dd0f0f98 100644 --- a/pysped/nfe/leiaute/nfe_400.py +++ b/pysped/nfe/leiaute/nfe_400.py @@ -934,7 +934,7 @@ class Pag(XMLNFe): def __init__(self): super(Pag, self).__init__() self.detPag = [] - self.vTroco = TagDecimal(nome='vTroco' , codigo='', tamanho=[1, 13, 1], decimais=[0, 2, 2], raiz='//pag') + self.vTroco = TagDecimal(nome='vTroco' , codigo='YA09', tamanho=[1, 13, 1], decimais=[0, 2, 2], raiz='//pag') def get_xml(self): # @@ -946,7 +946,8 @@ def get_xml(self): for d in self.detPag: xml += d.xml - xml += self.vTroco.xml + if self.vTroco.valor: + xml += self.vTroco.xml xml += '' return xml @@ -1348,7 +1349,7 @@ def set_xml(self, arquivo): self.transp.xml = arquivo self.cobr.xml = arquivo - self.pag = self.le_grupo('//NFe/infNFe/pag', Pag) + self.pag.xml = arquivo self.infAdic.xml = arquivo self.exporta.xml = arquivo From 324ccab22717d86fb00c36bd731e21e303c12d05 Mon Sep 17 00:00:00 2001 From: Magno Date: Wed, 18 Jul 2018 15:12:36 -0300 Subject: [PATCH 08/34] =?UTF-8?q?=C3=89=20preciso=20for=C3=A7ar=20a=20incl?= =?UTF-8?q?us=C3=A3o=20do=20campo=20vDesc=20j=C3=A1=20que=20quando=20preen?= =?UTF-8?q?chido=20algum=20campo=20dentro=20da=20TAG=20=20todos=20os?= =?UTF-8?q?=20campos=20precisam=20ser=20informados.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit [Correção] Maneira correta de informar um campo mesmo com valor 0.00 . --- pysped/nfe/leiaute/nfe_110.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pysped/nfe/leiaute/nfe_110.py b/pysped/nfe/leiaute/nfe_110.py index fb238975..a4477bc4 100644 --- a/pysped/nfe/leiaute/nfe_110.py +++ b/pysped/nfe/leiaute/nfe_110.py @@ -2477,7 +2477,7 @@ def __init__(self): super(Fat, self).__init__() self.nFat = TagCaracter(nome='nFat', codigo='Y03', tamanho=[1, 60], raiz='//NFe/infNFe/cobr/fat', obrigatorio=False) self.vOrig = TagDecimal(nome='vOrig', codigo='Y04', tamanho=[1, 15, 1], decimais=[0, 2, 2], raiz='//NFe/infNFe/cobr/fat', obrigatorio=False) - self.vDesc = TagDecimal(nome='vDesc', codigo='Y05', tamanho=[1, 15, 1], decimais=[0, 2, 2], raiz='//NFe/infNFe/cobr/fat', obrigatorio=False) + self.vDesc = TagDecimal(nome='vDesc', codigo='Y05', tamanho=[1, 15, 1], decimais=[0, 2, 2], raiz='//NFe/infNFe/cobr/fat', obrigatorio=True) self.vLiq = TagDecimal(nome='vLiq' , codigo='Y06', tamanho=[1, 15, 1], decimais=[0, 2, 2], raiz='//NFe/infNFe/cobr/fat', obrigatorio=False) def get_xml(self): From dcd89050dabf1029f75c5b5dec9dc15d53489434 Mon Sep 17 00:00:00 2001 From: Luis Felipe Mileo Date: Mon, 23 Jul 2018 14:45:39 -0300 Subject: [PATCH 09/34] [FIX] Permite o envio do desconto com o valor zero Signed-off-by: Luis Felipe Mileo --- pysped/nfe/leiaute/schema/pl_009_v4/tiposBasico_v4.00.xsd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) mode change 100755 => 100644 pysped/nfe/leiaute/schema/pl_009_v4/tiposBasico_v4.00.xsd diff --git a/pysped/nfe/leiaute/schema/pl_009_v4/tiposBasico_v4.00.xsd b/pysped/nfe/leiaute/schema/pl_009_v4/tiposBasico_v4.00.xsd old mode 100755 new mode 100644 index 515ad91a..4d6a3e04 --- a/pysped/nfe/leiaute/schema/pl_009_v4/tiposBasico_v4.00.xsd +++ b/pysped/nfe/leiaute/schema/pl_009_v4/tiposBasico_v4.00.xsd @@ -303,7 +303,7 @@ - + From 9233892e453910ad624a958080f45c7d5e7d72ec Mon Sep 17 00:00:00 2001 From: Gabriel Cardoso de Faria Date: Wed, 15 Aug 2018 16:54:11 -0300 Subject: [PATCH 10/34] [FIX] Tamanho do campo nDI --- pysped/nfe/leiaute/nfe_400.py | 1 + 1 file changed, 1 insertion(+) diff --git a/pysped/nfe/leiaute/nfe_400.py b/pysped/nfe/leiaute/nfe_400.py index dd0f0f98..df994653 100644 --- a/pysped/nfe/leiaute/nfe_400.py +++ b/pysped/nfe/leiaute/nfe_400.py @@ -660,6 +660,7 @@ def __init__(self): class DI(nfe_310.DI): def __init__(self): super(DI, self).__init__() + self.nDI = TagCaracter(nome='nDI' , codigo='I19', tamanho=[1, 20], raiz='//DI') class Rastro(XMLNFe): From 318794097c1c4a38b8f9c24814e7e7a03fb23e4c Mon Sep 17 00:00:00 2001 From: renato Date: Fri, 9 Sep 2016 17:22:24 -0300 Subject: [PATCH 11/34] fix campo do ICMS --- pysped/nfe/leiaute/nfe_310.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pysped/nfe/leiaute/nfe_310.py b/pysped/nfe/leiaute/nfe_310.py index 7b94aa6f..524babc8 100644 --- a/pysped/nfe/leiaute/nfe_310.py +++ b/pysped/nfe/leiaute/nfe_310.py @@ -586,8 +586,8 @@ def get_xml(self): xml += self.vICMSST.xml else: xml += self.modBC.xml - xml += self.vBC.xml xml += self.pRedBC.xml + xml += self.vBC.xml xml += self.pICMS.xml xml += self.vICMS.xml xml += self.modBCST.xml @@ -646,8 +646,8 @@ def get_xml(self): elif self.CST.valor == '70': xml += self.modBC.xml - xml += self.vBC.xml xml += self.pRedBC.xml + xml += self.vBC.xml xml += self.pICMS.xml xml += self.vICMS.xml xml += self.modBCST.xml @@ -665,8 +665,8 @@ def get_xml(self): elif self.CST.valor == '90': xml += self.modBC.xml - xml += self.vBC.xml xml += self.pRedBC.xml + xml += self.vBC.xml xml += self.pICMS.xml xml += self.vICMS.xml xml += self.modBCST.xml @@ -729,8 +729,8 @@ def get_xml(self): elif self.CSOSN.valor == '900': xml += self.modBC.xml - xml += self.vBC.xml xml += self.pRedBC.xml + xml += self.vBC.xml xml += self.pICMS.xml xml += self.vICMS.xml xml += self.modBCST.xml From 823f5c965f02d0444a2e8d222796268e878b50db Mon Sep 17 00:00:00 2001 From: Renato Lima Date: Thu, 14 Jun 2018 12:36:59 -0300 Subject: [PATCH 12/34] [FIX] corrigida algumas tags da NFe --- pysped/nfe/leiaute/nfe_400.py | 26 ++++++++++++++------------ 1 file changed, 14 insertions(+), 12 deletions(-) diff --git a/pysped/nfe/leiaute/nfe_400.py b/pysped/nfe/leiaute/nfe_400.py index df994653..b5e64f5a 100644 --- a/pysped/nfe/leiaute/nfe_400.py +++ b/pysped/nfe/leiaute/nfe_400.py @@ -249,9 +249,10 @@ def get_xml(self): xml += self.pICMSST.xml xml += self.vICMSST.xml - xml += self.vBCFCPST.xml - xml += self.pFCPST.xml - xml += self.vFCPST.xml + if self.vFCP.valor: + xml += self.vBCFCPST.xml + xml += self.pFCPST.xml + xml += self.vFCPST.xml else: xml += self.modBC.xml @@ -353,8 +354,9 @@ def get_xml(self): xml += self.vICMSST.xml xml += self.vBCFCPST.xml - xml += self.pFCPST.xml - xml += self.vFCPST.xml + if self.vFCP.valor: + xml += self.pFCPST.xml + xml += self.vFCPST.xml xml += self.vICMSDeson.xml xml += self.motDesICMS.xml @@ -1044,17 +1046,17 @@ def get_xml(self): xml += self.vBC.xml xml += self.vICMS.xml xml += self.vICMSDeson.xml + if self.vFCPUFDest.valor: + xml += self.vFCPUFDest.xml + if self.vICMSUFDest.valor: + xml += self.vICMSUFDest.xml + if self.vICMSUFRemet.valor: + xml += self.vICMSUFRemet.xml xml += self.vFCP.xml xml += self.vBCST.xml xml += self.vST.xml xml += self.vFCPST.xml xml += self.vFCPSTRet.xml - if self.vICMSUFDest.valor: - xml += self.vICMSUFDest.xml - if self.vICMSUFRemet.valor: - xml += self.vICMSUFRemet.xml - if self.vFCPUFDest.valor: - xml += self.vFCPUFDest.xml xml += self.vProd.xml xml += self.vFrete.xml xml += self.vSeg.xml @@ -1076,9 +1078,9 @@ def set_xml(self, arquivo): self.vICMS.xml = arquivo self.vICMSDeson.xml = arquivo self.vFCPUFDest.xml = arquivo + self.vFCP.xml = arquivo self.vICMSUFDest.xml = arquivo self.vICMSUFRemet.xml = arquivo - self.vFCP.xml = arquivo self.vBCST.xml = arquivo self.vST.xml = arquivo self.vFCPST.xml = arquivo From 7165fe9f98477e23c9260b04c73ac492a43a7a39 Mon Sep 17 00:00:00 2001 From: Renato Lima Date: Thu, 14 Jun 2018 12:39:10 -0300 Subject: [PATCH 13/34] [FIX] corrigido atributo na abertura do arquivo --- pysped/nfe/processador_nfe.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pysped/nfe/processador_nfe.py b/pysped/nfe/processador_nfe.py index d390d77e..fca555bb 100644 --- a/pysped/nfe/processador_nfe.py +++ b/pysped/nfe/processador_nfe.py @@ -497,7 +497,7 @@ def enviar_lote(self, numero_lote=None, lista_nfes=[]): arq.write(n.xml) arq.close - arq = open(self.caminho + str(envio.idLote.valor).strip().rjust(15, '0') + '-env-lot.xml', 'w') + arq = open(self.caminho + str(envio.idLote.valor).strip().rjust(15, '0') + '-env-lot.xml', 'w', encoding='utf-8') arq.write(envio.xml) arq.close() From f02003221bc9d5f7a9880dc68301c54dcc09dff1 Mon Sep 17 00:00:00 2001 From: Renato Lima Date: Thu, 14 Jun 2018 18:13:22 -0300 Subject: [PATCH 14/34] [FIX] tag ICMS 70 --- pysped/nfe/leiaute/nfe_400.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pysped/nfe/leiaute/nfe_400.py b/pysped/nfe/leiaute/nfe_400.py index b5e64f5a..e8a62f69 100644 --- a/pysped/nfe/leiaute/nfe_400.py +++ b/pysped/nfe/leiaute/nfe_400.py @@ -353,8 +353,8 @@ def get_xml(self): xml += self.pICMSST.xml xml += self.vICMSST.xml - xml += self.vBCFCPST.xml if self.vFCP.valor: + xml += self.vBCFCPST.xml xml += self.pFCPST.xml xml += self.vFCPST.xml From 85a6481872f09259bf2285b5a31b65f69d782dff Mon Sep 17 00:00:00 2001 From: Renato Lima Date: Fri, 15 Jun 2018 10:28:23 -0300 Subject: [PATCH 15/34] [FIX] ICMS cst 70 tag --- pysped/nfe/leiaute/nfe_400.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pysped/nfe/leiaute/nfe_400.py b/pysped/nfe/leiaute/nfe_400.py index e8a62f69..31b77b95 100644 --- a/pysped/nfe/leiaute/nfe_400.py +++ b/pysped/nfe/leiaute/nfe_400.py @@ -338,8 +338,8 @@ def get_xml(self): elif self.CST.valor == '70': xml += self.modBC.xml - xml += self.vBC.xml xml += self.pRedBC.xml + xml += self.vBC.xml xml += self.pICMS.xml xml += self.vICMS.xml xml += self.modBCST.xml @@ -363,8 +363,8 @@ def get_xml(self): elif self.CST.valor == '90': xml += self.modBC.xml - xml += self.vBC.xml xml += self.pRedBC.xml + xml += self.vBC.xml xml += self.pICMS.xml xml += self.vICMS.xml From 9c00276ffbc21fd15b70646f337d713dfc0457ba Mon Sep 17 00:00:00 2001 From: Renato Lima Date: Wed, 20 Jun 2018 23:59:42 -0300 Subject: [PATCH 16/34] update PySPED 1.2.0 --- setup.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup.py b/setup.py index 0e0a9e7c..e1085ad0 100644 --- a/setup.py +++ b/setup.py @@ -4,7 +4,7 @@ setup( name = "PySPED", - version = "1.1.0", + version = "1.2.0", author = "Aristides Caldeira", author_email = 'aristides.caldeira@tauga.com.br', test_suite='tests', From 86de837cf2deceb215fb9ae5392508558d2a9cd8 Mon Sep 17 00:00:00 2001 From: Renato Lima Date: Thu, 21 Jun 2018 13:02:21 -0300 Subject: [PATCH 17/34] [FIX] fix danfe with geraldo in python 2 --- pysped/nfe/danfe/__init__.py | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/pysped/nfe/danfe/__init__.py b/pysped/nfe/danfe/__init__.py index b75d8939..28bc62ea 100644 --- a/pysped/nfe/danfe/__init__.py +++ b/pysped/nfe/danfe/__init__.py @@ -39,7 +39,14 @@ # # -from pysped.nfe.danfe.danfe import DANFE -#from pysped.nfe.danfe.daede import DAEDE +import sys + + +if sys.version_info.major == 2: + from pysped.nfe.danfe.danfe_geraldo import DANFE +else: + from pysped.nfe.danfe.danfe import DANFE + +from pysped.nfe.danfe.daede import DAEDE from pysped.nfe.danfe.danfce import DANFCE from pysped.nfe.danfe.danfse import DANFSE From 41f32e772ae8a4c8cd0ef5139103f562ca7849d3 Mon Sep 17 00:00:00 2001 From: Renato Lima Date: Thu, 28 Jun 2018 12:23:55 -0300 Subject: [PATCH 18/34] =?UTF-8?q?[fix]=20gera=C3=A7=C3=A3o=20da=20chave=20?= =?UTF-8?q?de=20acesso=20para=20NFe=204.00?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pysped/nfe/leiaute/nfe_110.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pysped/nfe/leiaute/nfe_110.py b/pysped/nfe/leiaute/nfe_110.py index a4477bc4..89dd3e57 100644 --- a/pysped/nfe/leiaute/nfe_110.py +++ b/pysped/nfe/leiaute/nfe_110.py @@ -4007,7 +4007,7 @@ def _calcula_dv(self, valor): def gera_nova_chave(self): chave = str(self.infNFe.ide.cUF.valor).zfill(2) - if str(self.infNFe.versao.valor) == '3.10': + if str(self.infNFe.versao.valor) in ('3.10', '4.00'): chave += str(self.infNFe.ide.dhEmi.valor.strftime('%y%m')).zfill(4) else: From 43d5f4d0479e1d918cf9f748b352d96f888c8881 Mon Sep 17 00:00:00 2001 From: Magno Date: Wed, 18 Jul 2018 14:14:29 -0300 Subject: [PATCH 19/34] =?UTF-8?q?Inclu=C3=ADdo=20grupo=20de=20informa?= =?UTF-8?q?=C3=A7=C3=B5es=20da=20TAG=20=20para=20NFe=204.00,=20obriga?= =?UTF-8?q?torios=20a=20partir=20de=2001/09/2018.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pysped/nfe/leiaute/__init__.py | 1 + 1 file changed, 1 insertion(+) diff --git a/pysped/nfe/leiaute/__init__.py b/pysped/nfe/leiaute/__init__.py index 662a3ff4..37562621 100644 --- a/pysped/nfe/leiaute/__init__.py +++ b/pysped/nfe/leiaute/__init__.py @@ -363,6 +363,7 @@ from .nfe_400 import ProcRef as ProcRef_400 from .nfe_400 import AutXML as AutXML_400 from .nfe_400 import Rastro as Rastro_400 +from .nfe_400 import Fat as Fat_400 # # Envio de lote de NF-e From 294a9b0148b8698651fbd8b210c4544d797e9757 Mon Sep 17 00:00:00 2001 From: Magno Date: Wed, 18 Jul 2018 15:31:49 -0300 Subject: [PATCH 20/34] =?UTF-8?q?Inclu=C3=ADdo=20leiute=20pl=5F009v4b,=20o?= =?UTF-8?q?=20mais=20recente=20dispon=C3=ADvel.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pysped/nfe/leiaute/__init__.py | 2 +- .../schema/pl_009_v4b/consReciNFe_v4.00.xsd | 9 + .../schema/pl_009_v4b/consSitNFe_v4.00.xsd | 9 + .../schema/pl_009_v4b/consStatServ_v4.00.xsd | 9 + .../schema/pl_009_v4b/enviNFe_v4.00.xsd | 9 + .../schema/pl_009_v4b/inutNFe_v4.00.xsd | 9 + .../pl_009_v4b/leiauteConsSitNFe_v4.00.xsd | 502 ++ .../pl_009_v4b/leiauteConsStatServ_v4.00.xsd | 98 + .../pl_009_v4b/leiauteInutNFe_v4.00.xsd | 193 + .../schema/pl_009_v4b/leiauteNFe_v4.00.xsd | 6480 +++++++++++++++++ .../leiaute/schema/pl_009_v4b/nfe_v4.00.xsd | 9 + .../schema/pl_009_v4b/procInutNFe_v4.00.xsd | 9 + .../schema/pl_009_v4b/procNFe_v4.00.xsd | 9 + .../pl_009_v4b/retConsReciNFe_v4.00.xsd | 9 + .../schema/pl_009_v4b/retConsSitNFe_v4.00.xsd | 9 + .../pl_009_v4b/retConsStatServ_v4.00.xsd | 9 + .../schema/pl_009_v4b/retEnviNFe_v4.00.xsd | 9 + .../schema/pl_009_v4b/retInutNFe_v4.00.xsd | 9 + .../schema/pl_009_v4b/tiposBasico_v4.00.xsd | 589 ++ .../pl_009_v4b/xmldsig-core-schema_v1.01.xsd | 98 + 20 files changed, 8078 insertions(+), 1 deletion(-) create mode 100644 pysped/nfe/leiaute/schema/pl_009_v4b/consReciNFe_v4.00.xsd create mode 100644 pysped/nfe/leiaute/schema/pl_009_v4b/consSitNFe_v4.00.xsd create mode 100644 pysped/nfe/leiaute/schema/pl_009_v4b/consStatServ_v4.00.xsd create mode 100644 pysped/nfe/leiaute/schema/pl_009_v4b/enviNFe_v4.00.xsd create mode 100644 pysped/nfe/leiaute/schema/pl_009_v4b/inutNFe_v4.00.xsd create mode 100644 pysped/nfe/leiaute/schema/pl_009_v4b/leiauteConsSitNFe_v4.00.xsd create mode 100644 pysped/nfe/leiaute/schema/pl_009_v4b/leiauteConsStatServ_v4.00.xsd create mode 100644 pysped/nfe/leiaute/schema/pl_009_v4b/leiauteInutNFe_v4.00.xsd create mode 100644 pysped/nfe/leiaute/schema/pl_009_v4b/leiauteNFe_v4.00.xsd create mode 100644 pysped/nfe/leiaute/schema/pl_009_v4b/nfe_v4.00.xsd create mode 100644 pysped/nfe/leiaute/schema/pl_009_v4b/procInutNFe_v4.00.xsd create mode 100644 pysped/nfe/leiaute/schema/pl_009_v4b/procNFe_v4.00.xsd create mode 100644 pysped/nfe/leiaute/schema/pl_009_v4b/retConsReciNFe_v4.00.xsd create mode 100644 pysped/nfe/leiaute/schema/pl_009_v4b/retConsSitNFe_v4.00.xsd create mode 100644 pysped/nfe/leiaute/schema/pl_009_v4b/retConsStatServ_v4.00.xsd create mode 100644 pysped/nfe/leiaute/schema/pl_009_v4b/retEnviNFe_v4.00.xsd create mode 100644 pysped/nfe/leiaute/schema/pl_009_v4b/retInutNFe_v4.00.xsd create mode 100644 pysped/nfe/leiaute/schema/pl_009_v4b/tiposBasico_v4.00.xsd create mode 100644 pysped/nfe/leiaute/schema/pl_009_v4b/xmldsig-core-schema_v1.01.xsd diff --git a/pysped/nfe/leiaute/__init__.py b/pysped/nfe/leiaute/__init__.py index 37562621..c06fa688 100644 --- a/pysped/nfe/leiaute/__init__.py +++ b/pysped/nfe/leiaute/__init__.py @@ -330,7 +330,7 @@ # # Versão 4.00, usada a partir de agosto/2017 # -ESQUEMA_ATUAL_VERSAO_4 = 'pl_009_v4' +ESQUEMA_ATUAL_VERSAO_4 = 'pl_009_v4b' # # Emissão de NFC-e diff --git a/pysped/nfe/leiaute/schema/pl_009_v4b/consReciNFe_v4.00.xsd b/pysped/nfe/leiaute/schema/pl_009_v4b/consReciNFe_v4.00.xsd new file mode 100644 index 00000000..121c7427 --- /dev/null +++ b/pysped/nfe/leiaute/schema/pl_009_v4b/consReciNFe_v4.00.xsd @@ -0,0 +1,9 @@ + + + + + + Schema XML de validação do Pedido de Consulta do Recido do Lote de Notas Fiscais Eletrônicas + + + diff --git a/pysped/nfe/leiaute/schema/pl_009_v4b/consSitNFe_v4.00.xsd b/pysped/nfe/leiaute/schema/pl_009_v4b/consSitNFe_v4.00.xsd new file mode 100644 index 00000000..c55a4dc4 --- /dev/null +++ b/pysped/nfe/leiaute/schema/pl_009_v4b/consSitNFe_v4.00.xsd @@ -0,0 +1,9 @@ + + + + + + Schema de validação XML dp Pedido de Consulta da Situação Atual da Nota Fiscal Eletrônica + + + diff --git a/pysped/nfe/leiaute/schema/pl_009_v4b/consStatServ_v4.00.xsd b/pysped/nfe/leiaute/schema/pl_009_v4b/consStatServ_v4.00.xsd new file mode 100644 index 00000000..f089e0c3 --- /dev/null +++ b/pysped/nfe/leiaute/schema/pl_009_v4b/consStatServ_v4.00.xsd @@ -0,0 +1,9 @@ + + + + + + Schema XML de validação do Pedido de Consulta do Status do Serviço + + + diff --git a/pysped/nfe/leiaute/schema/pl_009_v4b/enviNFe_v4.00.xsd b/pysped/nfe/leiaute/schema/pl_009_v4b/enviNFe_v4.00.xsd new file mode 100644 index 00000000..05ee5dcb --- /dev/null +++ b/pysped/nfe/leiaute/schema/pl_009_v4b/enviNFe_v4.00.xsd @@ -0,0 +1,9 @@ + + + + + + Schema XML de validação do Pedido de Concessão de Autorização da Nota Fiscal Eletrônica + + + diff --git a/pysped/nfe/leiaute/schema/pl_009_v4b/inutNFe_v4.00.xsd b/pysped/nfe/leiaute/schema/pl_009_v4b/inutNFe_v4.00.xsd new file mode 100644 index 00000000..461d0b9a --- /dev/null +++ b/pysped/nfe/leiaute/schema/pl_009_v4b/inutNFe_v4.00.xsd @@ -0,0 +1,9 @@ + + + + + + Schema XML de validação do Pedido de Inutilização de Numeração da Nota Fiscal Eletrônica + + + diff --git a/pysped/nfe/leiaute/schema/pl_009_v4b/leiauteConsSitNFe_v4.00.xsd b/pysped/nfe/leiaute/schema/pl_009_v4b/leiauteConsSitNFe_v4.00.xsd new file mode 100644 index 00000000..5330c83d --- /dev/null +++ b/pysped/nfe/leiaute/schema/pl_009_v4b/leiauteConsSitNFe_v4.00.xsd @@ -0,0 +1,502 @@ + + + + + + + + + + + + Tipo Pedido de Consulta da Situação Atual da Nota Fiscal Eletrônica + + + + + Identificação do Ambiente: +1 - Produção +2 - Homologação + + + + + Serviço Solicitado + + + + + + + + + + Chaves de acesso da NF-e, compostas por: UF do emitente, AAMM da emissão da NFe, CNPJ do emitente, modelo, série e número da NF-e e código numérico + DV. + + + + + + + + Tipo Retorno de Pedido de Consulta da Situação Atual da Nota Fiscal Eletrônica + + + + + Identificação do Ambiente: +1 - Produção +2 - Homologação + + + + + Versão do Aplicativo que processou a NF-e + + + + + Código do status da mensagem enviada. + + + + + Descrição literal do status do serviço solicitado. + + + + + código da UF de atendimento + + + + + AAAA-MM-DDTHH:MM:SSTZD + + + + + Chaves de acesso da NF-e consultada + + + + + Protocolo de autorização de uso da NF-e + + + + + Protocolo de homologação de cancelamento de uso da NF-e + + + + + Protocolo de registro de evento da NF-e + + + + + + + + Tipo Protocolo de status resultado do processamento da NF-e + + + + + Dados do protocolo de status + + + + + + Identificação do Ambiente: +1 - Produção +2 - Homologação + + + + + Versão do Aplicativo que processou a NF-e + + + + + Chaves de acesso da NF-e, compostas por: UF do emitente, AAMM da emissão da NFe, CNPJ do emitente, modelo, série e número da NF-e e código numérico+DV. + + + + + Data e hora de processamento, no formato AAAA-MM-DDTHH:MM:SS (ou AAAA-MM-DDTHH:MM:SSTZD, de acordo com versão). Deve ser preenchida com data e hora da gravação no Banco em caso de Confirmação. Em caso de Rejeição, com data e hora do recebimento do Lote de NF-e enviado. + + + + + Número do Protocolo de Status da NF-e. 1 posição (1 – Secretaria de Fazenda Estadual 2 – Receita Federal); 2 - códiga da UF - 2 posições ano; 10 seqüencial no ano. + + + + + Digest Value da NF-e processada. Utilizado para conferir a integridade da NF-e original. + + + + + Código do status da mensagem enviada. + + + + + Descrição literal do status do serviço solicitado. + + + + + + + + + + + + + Tipo retorno Pedido de Cancelamento da Nota Fiscal Eletrônica + + + + + Dados do Resultado do Pedido de Cancelamento da Nota Fiscal Eletrônica + + + + + + Identificação do Ambiente: +1 - Produção +2 - Homologação + + + + + Versão do Aplicativo que processou o pedido de cancelamento + + + + + Código do status da mensagem enviada. + + + + + Descrição literal do status do serviço solicitado. + + + + + código da UF de atendimento + + + + + Chaves de acesso da NF-e, compostas por: UF do emitente, AAMM da emissão da NFe, CNPJ do emitente, modelo, série e número da NF-e e código numérico + DV. + + + + + Data e hora de recebimento, no formato AAAA-MM-DDTHH:MM:SS. Deve ser preenchida com data e hora da gravação no Banco em caso de Confirmação. + + + + + Número do Protocolo de Status da NF-e. 1 posição (1 – Secretaria de Fazenda Estadual 2 – Receita Federal); 2 - código da UF - 2 posições ano; 10 seqüencial no ano. + + + + + + + + + + + + + Tipo Evento + + + + + + + + Código do órgão de recepção do Evento. Utilizar a Tabela do IBGE extendida, utilizar 90 para identificar o Ambiente Nacional + + + + + Identificação do Ambiente: +1 - Produção +2 - Homologação + + + + + Identificação do autor do evento + + + + CNPJ + + + + + CPF + + + + + + Chave de Acesso da NF-e vinculada ao evento + + + + + Data e Hora do Evento, formato UTC (AAAA-MM-DDThh:mm:ssTZD, onde TZD = +hh:mm ou -hh:mm) + + + + + Tipo do Evento + + + + + + + + + + + Seqüencial do evento para o mesmo tipo de evento. Para maioria dos eventos será 1, nos casos em que possa existir mais de um evento, como é o caso da carta de correção, o autor do evento deve numerar de forma seqüencial. + + + + + + + + + + + Versão do Tipo do Evento + + + + + + + + + + Detalhe Específico do Evento + + + + + + + + + + + + Identificador da TAG a ser assinada, a regra de formação do Id é: +“ID” + tpEvento + chave da NF-e + nSeqEvento + + + + + + + + + + + + + + + + Tipo retorno do Evento + + + + + + + + Identificação do Ambiente: +1 - Produção +2 - Homologação + + + + + Versão do Aplicativo que recebeu o Evento + + + + + Código do órgão de recepção do Evento. Utilizar a Tabela do IBGE extendida, utilizar 90 para identificar o Ambiente Nacional + + + + + Código do status da registro do Evento + + + + + Descrição literal do status do registro do Evento + + + + + Chave de Acesso NF-e vinculada + + + + + Tipo do Evento vinculado + + + + + + + + + + + Descrição do Evento + + + + + + + + + + + Seqüencial do evento + + + + + + + + + + + Identificação do destinatpario da NF-e + + + + CNPJ Destinatário + + + + + CPF Destiantário + + + + + + email do destinatário + + + + + + + + + + + Data e Hora de registro do evento formato UTC AAAA-MM-DDTHH:MM:SSTZD + + + + + Número do protocolo de registro do evento + + + + + + + + + + + + + + + + + + + Tipo procEvento + + + + + + + + + + Tipo Versão da NF-e + + + + + + + + Tipo Versão do leiaute de Cancelamento de NF-e - 2.00/1.07 + + + + + + + + Tipo Versão do Evento 1.00 + + + + + + + + Tipo Versão do Evento + + + + + + + + Tipo Versão do Leiaute da Cosulta situação NF-e - 4.00 + + + + + + + diff --git a/pysped/nfe/leiaute/schema/pl_009_v4b/leiauteConsStatServ_v4.00.xsd b/pysped/nfe/leiaute/schema/pl_009_v4b/leiauteConsStatServ_v4.00.xsd new file mode 100644 index 00000000..1442cf11 --- /dev/null +++ b/pysped/nfe/leiaute/schema/pl_009_v4b/leiauteConsStatServ_v4.00.xsd @@ -0,0 +1,98 @@ + + + + + + + Tipo Pedido de Consulta do Status do Serviço + + + + + Identificação do Ambiente: +1 - Produção +2 - Homologação + + + + + Sigla da UF consultada + + + + + Serviço Solicitado + + + + + + + + + + + + + Tipo Resultado da Consulta do Status do Serviço + + + + + Identificação do Ambiente: +1 - Produção +2 - Homologação + + + + + Versão do Aplicativo que processou a NF-e + + + + + Código do status da mensagem enviada. + + + + + Descrição literal do status do serviço solicitado. + + + + + Código da UF responsável pelo serviço + + + + + Data e hora do recebimento da consulta no formato AAAA-MM-DDTHH:MM:SSTZD + + + + + Tempo médio de resposta do serviço (em segundos) dos últimos 5 minutos + + + + + AAAA-MM-DDTHH:MM:SSDeve ser preenchida com data e hora previstas para o retorno dos serviços prestados. + + + + + Campo observação utilizado para incluir informações ao contribuinte + + + + + + + + Tipo versão do leiuate da Consulta Status do Serviço 4.00 + + + + + + diff --git a/pysped/nfe/leiaute/schema/pl_009_v4b/leiauteInutNFe_v4.00.xsd b/pysped/nfe/leiaute/schema/pl_009_v4b/leiauteInutNFe_v4.00.xsd new file mode 100644 index 00000000..819597c1 --- /dev/null +++ b/pysped/nfe/leiaute/schema/pl_009_v4b/leiauteInutNFe_v4.00.xsd @@ -0,0 +1,193 @@ + + + + + + + + + Tipo Pedido de Inutilização de Numeração da Nota Fiscal Eletrônica + + + + + Dados do Pedido de Inutilização de Numeração da Nota Fiscal Eletrônica + + + + + + Identificação do Ambiente: +1 - Produção +2 - Homologação + + + + + Serviço Solicitado + + + + + + + + + + Código da UF do emitente + + + + + Ano de inutilização da numeração + + + + + CNPJ do emitente + + + + + Modelo da NF-e (55, 65 etc.) + + + + + Série da NF-e + + + + + Número da NF-e inicial + + + + + Número da NF-e final + + + + + Justificativa do pedido de inutilização + + + + + + + + + + + + + + + + + + + Tipo retorno do Pedido de Inutilização de Numeração da Nota Fiscal Eletrônica + + + + + Dados do Retorno do Pedido de Inutilização de Numeração da Nota Fiscal Eletrônica + + + + + + Identificação do Ambiente: +1 - Produção +2 - Homologação + + + + + Versão do Aplicativo que processou a NF-e + + + + + Código do status da mensagem enviada. + + + + + Descrição literal do status do serviço solicitado. + + + + + Código da UF que atendeu a solicitação + + + + + Ano de inutilização da numeração + + + + + CNPJ do emitente + + + + + Modelo da NF-e (55, etc.) + + + + + Série da NF-e + + + + + Número da NF-e inicial + + + + + Número da NF-e final + + + + + Data e hora de recebimento, no formato AAAA-MM-DDTHH:MM:SS. Deve ser preenchida com data e hora da gravação no Banco em caso de Confirmação. Em caso de Rejeição, com data e hora do recebimento do Pedido de Inutilização. + + + + + Número do Protocolo de Status da NF-e. 1 posição (1 – Secretaria de Fazenda Estadual 2 – Receita Federal); 2 - código da UF - 2 posições ano; 10 seqüencial no ano. + + + + + + + + + + + + + Tipo Pedido de inutilzação de númeração de NF-e processado + + + + + + + + + + Tipo Versão do leiaute de Inutilização 4.00 + + + + + + diff --git a/pysped/nfe/leiaute/schema/pl_009_v4b/leiauteNFe_v4.00.xsd b/pysped/nfe/leiaute/schema/pl_009_v4b/leiauteNFe_v4.00.xsd new file mode 100644 index 00000000..8cde564b --- /dev/null +++ b/pysped/nfe/leiaute/schema/pl_009_v4b/leiauteNFe_v4.00.xsd @@ -0,0 +1,6480 @@ + + + + + + + + + + + + + + + + + + Tipo Nota Fiscal Eletrônica + + + + + Informações da Nota Fiscal eletrônica + + + + + + identificação da NF-e + + + + + + Código da UF do emitente do Documento Fiscal. Utilizar a Tabela do IBGE. + + + + + Código numérico que compõe a Chave de Acesso. Número aleatório gerado pelo emitente para cada NF-e. + + + + + + + + + + + Descrição da Natureza da Operação + + + + + + + + + + + Código do modelo do Documento Fiscal. 55 = NF-e; 65 = NFC-e. + + + + + Série do Documento Fiscal +série normal 0-889 +Avulsa Fisco 890-899 +SCAN 900-999 + + + + + Número do Documento Fiscal + + + + + Data e Hora de emissão do Documento Fiscal (AAAA-MM-DDThh:mm:ssTZD) ex.: 2012-09-01T13:00:00-03:00 + + + + + Data e Hora da saída ou de entrada da mercadoria / produto (AAAA-MM-DDTHH:mm:ssTZD) + + + + + Tipo do Documento Fiscal (0 - entrada; 1 - saída) + + + + + + + + + + + + Identificador de Local de destino da operação (1-Interna;2-Interestadual;3-Exterior) + + + + + + + + + + + + + Código do Município de Ocorrência do Fato Gerador (utilizar a tabela do IBGE) + + + + + Formato de impressão do DANFE (0-sem DANFE;1-DANFe Retrato; 2-DANFe Paisagem;3-DANFe Simplificado; + 4-DANFe NFC-e;5-DANFe NFC-e em mensagem eletrônica) + + + + + + + + + + + + + + + + Forma de emissão da NF-e +1 - Normal; +2 - Contingência FS +3 - Contingência SCAN +4 - Contingência DPEC +5 - Contingência FSDA +6 - Contingência SVC - AN +7 - Contingência SVC - RS +9 - Contingência off-line NFC-e + + + + + + + + + + + + + + + + + + Digito Verificador da Chave de Acesso da NF-e + + + + + + + + + + + Identificação do Ambiente: +1 - Produção +2 - Homologação + + + + + Finalidade da emissão da NF-e: +1 - NFe normal +2 - NFe complementar +3 - NFe de ajuste +4 - Devolução/Retorno + + + + + Indica operação com consumidor final (0-Não;1-Consumidor Final) + + + + + + + + + + + + Indicador de presença do comprador no estabelecimento comercial no momento da oepração + (0-Não se aplica (ex.: Nota Fiscal complementar ou de ajuste;1-Operação presencial;2-Não presencial, internet;3-Não presencial, teleatendimento;4-NFC-e entrega em domicílio;5-Operação presencial, fora do estabelecimento;9-Não presencial, outros) + + + + + + + + + + + + + + + + + Processo de emissão utilizado com a seguinte codificação: +0 - emissão de NF-e com aplicativo do contribuinte; +1 - emissão de NF-e avulsa pelo Fisco; +2 - emissão de NF-e avulsa, pelo contribuinte com seu certificado digital, através do site +do Fisco; +3- emissão de NF-e pelo contribuinte com aplicativo fornecido pelo Fisco. + + + + + versão do aplicativo utilizado no processo de +emissão + + + + + + + + + + + Informar apenas +para tpEmis diferente de 1 + + + + Informar a data e hora de entrada em contingência contingência no formato (AAAA-MM-DDThh:mm:ssTZD) ex.: 2012-09-01T13:00:00-03:00. + + + + + Informar a Justificativa da entrada + + + + + + + + + + + + Grupo de infromações da NF referenciada + + + + + + Chave de acesso das NF-e referenciadas. Chave de acesso compostas por Código da UF (tabela do IBGE) + AAMM da emissão + CNPJ do Emitente + modelo, série e número da NF-e Referenciada + Código Numérico + DV. + + + + + Dados da NF modelo 1/1A referenciada ou NF modelo 2 referenciada + + + + + + Código da UF do emitente do Documento Fiscal. Utilizar a Tabela do IBGE. + + + + + AAMM da emissão + + + + + + + + + + + CNPJ do emitente do documento fiscal referenciado + + + + + Código do modelo do Documento Fiscal. Utilizar 01 para NF modelo 1/1A e 02 para NF modelo 02 + + + + + + + + + + + + Série do Documento Fiscal, informar zero se inexistente + + + + + Número do Documento Fiscal + + + + + + + + Grupo com as informações NF de produtor referenciada + + + + + + Código da UF do emitente do Documento FiscalUtilizar a Tabela do IBGE (Anexo IV - Tabela de UF, Município e País) + + + + + AAMM da emissão da NF de produtor + + + + + + + + + + + + CNPJ do emitente da NF de produtor + + + + + CPF do emitente da NF de produtor + + + + + + IE do emitente da NF de Produtor + + + + + Código do modelo do Documento Fiscal - utilizar 04 para NF de produtor ou 01 para NF Avulsa + + + + + + + + + + + + Série do Documento Fiscal, informar zero se inexistentesérie + + + + + Número do Documento Fiscal - 1 – 999999999 + + + + + + + + Utilizar esta TAG para referenciar um CT-e emitido anteriormente, vinculada a NF-e atual + + + + + Grupo do Cupom Fiscal vinculado à NF-e + + + + + + Código do modelo do Documento Fiscal +Preencher com "2B", quando se tratar de Cupom Fiscal emitido por máquina registradora (não ECF), com "2C", quando se tratar de Cupom Fiscal PDV, ou "2D", quando se tratar de Cupom Fiscal (emitido por ECF) + + + + + + + + + + + + + Informar o número de ordem seqüencial do ECF que emitiu o Cupom Fiscal vinculado à NF-e + + + + + + + + + + + Informar o Número do Contador de Ordem de Operação - COO vinculado à NF-e + + + + + + + + + + + + + + + + + + + + Identificação do emitente + + + + + + + Número do CNPJ do emitente + + + + + Número do CPF do emitente + + + + + + Razão Social ou Nome do emitente + + + + + + + + + + + Nome fantasia + + + + + + + + + + + Endereço do emitente + + + + + Inscrição Estadual do Emitente + + + + + Inscricao Estadual do Substituto Tributário + + + + + Grupo de informações de interesse da Prefeitura + + + + Inscrição Municipal + + + + + + + + + + + CNAE Fiscal + + + + + + + + + + + + Código de Regime Tributário. +Este campo será obrigatoriamente preenchido com: +1 – Simples Nacional; +2 – Simples Nacional – excesso de sublimite de receita bruta; +3 – Regime Normal. + + + + + + + + + + + + + + + + Emissão de avulsa, informar os dados do Fisco emitente + + + + + + CNPJ do Órgão emissor + + + + + Órgão emitente + + + + + + + + + + + Matrícula do agente + + + + + + + + + + + Nome do agente + + + + + + + + + + + Telefone + + + + + + + + + + + Sigla da Unidade da Federação + + + + + Número do Documento de Arrecadação de Receita + + + + + + + + + + + Data de emissão do DAR (AAAA-MM-DD) + + + + + Valor Total constante no DAR + + + + + Repartição Fiscal emitente + + + + + + + + + + + Data de pagamento do DAR (AAAA-MM-DD) + + + + + + + + Identificação do Destinatário + + + + + + + Número do CNPJ + + + + + Número do CPF + + + + + Identificador do destinatário, em caso de comprador estrangeiro + + + + + + + + + + + + Razão Social ou nome do destinatário + + + + + + + + + + + Dados do endereço + + + + + Indicador da IE do destinatário: +1 – Contribuinte ICMSpagamento à vista; +2 – Contribuinte isento de inscrição; +9 – Não Contribuinte + + + + + + + + + + + + + Inscrição Estadual (obrigatório nas operações com contribuintes do ICMS) + + + + + Inscrição na SUFRAMA (Obrigatório nas operações com as áreas com benefícios de incentivos fiscais sob controle da SUFRAMA) PL_005d - 11/08/09 - alterado para aceitar 8 ou 9 dígitos + + + + + + + + + + + Inscrição Municipal do tomador do serviço + + + + + + + + + + + Informar o e-mail do destinatário. O campo pode ser utilizado para informar o e-mail +de recepção da NF-e indicada pelo destinatário + + + + + + + + + + + + + + + Identificação do Local de Retirada (informar apenas quando for diferente do endereço do remetente) + + + + + Identificação do Local de Entrega (informar apenas quando for diferente do endereço do destinatário) + + + + + Pessoas autorizadas para o download do XML da NF-e + + + + + + CNPJ Autorizado + + + + + CPF Autorizado + + + + + + + + Dados dos detalhes da NF-e + + + + + + Dados dos produtos e serviços da NF-e + + + + + + Código do produto ou serviço. Preencher com CFOP caso se trate de itens não relacionados com mercadorias/produto e que o contribuinte não possua codificação própria +Formato ”CFOP9999”. + + + + + + + + + + + GTIN (Global Trade Item Number) do produto, antigo código EAN ou código de barras + + + + + + + + + + + Descrição do produto ou serviço + + + + + + + + + + + Código NCM (8 posições), será permitida a informação do gênero (posição do capítulo do NCM) quando a operação não for de comércio exterior (importação/exportação) ou o produto não seja tributado pelo IPI. Em caso de item de serviço ou item que não tenham produto (Ex. transferência de crédito, crédito do ativo imobilizado, etc.), informar o código 00 (zeros) (v2.0) + + + + + + + + + + + Nomenclatura de Valor aduaneio e Estatístico + + + + + + + + + + + + Codigo especificador da Substuicao Tributaria - CEST, que identifica a mercadoria sujeita aos regimes de substituicao tributária e de antecipação do recolhimento do imposto + + + + + + + + + + + + + + + + + + + CNPJ do Fabricante da Mercadoria, obrigatório para produto em escala NÃO relevante. + + + + + + + + + + + + + Código EX TIPI (3 posições) + + + + + + + + + + + Cfop + + + + + + + + + + + Unidade comercial + + + + + + + + + + + Quantidade Comercial do produto, alterado para aceitar de 0 a 4 casas decimais e 11 inteiros. + + + + + Valor unitário de comercialização - alterado para aceitar 0 a 10 casas decimais e 11 inteiros + + + + + Valor bruto do produto ou serviço. + + + + + GTIN (Global Trade Item Number) da unidade tributável, antigo código EAN ou código de barras + + + + + + + + + + + Unidade Tributável + + + + + + + + + + + Quantidade Tributável - alterado para aceitar de 0 a 4 casas decimais e 11 inteiros + + + + + Valor unitário de tributação - - alterado para aceitar 0 a 10 casas decimais e 11 inteiros + + + + + Valor Total do Frete + + + + + Valor Total do Seguro + + + + + Valor do Desconto + + + + + Outras despesas acessórias + + + + + Este campo deverá ser preenchido com: + 0 – o valor do item (vProd) não compõe o valor total da NF-e (vProd) + 1 – o valor do item (vProd) compõe o valor total da NF-e (vProd) + + + + + + + + + + + + Delcaração de Importação +(NT 2011/004) + + + + + + Numero do Documento de Importação DI/DSI/DA/DRI-E (DI/DSI/DA/DRI-E) (NT2011/004) + + + + + + + + + + + Data de registro da DI/DSI/DA (AAAA-MM-DD) + + + + + Local do desembaraço aduaneiro + + + + + + + + + + + UF onde ocorreu o desembaraço aduaneiro + + + + + Data do desembaraço aduaneiro (AAAA-MM-DD) + + + + + Via de transporte internacional informada na DI + 1-Maritima;2-Fluvial;3-Lacustre;4-Aerea;5-Postal;6-Ferroviaria;7-Rodoviaria;8-Conduto;9-Meios Proprios;10-Entrada/Saida Ficta. + + + + + + + + + + + + + + + + + + + + + + Valor Adicional ao frete para renovação de marinha mercante + + + + + Forma de Importação quanto a intermediação + 1-por conta propria;2-por conta e ordem;3-encomenda + + + + + + + + + + + + + CNPJ do adquirente ou do encomendante + + + + + Sigla da UF do adquirente ou do encomendante + + + + + Código do exportador (usado nos sistemas internos de informação do emitente da NF-e) + + + + + + + + + + + Adições (NT 2011/004) + + + + + + Número da Adição + + + + + + + + + + + Número seqüencial do item dentro da Adição + + + + + + + + + + + Código do fabricante estrangeiro (usado nos sistemas internos de informação do emitente da NF-e) + + + + + + + + + + + Valor do desconto do item da DI – adição + + + + + Número do ato concessório de Drawback + + + + + + + + + + + + + + + + + Detalhe da exportação + + + + + + Número do ato concessório de Drawback + + + + + + + + + + + Exportação indireta + + + + + + Registro de exportação + + + + + + + + + + + Chave de acesso da NF-e recebida para exportação + + + + + Quantidade do item efetivamente exportado + + + + + + + + + + + pedido de compra - Informação de interesse do emissor para controle do B2B. + + + + + + + + + + + Número do Item do Pedido de Compra - Identificação do número do item do pedido de Compra + + + + + + + + + + + Número de controle da FCI - Ficha de Conteúdo de Importação. + + + + + + + + Número do lote do produto. + + + + + + + + + + + Quantidade de produto no lote. + + + + + Data de fabricação/produção. Formato "AAAA-MM-DD". + + + + + Data de validade. Informar o último dia do mês caso a validade não especifique o dia. Formato "AAAA-MM-DD". + + + + + + + + + + + + + + + + Informações específicas de produtos e serviços + + + + Veículos novos + + + + + + Tipo da Operação (1 - Venda concessionária; 2 - Faturamento direto; 3 - Venda direta; 0 - Outros) + + + + + + + + + + + + + + Chassi do veículo - VIN (código-identificação-veículo) + + + + + + + + + + + + Cor do veículo (código de cada montadora) + + + + + + + + + + + Descrição da cor + + + + + + + + + + + Potência máxima do motor do veículo em cavalo vapor (CV). (potência-veículo) + + + + + + + + + + + Capacidade voluntária do motor expressa em centímetros cúbicos (CC). (cilindradas) + + + + + + + + + + + Peso líquido + + + + + + + + + + + Peso bruto + + + + + + + + + + + Serial (série) + + + + + + + + + + + Tipo de combustível-Tabela RENAVAM: 01-Álcool; 02-Gasolina; 03-Diesel; 16-Álcool/Gas.; 17-Gas./Álcool/GNV; 18-Gasolina/Elétrico + + + + + + + + + + + Número do motor + + + + + + + + + + + CMT-Capacidade Máxima de Tração - em Toneladas 4 casas decimais + + + + + + + + + + + Distância entre eixos + + + + + + + + + + + Ano Modelo de Fabricação + + + + + + + + + + + Ano de Fabricação + + + + + + + + + + + Tipo de pintura + + + + + + + + + + Tipo de veículo (utilizar tabela RENAVAM) + + + + + + + + + + + Espécie de veículo (utilizar tabela RENAVAM) + + + + + + + + + + + Informa-se o veículo tem VIN (chassi) remarcado. +R-Remarcado +N-NormalVIN + + + + + + + + + + + + Condição do veículo (1 - acabado; 2 - inacabado; 3 - semi-acabado) + + + + + + + + + + + + + Código Marca Modelo (utilizar tabela RENAVAM) + + + + + + + + + + + Código da Cor Segundo as regras de pré-cadastro do DENATRAN: 01-AMARELO;02-AZUL;03-BEGE;04-BRANCA;05-CINZA;06-DOURADA;07-GRENA +08-LARANJA;09-MARROM;10-PRATA;11-PRETA;12-ROSA;13-ROXA;14-VERDE;15-VERMELHA;16-FANTASIA + + + + + + + + + + + + + Quantidade máxima de permitida de passageiros sentados, inclusive motorista. + + + + + + + + + + + + + Restrição +0 - Não há; +1 - Alienação Fiduciária; +2 - Arrendamento Mercantil; +3 - Reserva de Domínio; +4 - Penhor de Veículos; +9 - outras. + + + + + + + + + + + + + + + + + + + grupo do detalhamento de Medicamentos e de matérias-primas farmacêuticas + + + + + + Utilizar o número do registro ANVISA +Obs.: Para medicamento isento de registro na ANVISA, utilizar o número da decisão que o isenta, como por exemplo o número da Resolução da Diretoria Colegiada da ANVISA (RDC). + + + + + + + + + + Preço Máximo ao Consumidor. + + + + + + + + Armamentos + + + + + + Indicador do tipo de arma de fogo (0 - Uso permitido; 1 - Uso restrito) + + + + + + + + + + + + Número de série da arma + + + + + + + + + + + Número de série do cano + + + + + + + + + + + Descrição completa da arma, compreendendo: calibre, marca, capacidade, tipo de funcionamento, comprimento e demais elementos que permitam a sua perfeita identificação. + + + + + + + + + + + + + + Informar apenas para operações com combustíveis líquidos + + + + + + Código de produto da ANP. codificação de produtos do SIMP (http://www.anp.gov.br) + + + + + + + + + + + Descrição do Produto conforme ANP. Utilizar a descrição de produtos do Sistema de Informações de Movimentação de Produtos - SIMP (http://www.anp.gov.br/simp/). + + + + + + + + + + + Percentual do GLP derivado do petróleo no produto GLP (cProdANP=210203001). Informar em número decimal o percentual do GLP derivado de petróleo no produto GLP. Valores 0 a 100. + + + + + Percentual de gás natural nacional - GLGNn para o produto GLP (cProdANP=210203001). Informar em número decimal o percentual do Gás Natural Nacional - GLGNn para o produto GLP. Valores de 0 a 100. + + + + + Percentual de gás natural importado GLGNi para o produto GLP (cProdANP=210203001). Informar em número deciaml o percentual do Gás Natural Importado - GLGNi para o produto GLP. Valores de 0 a 100. + + + + + Valor de partida (cProdANP=210203001). Deve ser informado neste campo o valor por quilograma sem ICMS. + + + + + Código de autorização / registro do CODIF. Informar apenas quando a UF utilizar o CODIF (Sistema de Controle do Diferimento do Imposto nas Operações com AEAC - Álcool Etílico Anidro Combustível). + + + + + + + + + + + Quantidade de combustível +faturada à temperatura ambiente. +Informar quando a quantidade +faturada informada no campo +qCom (I10) tiver sido ajustada para +uma temperatura diferente da +ambiente. + + + + + Sigla da UF de Consumo + + + + + CIDE Combustíveis + + + + + + BC do CIDE ( Quantidade comercializada) + + + + + Alíquota do CIDE (em reais) + + + + + Valor do CIDE + + + + + + + + Informações do grupo de "encerrante" + + + + + + Numero de identificação do Bico utilizado no abastecimento + + + + + + + + + + + Numero de identificação da bomba ao qual o bico está interligado + + + + + + + + + + + Numero de identificação do tanque ao qual o bico está interligado + + + + + + + + + + + Valor do Encerrante no ínicio do abastecimento + + + + + Valor do Encerrante no final do abastecimento + + + + + + + + + + + Número do RECOPI + + + + + + + + + + + + + + + + Tributos incidentes nos produtos ou serviços da NF-e + + + + + + Valor estimado total de impostos federais, estaduais e municipais + + + + + + + Dados do ICMS Normal e ST + + + + + + Tributação pelo ICMS +00 - Tributada integralmente + + + + + + origem da mercadoria: 0 - Nacional +1 - Estrangeira - Importação direta +2 - Estrangeira - Adquirida no mercado interno + + + + + Tributção pelo ICMS +00 - Tributada integralmente + + + + + + + + + + + Modalidade de determinação da BC do ICMS: +0 - Margem Valor Agregado (%); +1 - Pauta (valor); +2 - Preço Tabelado Máximo (valor); +3 - Valor da Operação. + + + + + + + + + + + + + + Valor da BC do ICMS + + + + + Alíquota do ICMS + + + + + Valor do ICMS + + + + + + Percentual de ICMS relativo ao Fundo de Combate à Pobreza (FCP). + + + + + Valor do ICMS relativo ao Fundo de Combate à Pobreza (FCP). + + + + + + + + + Tributação pelo ICMS +10 - Tributada e com cobrança do ICMS por substituição tributária + + + + + + origem da mercadoria: 0 - Nacional +1 - Estrangeira - Importação direta +2 - Estrangeira - Adquirida no mercado interno + + + + + 10 - Tributada e com cobrança do ICMS por substituição tributária + + + + + + + + + + + Modalidade de determinação da BC do ICMS: +0 - Margem Valor Agregado (%); +1 - Pauta (valor); +2 - Preço Tabelado Máximo (valor); +3 - Valor da Operação. + + + + + + + + + + + + + + Valor da BC do ICMS + + + + + Alíquota do ICMS + + + + + Valor do ICMS + + + + + + Valor da Base de cálculo do FCP. + + + + + Percentual de ICMS relativo ao Fundo de Combate à Pobreza (FCP). + + + + + Valor do ICMS relativo ao Fundo de Combate à Pobreza (FCP). + + + + + + Modalidade de determinação da BC do ICMS ST: +0 – Preço tabelado ou máximo sugerido; +1 - Lista Negativa (valor); +2 - Lista Positiva (valor); +3 - Lista Neutra (valor); +4 - Margem Valor Agregado (%); +5 - Pauta (valor); + + + + + + + + + + + + + + + + Percentual da Margem de Valor Adicionado ICMS ST + + + + + Percentual de redução da BC ICMS ST + + + + + Valor da BC do ICMS ST + + + + + Alíquota do ICMS ST + + + + + Valor do ICMS ST + + + + + + Valor da Base de cálculo do FCP retido por substituicao tributaria. + + + + + Percentual de FCP retido por substituição tributária. + + + + + Valor do FCP retido por substituição tributária. + + + + + + + + + Tributção pelo ICMS +20 - Com redução de base de cálculo + + + + + + origem da mercadoria: 0 - Nacional +1 - Estrangeira - Importação direta +2 - Estrangeira - Adquirida no mercado interno + + + + + Tributção pelo ICMS +20 - Com redução de base de cálculo + + + + + + + + + + + Modalidade de determinação da BC do ICMS: +0 - Margem Valor Agregado (%); +1 - Pauta (valor); +2 - Preço Tabelado Máximo (valor); +3 - Valor da Operação. + + + + + + + + + + + + + + Percentual de redução da BC + + + + + Valor da BC do ICMS + + + + + Alíquota do ICMS + + + + + Valor do ICMS + + + + + + Valor da Base de cálculo do FCP. + + + + + Percentual de ICMS relativo ao Fundo de Combate à Pobreza (FCP). + + + + + Valor do ICMS relativo ao Fundo de Combate à Pobreza (FCP). + + + + + + Grupo desoneração + + + + Valor do ICMS de desoneração + + + + + Motivo da desoneração do ICMS:3-Uso na agropecuária;9-Outros;12-Fomento agropecuário + + + + + + + + + + + + + + + + + Tributação pelo ICMS +30 - Isenta ou não tributada e com cobrança do ICMS por substituição tributária + + + + + + origem da mercadoria: 0 - Nacional +1 - Estrangeira - Importação direta +2 - Estrangeira - Adquirida no mercado interno + + + + + Tributção pelo ICMS +30 - Isenta ou não tributada e com cobrança do ICMS por substituição tributária + + + + + + + + + + + Modalidade de determinação da BC do ICMS ST: +0 – Preço tabelado ou máximo sugerido; +1 - Lista Negativa (valor); +2 - Lista Positiva (valor); +3 - Lista Neutra (valor); +4 - Margem Valor Agregado (%); +5 - Pauta (valor). + + + + + + + + + + + + + + + + Percentual da Margem de Valor Adicionado ICMS ST + + + + + Percentual de redução da BC ICMS ST + + + + + Valor da BC do ICMS ST + + + + + Alíquota do ICMS ST + + + + + Valor do ICMS ST + + + + + + Valor da Base de cálculo do FCP. + + + + + Percentual de FCP retido por substituição tributária. + + + + + Valor do FCP retido por substituição tributária. + + + + + + Grupo desoneração + + + + Valor do ICMS de desoneração + + + + + Motivo da desoneração do ICMS:6-Utilitários Motocicleta AÁrea Livre;7-SUFRAMA;9-Outros + + + + + + + + + + + + + + + + + Tributação pelo ICMS +40 - Isenta +41 - Não tributada +50 - Suspensão + + + + + + origem da mercadoria: 0 - Nacional +1 - Estrangeira - Importação direta +2 - Estrangeira - Adquirida no mercado interno + + + + + Tributação pelo ICMS +40 - Isenta +41 - Não tributada +50 - Suspensão +51 - Diferimento + + + + + + + + + + + + + + O valor do ICMS será informado apenas nas operações com veículos beneficiados com a desoneração condicional do ICMS. + + + + + Este campo será preenchido quando o campo anterior estiver preenchido. +Informar o motivo da desoneração: +1 – Táxi; +3 – Produtor Agropecuário; +4 – Frotista/Locadora; +5 – Diplomático/Consular; +6 – Utilitários e Motocicletas da Amazônia Ocidental e Áreas de Livre Comércio (Resolução 714/88 e 790/94 – CONTRAN e suas alterações); +7 – SUFRAMA; +8 - Venda a órgão Público; +9 – Outros +10- Deficiente Condutor +11- Deficiente não condutor +16 - Olimpíadas Rio 2016 +90 - Solicitado pelo Fisco + + + + + + + + + + + + + + + + + + + + + + + + + + + Tributção pelo ICMS +51 - Diferimento +A exigência do preenchimento das informações do ICMS diferido fica à critério de cada UF. + + + + + + origem da mercadoria: 0 - Nacional +1 - Estrangeira - Importação direta +2 - Estrangeira - Adquirida no mercado interno + + + + + Tributção pelo ICMS +20 - Com redução de base de cálculo + + + + + + + + + + + Modalidade de determinação da BC do ICMS: +0 - Margem Valor Agregado (%); +1 - Pauta (valor); +2 - Preço Tabelado Máximo (valor); +3 - Valor da Operação. + + + + + + + + + + + + + + Percentual de redução da BC + + + + + Valor da BC do ICMS + + + + + Alíquota do imposto + + + + + Valor do ICMS da Operação + + + + + Percentual do diferemento + + + + + Valor do ICMS da diferido + + + + + Valor do ICMS + + + + + + Valor da Base de cálculo do FCP. + + + + + Percentual de ICMS relativo ao Fundo de Combate à Pobreza (FCP). + + + + + Valor do ICMS relativo ao Fundo de Combate à Pobreza (FCP). + + + + + + + + + Tributação pelo ICMS +60 - ICMS cobrado anteriormente por substituição tributária + + + + + + origem da mercadoria: 0 - Nacional +1 - Estrangeira - Importação direta +2 - Estrangeira - Adquirida no mercado interno + + + + + Tributação pelo ICMS +60 - ICMS cobrado anteriormente por substituição tributária + + + + + + + + + + + NT2010/004 + + + + Valor da BC do ICMS ST retido anteriormente + + + + + Aliquota suportada pelo consumidor final. + + + + + Valor do ICMS ST retido anteriormente + + + + + + + Valor da Base de cálculo do FCP retido anteriormente por ST. + + + + + Percentual de FCP retido anteriormente por substituição tributária. + + + + + Valor do FCP retido por substituição tributária. + + + + + + + + + Percentual de redução da base de cálculo efetiva. + + + + + Valor da base de cálculo efetiva. + + + + + Alíquota do ICMS efetiva. + + + + + Valor do ICMS efetivo. + + + + + + + + + Tributação pelo ICMS +70 - Com redução de base de cálculo e cobrança do ICMS por substituição tributária + + + + + + origem da mercadoria: 0 - Nacional +1 - Estrangeira - Importação direta +2 - Estrangeira - Adquirida no mercado interno + + + + + Tributção pelo ICMS +70 - Com redução de base de cálculo e cobrança do ICMS por substituição tributária + + + + + + + + + + + Modalidade de determinação da BC do ICMS: +0 - Margem Valor Agregado (%); +1 - Pauta (valor); +2 - Preço Tabelado Máximo (valor); +3 - Valor da Operação. + + + + + + + + + + + + + + Percentual de redução da BC + + + + + Valor da BC do ICMS + + + + + Alíquota do ICMS + + + + + Valor do ICMS + + + + + + Valor da Base de cálculo do FCP. + + + + + Percentual de ICMS relativo ao Fundo de Combate à Pobreza (FCP). + + + + + Valor do ICMS relativo ao Fundo de Combate à Pobreza (FCP). + + + + + + Modalidade de determinação da BC do ICMS ST: +0 – Preço tabelado ou máximo sugerido; +1 - Lista Negativa (valor); +2 - Lista Positiva (valor); +3 - Lista Neutra (valor); +4 - Margem Valor Agregado (%); +5 - Pauta (valor). + + + + + + + + + + + + + + + + Percentual da Margem de Valor Adicionado ICMS ST + + + + + Percentual de redução da BC ICMS ST + + + + + Valor da BC do ICMS ST + + + + + Alíquota do ICMS ST + + + + + Valor do ICMS ST + + + + + + Valor da Base de cálculo do FCP retido por substituição tributária. + + + + + Percentual de FCP retido por substituição tributária. + + + + + Valor do FCP retido por substituição tributária. + + + + + + Grupo desoneração + + + + Valor do ICMS de desoneração + + + + + Motivo da desoneração do ICMS:3-Uso na agropecuária;9-Outros;12-Fomento agropecuário + + + + + + + + + + + + + + + + + Tributação pelo ICMS +90 - Outras + + + + + + origem da mercadoria: 0 - Nacional +1 - Estrangeira - Importação direta +2 - Estrangeira - Adquirida no mercado interno + + + + + Tributção pelo ICMS +90 - Outras + + + + + + + + + + + + Modalidade de determinação da BC do ICMS: +0 - Margem Valor Agregado (%); +1 - Pauta (valor); +2 - Preço Tabelado Máximo (valor); +3 - Valor da Operação. + + + + + + + + + + + + + + Valor da BC do ICMS + + + + + Percentual de redução da BC + + + + + Alíquota do ICMS + + + + + Valor do ICMS + + + + + + Valor da Base de cálculo do FCP. + + + + + Percentual de ICMS relativo ao Fundo de Combate à Pobreza (FCP). + + + + + Valor do ICMS relativo ao Fundo de Combate à Pobreza (FCP). + + + + + + + + Modalidade de determinação da BC do ICMS ST: +0 – Preço tabelado ou máximo sugerido; +1 - Lista Negativa (valor); +2 - Lista Positiva (valor); +3 - Lista Neutra (valor); +4 - Margem Valor Agregado (%); +5 - Pauta (valor). + + + + + + + + + + + + + + + + Percentual da Margem de Valor Adicionado ICMS ST + + + + + Percentual de redução da BC ICMS ST + + + + + Valor da BC do ICMS ST + + + + + Alíquota do ICMS ST + + + + + Valor do ICMS ST + + + + + + Valor da Base de cálculo do FCP. + + + + + Percentual de FCP retido por substituição tributária. + + + + + Valor do FCP retido por substituição tributária. + + + + + + + Grupo desoneração + + + + Valor do ICMS de desoneração + + + + + Motivo da desoneração do ICMS:3-Uso na agropecuária;9-Outros;12-Fomento agropecuário + + + + + + + + + + + + + + + + + Partilha do ICMS entre a UF de origem e UF de destino ou a UF definida na legislação +Operação interestadual para consumidor final com partilha do ICMS devido na operação entre a UF de origem e a UF do destinatário ou ou a UF definida na legislação. (Ex. UF da concessionária de entrega do veículos) + + + + + + origem da mercadoria: 0 - Nacional +1 - Estrangeira - Importação direta +2 - Estrangeira - Adquirida no mercado interno + + + + + Tributação pelo ICMS +10 - Tributada e com cobrança do ICMS por substituição tributária; +90 – Outros. + + + + + + + + + + + + Modalidade de determinação da BC do ICMS: +0 - Margem Valor Agregado (%); +1 - Pauta (valor); +2 - Preço Tabelado Máximo (valor); +3 - Valor da Operação. + + + + + + + + + + + + + + Valor da BC do ICMS + + + + + Percentual de redução da BC + + + + + Alíquota do ICMS + + + + + Valor do ICMS + + + + + Modalidade de determinação da BC do ICMS ST: +0 – Preço tabelado ou máximo sugerido; +1 - Lista Negativa (valor); +2 - Lista Positiva (valor); +3 - Lista Neutra (valor); +4 - Margem Valor Agregado (%); +5 - Pauta (valor). + + + + + + + + + + + + + + + + Percentual da Margem de Valor Adicionado ICMS ST + + + + + Percentual de redução da BC ICMS ST + + + + + Valor da BC do ICMS ST + + + + + Alíquota do ICMS ST + + + + + Valor do ICMS ST + + + + + Percentual para determinação do valor da Base de Cálculo da operação própria. + + + + + Sigla da UF para qual é devido o ICMS ST da operação. + + + + + + + + Grupo de informação do ICMSST devido para a UF de destino, nas operações interestaduais de produtos que tiveram retenção antecipada de ICMS por ST na UF do remetente. Repasse via Substituto Tributário. + + + + + + origem da mercadoria: 0 - Nacional +1 - Estrangeira - Importação direta +2 - Estrangeira - Adquirida no mercado interno + + + + + Tributção pelo ICMS +41-Não Tributado. +60-Cobrado anteriormente por substituição tributária. + + + + + + + + + + + + Informar o valor da BC do ICMS ST retido na UF remetente + + + + + Informar o valor do ICMS ST retido na UF remetente (iv2.0)) + + + + + Informar o valor da BC do ICMS ST da UF destino + + + + + Informar o valor da BC do ICMS ST da UF destino (v2.0) + + + + + + + + Tributação do ICMS pelo SIMPLES NACIONAL e CSOSN=101 (v.2.0) + + + + + + origem da mercadoria: 0 - Nacional +1 - Estrangeira - Importação direta +2 - Estrangeira - Adquirida no mercado interno +(v2.0) + + + + + 101- Tributada pelo Simples Nacional com permissão de crédito. (v.2.0) + + + + + + + + + + + Alíquota aplicável de cálculo do crédito (Simples Nacional). (v2.0) + + + + + Valor crédito do ICMS que pode ser aproveitado nos termos do art. 23 da LC 123 (Simples Nacional) (v2.0) + + + + + + + + Tributação do ICMS pelo SIMPLES NACIONAL e CSOSN=102, 103, 300 ou 400 (v.2.0)) + + + + + + origem da mercadoria: 0 - Nacional +1 - Estrangeira - Importação direta +2 - Estrangeira - Adquirida no mercado interno +(v2.0) + + + + + 102- Tributada pelo Simples Nacional sem permissão de crédito. +103 – Isenção do ICMS no Simples Nacional para faixa de receita bruta. +300 – Imune. +400 – Não tributda pelo Simples Nacional (v.2.0) (v.2.0) + + + + + + + + + + + + + + + + + Tributação do ICMS pelo SIMPLES NACIONAL e CSOSN=201 (v.2.0) + + + + + + Origem da mercadoria: +0 – Nacional; +1 – Estrangeira – Importação direta; +2 – Estrangeira – Adquirida no mercado interno. (v2.0) + + + + + 201- Tributada pelo Simples Nacional com permissão de crédito e com cobrança do ICMS por Substituição Tributária (v.2.0) + + + + + + + + + + + Modalidade de determinação da BC do ICMS ST: +0 – Preço tabelado ou máximo sugerido; +1 - Lista Negativa (valor); +2 - Lista Positiva (valor); +3 - Lista Neutra (valor); +4 - Margem Valor Agregado (%); +5 - Pauta (valor). (v2.0) + + + + + + + + + + + + + + + + Percentual da Margem de Valor Adicionado ICMS ST (v2.0) + + + + + Percentual de redução da BC ICMS ST (v2.0) + + + + + Valor da BC do ICMS ST (v2.0) + + + + + Alíquota do ICMS ST (v2.0) + + + + + Valor do ICMS ST (v2.0) + + + + + + Valor da Base de cálculo do FCP. + + + + + Percentual de FCP retido por substituição tributária. + + + + + Valor do FCP retido por substituição tributária. + + + + + + Alíquota aplicável de cálculo do crédito (Simples Nacional). (v2.0) + + + + + Valor crédito do ICMS que pode ser aproveitado nos termos do art. 23 da LC 123 (Simples Nacional) (v2.0) + + + + + + + + Tributação do ICMS pelo SIMPLES NACIONAL e CSOSN=202 ou 203 (v.2.0) + + + + + + Origem da mercadoria: +0 – Nacional; +1 – Estrangeira – Importação direta; +2 – Estrangeira – Adquirida no mercado interno. (v2.0) + + + + + 202- Tributada pelo Simples Nacional sem permissão de crédito e com cobrança do ICMS por Substituição Tributária; +203- Isenção do ICMS nos Simples Nacional para faixa de receita bruta e com cobrança do ICMS por Substituição Tributária (v.2.0) + + + + + + + + + + + + Modalidade de determinação da BC do ICMS ST: +0 – Preço tabelado ou máximo sugerido; +1 - Lista Negativa (valor); +2 - Lista Positiva (valor); +3 - Lista Neutra (valor); +4 - Margem Valor Agregado (%); +5 - Pauta (valor). (v2.0) + + + + + + + + + + + + + + + + Percentual da Margem de Valor Adicionado ICMS ST (v2.0) + + + + + Percentual de redução da BC ICMS ST (v2.0) + + + + + Valor da BC do ICMS ST (v2.0) + + + + + Alíquota do ICMS ST (v2.0) + + + + + Valor do ICMS ST (v2.0) + + + + + + Valor da Base de cálculo do FCP. + + + + + Percentual de FCP retido por substituição tributária. + + + + + Valor do FCP retido por substituição tributária. + + + + + + + + + Tributação do ICMS pelo SIMPLES NACIONAL,CRT=1 – Simples Nacional e CSOSN=500 (v.2.0) + + + + + + origem da mercadoria: 0 - Nacional +1 - Estrangeira - Importação direta +2 - Estrangeira - Adquirida no mercado interno + + + + + 500 – ICMS cobrado anterirmente por substituição tributária (substituído) ou por antecipação +(v.2.0) + + + + + + + + + + + + Valor da BC do ICMS ST retido anteriormente (v2.0) + + + + + Aliquota suportada pelo consumidor final. + + + + + Valor do ICMS ST retido anteriormente (v2.0) + + + + + + + Valor da Base de cálculo do FCP retido anteriormente. + + + + + Percentual de FCP retido anteriormente por substituição tributária. + + + + + Valor do FCP retido por substituição tributária. + + + + + + + + + Percentual de redução da base de cálculo efetiva. + + + + + Valor da base de cálculo efetiva. + + + + + Alíquota do ICMS efetiva. + + + + + Valor do ICMS efetivo. + + + + + + + + + + Tributação do ICMS pelo SIMPLES NACIONAL, CRT=1 – Simples Nacional e CSOSN=900 (v2.0) + + + + + + origem da mercadoria: 0 - Nacional +1 - Estrangeira - Importação direta +2 - Estrangeira - Adquirida no mercado interno + + + + + Tributação pelo ICMS 900 - Outros(v2.0) + + + + + + + + + + + + Modalidade de determinação da BC do ICMS: +0 - Margem Valor Agregado (%); +1 - Pauta (valor); +2 - Preço Tabelado Máximo (valor); +3 - Valor da Operação. + + + + + + + + + + + + + + Valor da BC do ICMS + + + + + Percentual de redução da BC + + + + + Alíquota do ICMS + + + + + Valor do ICMS + + + + + + + Modalidade de determinação da BC do ICMS ST: +0 – Preço tabelado ou máximo sugerido; +1 - Lista Negativa (valor); +2 - Lista Positiva (valor); +3 - Lista Neutra (valor); +4 - Margem Valor Agregado (%); +5 - Pauta (valor). + + + + + + + + + + + + + + + + Percentual da Margem de Valor Adicionado ICMS ST + + + + + Percentual de redução da BC ICMS ST + + + + + Valor da BC do ICMS ST + + + + + Alíquota do ICMS ST + + + + + Valor do ICMS ST + + + + + + Valor da Base de cálculo do FCP. + + + + + Percentual de FCP retido por substituição tributária. + + + + + Valor do FCP retido por substituição tributária. + + + + + + + + Alíquota aplicável de cálculo do crédito (Simples Nacional). (v2.0) + + + + + Valor crédito do ICMS que pode ser aproveitado nos termos do art. 23 da LC 123 (Simples Nacional) (v2.0) + + + + + + + + + + + + + Dados do Imposto de Importação + + + + + + Base da BC do Imposto de Importação + + + + + Valor das despesas aduaneiras + + + + + Valor do Imposto de Importação + + + + + Valor do Imposto sobre Operações Financeiras + + + + + + + + + + + ISSQN + + + + + + Valor da BC do ISSQN + + + + + Alíquota do ISSQN + + + + + Valor da do ISSQN + + + + + Informar o município de ocorrência do fato gerador do ISSQN. Utilizar a Tabela do IBGE (Anexo VII - Tabela de UF, Município e País). “Atenção, não vincular com os campos B12, C10 ou E10” v2.0 + + + + + Informar o Item da lista de serviços da LC 116/03 em que se classifica o serviço. + + + + + Valor dedução para redução da base de cálculo + + + + + Valor outras retenções + + + + + Valor desconto incondicionado + + + + + Valor desconto condicionado + + + + + Valor Retenção ISS + + + + + Exibilidade do ISS:1-Exigível;2-Não incidente;3-Isenção;4-Exportação;5-Imunidade;6-Exig.Susp. Judicial;7-Exig.Susp. ADM + + + + + + + + + + + + + + + + + Código do serviço prestado dentro do município + + + + + + + + + + + + Código do Município de Incidência do Imposto + + + + + Código de Pais + + + + + + + + + + + Número do Processo administrativo ou judicial de suspenção do processo + + + + + + + + + + + + Indicador de Incentivo Fiscal. 1=Sim; 2=Não + + + + + + + + + + + + + + + + + Dados do PIS + + + + + + Código de Situação Tributária do PIS. + 01 – Operação Tributável - Base de Cálculo = Valor da Operação Alíquota Normal (Cumulativo/Não Cumulativo); +02 - Operação Tributável - Base de Calculo = Valor da Operação (Alíquota Diferenciada); + + + + + + Código de Situação Tributária do PIS. + 01 – Operação Tributável - Base de Cálculo = Valor da Operação Alíquota Normal (Cumulativo/Não Cumulativo); +02 - Operação Tributável - Base de Calculo = Valor da Operação (Alíquota Diferenciada); + + + + + + + + + + + + Valor da BC do PIS + + + + + Alíquota do PIS (em percentual) + + + + + Valor do PIS + + + + + + + + Código de Situação Tributária do PIS. +03 - Operação Tributável - Base de Calculo = Quantidade Vendida x Alíquota por Unidade de Produto; + + + + + + Código de Situação Tributária do PIS. +03 - Operação Tributável - Base de Calculo = Quantidade Vendida x Alíquota por Unidade de Produto; + + + + + + + + + + + Quantidade Vendida (NT2011/004) + + + + + Alíquota do PIS (em reais) (NT2011/004) + + + + + Valor do PIS + + + + + + + + Código de Situação Tributária do PIS. +04 - Operação Tributável - Tributação Monofásica - (Alíquota Zero); +06 - Operação Tributável - Alíquota Zero; +07 - Operação Isenta da contribuição; +08 - Operação Sem Incidência da contribuição; +09 - Operação com suspensão da contribuição; + + + + + + Código de Situação Tributária do PIS. +04 - Operação Tributável - Tributação Monofásica - (Alíquota Zero); +05 - Operação Tributável (ST); +06 - Operação Tributável - Alíquota Zero; +07 - Operação Isenta da contribuição; +08 - Operação Sem Incidência da contribuição; +09 - Operação com suspensão da contribuição; + + + + + + + + + + + + + + + + + + + Código de Situação Tributária do PIS. +99 - Outras Operações. + + + + + + Código de Situação Tributária do PIS. +99 - Outras Operações. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Valor da BC do PIS + + + + + Alíquota do PIS (em percentual) + + + + + + + Quantidade Vendida (NT2011/004) + + + + + Alíquota do PIS (em reais) (NT2011/004) + + + + + + + Valor do PIS + + + + + + + + + + + Dados do PIS Substituição Tributária + + + + + + + + Valor da BC do PIS ST + + + + + Alíquota do PIS ST (em percentual) + + + + + + + Quantidade Vendida + + + + + Alíquota do PIS ST (em reais) + + + + + + + Valor do PIS ST + + + + + + + + Dados do COFINS + + + + + + Código de Situação Tributária do COFINS. + 01 – Operação Tributável - Base de Cálculo = Valor da Operação Alíquota Normal (Cumulativo/Não Cumulativo); +02 - Operação Tributável - Base de Calculo = Valor da Operação (Alíquota Diferenciada); + + + + + + Código de Situação Tributária do COFINS. + 01 – Operação Tributável - Base de Cálculo = Valor da Operação Alíquota Normal (Cumulativo/Não Cumulativo); +02 - Operação Tributável - Base de Calculo = Valor da Operação (Alíquota Diferenciada); + + + + + + + + + + + + Valor da BC do COFINS + + + + + Alíquota do COFINS (em percentual) + + + + + Valor do COFINS + + + + + + + + Código de Situação Tributária do COFINS. +03 - Operação Tributável - Base de Calculo = Quantidade Vendida x Alíquota por Unidade de Produto; + + + + + + Código de Situação Tributária do COFINS. +03 - Operação Tributável - Base de Calculo = Quantidade Vendida x Alíquota por Unidade de Produto; + + + + + + + + + + Quantidade Vendida (NT2011/004) + + + + + Alíquota do COFINS (em reais) (NT2011/004) + + + + + Valor do COFINS + + + + + + + + Código de Situação Tributária do COFINS: +04 - Operação Tributável - Tributação Monofásica - (Alíquota Zero); +06 - Operação Tributável - Alíquota Zero; +07 - Operação Isenta da contribuição; +08 - Operação Sem Incidência da contribuição; +09 - Operação com suspensão da contribuição; + + + + + + Código de Situação Tributária do COFINS: +04 - Operação Tributável - Tributação Monofásica - (Alíquota Zero); +05 - Operação Tributável (ST); +06 - Operação Tributável - Alíquota Zero; +07 - Operação Isenta da contribuição; +08 - Operação Sem Incidência da contribuição; +09 - Operação com suspensão da contribuição; + + + + + + + + + + + + + + + + + + + Código de Situação Tributária do COFINS: +49 - Outras Operações de Saída +50 - Operação com Direito a Crédito - Vinculada Exclusivamente a Receita Tributada no Mercado Interno +51 - Operação com Direito a Crédito – Vinculada Exclusivamente a Receita Não Tributada no Mercado Interno +52 - Operação com Direito a Crédito - Vinculada Exclusivamente a Receita de Exportação +53 - Operação com Direito a Crédito - Vinculada a Receitas Tributadas e Não-Tributadas no Mercado Interno +54 - Operação com Direito a Crédito - Vinculada a Receitas Tributadas no Mercado Interno e de Exportação +55 - Operação com Direito a Crédito - Vinculada a Receitas Não-Tributadas no Mercado Interno e de Exportação +56 - Operação com Direito a Crédito - Vinculada a Receitas Tributadas e Não-Tributadas no Mercado Interno, e de Exportação +60 - Crédito Presumido - Operação de Aquisição Vinculada Exclusivamente a Receita Tributada no Mercado Interno +61 - Crédito Presumido - Operação de Aquisição Vinculada Exclusivamente a Receita Não-Tributada no Mercado Interno +62 - Crédito Presumido - Operação de Aquisição Vinculada Exclusivamente a Receita de Exportação +63 - Crédito Presumido - Operação de Aquisição Vinculada a Receitas Tributadas e Não-Tributadas no Mercado Interno +64 - Crédito Presumido - Operação de Aquisição Vinculada a Receitas Tributadas no Mercado Interno e de Exportação +65 - Crédito Presumido - Operação de Aquisição Vinculada a Receitas Não-Tributadas no Mercado Interno e de Exportação +66 - Crédito Presumido - Operação de Aquisição Vinculada a Receitas Tributadas e Não-Tributadas no Mercado Interno, e de Exportação +67 - Crédito Presumido - Outras Operações +70 - Operação de Aquisição sem Direito a Crédito +71 - Operação de Aquisição com Isenção +72 - Operação de Aquisição com Suspensão +73 - Operação de Aquisição a Alíquota Zero +74 - Operação de Aquisição sem Incidência da Contribuição +75 - Operação de Aquisição por Substituição Tributária +98 - Outras Operações de Entrada +99 - Outras Operações. + + + + + + Código de Situação Tributária do COFINS: +49 - Outras Operações de Saída +50 - Operação com Direito a Crédito - Vinculada Exclusivamente a Receita Tributada no Mercado Interno +51 - Operação com Direito a Crédito – Vinculada Exclusivamente a Receita Não Tributada no Mercado Interno +52 - Operação com Direito a Crédito - Vinculada Exclusivamente a Receita de Exportação +53 - Operação com Direito a Crédito - Vinculada a Receitas Tributadas e Não-Tributadas no Mercado Interno +54 - Operação com Direito a Crédito - Vinculada a Receitas Tributadas no Mercado Interno e de Exportação +55 - Operação com Direito a Crédito - Vinculada a Receitas Não-Tributadas no Mercado Interno e de Exportação +56 - Operação com Direito a Crédito - Vinculada a Receitas Tributadas e Não-Tributadas no Mercado Interno, e de Exportação +60 - Crédito Presumido - Operação de Aquisição Vinculada Exclusivamente a Receita Tributada no Mercado Interno +61 - Crédito Presumido - Operação de Aquisição Vinculada Exclusivamente a Receita Não-Tributada no Mercado Interno +62 - Crédito Presumido - Operação de Aquisição Vinculada Exclusivamente a Receita de Exportação +63 - Crédito Presumido - Operação de Aquisição Vinculada a Receitas Tributadas e Não-Tributadas no Mercado Interno +64 - Crédito Presumido - Operação de Aquisição Vinculada a Receitas Tributadas no Mercado Interno e de Exportação +65 - Crédito Presumido - Operação de Aquisição Vinculada a Receitas Não-Tributadas no Mercado Interno e de Exportação +66 - Crédito Presumido - Operação de Aquisição Vinculada a Receitas Tributadas e Não-Tributadas no Mercado Interno, e de Exportação +67 - Crédito Presumido - Outras Operações +70 - Operação de Aquisição sem Direito a Crédito +71 - Operação de Aquisição com Isenção +72 - Operação de Aquisição com Suspensão +73 - Operação de Aquisição a Alíquota Zero +74 - Operação de Aquisição sem Incidência da Contribuição +75 - Operação de Aquisição por Substituição Tributária +98 - Outras Operações de Entrada +99 - Outras Operações. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Valor da BC do COFINS + + + + + Alíquota do COFINS (em percentual) + + + + + + + Quantidade Vendida (NT2011/004) + + + + + Alíquota do COFINS (em reais) (NT2011/004) + + + + + + + Valor do COFINS + + + + + + + + + + + Dados do COFINS da +Substituição Tributaria; + + + + + + + + Valor da BC do COFINS ST + + + + + Alíquota do COFINS ST(em percentual) + + + + + + + Quantidade Vendida + + + + + Alíquota do COFINS ST(em reais) + + + + + + + Valor do COFINS ST + + + + + + + + Grupo a ser informado nas vendas interestarduais para consumidor final, não contribuinte de ICMS + + + + + + Valor da Base de Cálculo do ICMS na UF do destinatário. + + + + + Valor da Base de Cálculo do FCP na UF do destinatário. + + + + + Percentual adicional inserido na alíquota interna da UF de destino, relativo ao Fundo de Combate à Pobreza (FCP) naquela UF. + + + + + Alíquota adotada nas operações internas na UF do destinatário para o produto / mercadoria. + + + + + Alíquota interestadual das UF envolvidas: - 4% alíquota interestadual para produtos importados; - 7% para os Estados de origem do Sul e Sudeste (exceto ES), destinado para os Estados do Norte e Nordeste ou ES; - 12% para os demais casos. + + + + + + + + + + + + + Percentual de partilha para a UF do destinatário: - 40% em 2016; - 60% em 2017; - 80% em 2018; - 100% a partir de 2019. + + + + + Valor do ICMS relativo ao Fundo de Combate à Pobreza (FCP) da UF de destino. + + + + + Valor do ICMS de partilha para a UF do destinatário. + + + + + Valor do ICMS de partilha para a UF do remetente. Nota: A partir de 2019, este valor será zero. + + + + + + + + + + + + + + Percentual de mercadoria devolvida + + + + + Informação de IPI devolvido + + + + + + Valor do IPI devolvido + + + + + + + + + + + Informações adicionais do produto (norma referenciada, informações complementares, etc) + + + + + + + + + + + + Número do item do NF + + + + + + + + + + + + + Dados dos totais da NF-e + + + + + + Totais referentes ao ICMS + + + + + + BC do ICMS + + + + + Valor Total do ICMS + + + + + Valor Total do ICMS desonerado + + + + + Valor total do ICMS relativo ao Fundo de Combate à Pobreza (FCP) para a UF de destino. + + + + + Valor total do ICMS de partilha para a UF do destinatário + + + + + Valor total do ICMS de partilha para a UF do remetente + + + + + Valor Total do FCP (Fundo de Combate à Pobreza). + + + + + BC do ICMS ST + + + + + Valor Total do ICMS ST + + + + + Valor Total do FCP (Fundo de Combate à Pobreza) retido por substituição tributária. + + + + + Valor Total do FCP (Fundo de Combate à Pobreza) retido anteriormente por substituição tributária. + + + + + Valor Total dos produtos e serviços + + + + + Valor Total do Frete + + + + + Valor Total do Seguro + + + + + Valor Total do Desconto + + + + + Valor Total do II + + + + + Valor Total do IPI + + + + + Valor Total do IPI devolvido. Deve ser informado quando preenchido o Grupo Tributos Devolvidos na emissão de nota finNFe=4 (devolução) nas operações com não contribuintes do IPI. Corresponde ao total da soma dos campos id: UA04. + + + + + Valor do PIS + + + + + Valor do COFINS + + + + + Outras Despesas acessórias + + + + + Valor Total da NF-e + + + + + Valor estimado total de impostos federais, estaduais e municipais + + + + + + + + Totais referentes ao ISSQN + + + + + + Valor Total dos Serviços sob não-incidência ou não tributados pelo ICMS + + + + + Base de Cálculo do ISS + + + + + Valor Total do ISS + + + + + Valor do PIS sobre serviços + + + + + Valor do COFINS sobre serviços + + + + + Data da prestação do serviço (AAAA-MM-DD) + + + + + Valor dedução para redução da base de cálculo + + + + + Valor outras retenções + + + + + Valor desconto incondicionado + + + + + Valor desconto condicionado + + + + + Valor Total Retenção ISS + + + + + Código do regime especial de tributação + + + + + + + + + + + + + + + + + + + Retenção de Tributos Federais + + + + + + Valor Retido de PIS + + + + + Valor Retido de COFINS + + + + + Valor Retido de CSLL + + + + + Base de Cálculo do IRRF + + + + + Valor Retido de IRRF + + + + + Base de Cálculo da Retenção da Previdêncica Social + + + + + Valor da Retenção da Previdêncica Social + + + + + + + + + + + Dados dos transportes da NF-e + + + + + + Modalidade do frete +0- Contratação do Frete por conta do Remetente (CIF); +1- Contratação do Frete por conta do destinatário/remetente (FOB); +2- Contratação do Frete por conta de terceiros; +3- Transporte próprio por conta do remetente; +4- Transporte próprio por conta do destinatário; +9- Sem Ocorrência de transporte. + + + + + + + + + + + + + + + + Dados do transportador + + + + + + + CNPJ do transportador + + + + + CPF do transportador + + + + + + Razão Social ou nome do transportador + + + + + + + + + + + Inscrição Estadual (v2.0) + + + + + Endereço completo + + + + + + + + + + + Nome do munícipio + + + + + + + + + + + Sigla da UF + + + + + + + + Dados da retenção ICMS do Transporte + + + + + + Valor do Serviço + + + + + BC da Retenção do ICMS + + + + + Alíquota da Retenção + + + + + Valor do ICMS Retido + + + + + Código Fiscal de Operações e Prestações + + + + + + + + + + + Código do Município de Ocorrência do Fato Gerador (utilizar a tabela do IBGE) + + + + + + + + + + Dados do veículo + + + + + Dados do reboque/Dolly (v2.0) + + + + + + Identificação do vagão (v2.0) + + + + + + + + + + + Identificação da balsa (v2.0) + + + + + + + + + + + + Dados dos volumes + + + + + + Quantidade de volumes transportados + + + + + + + + + + + Espécie dos volumes transportados + + + + + + + + + + + Marca dos volumes transportados + + + + + + + + + + + Numeração dos volumes transportados + + + + + + + + + + + Peso líquido (em kg) + + + + + Peso bruto (em kg) + + + + + + + + Número dos Lacres + + + + + + + + + + + + + + + + + + + + Dados da cobrança da NF-e + + + + + + Dados da fatura + + + + + + Número da fatura + + + + + + + + + + + Valor original da fatura + + + + + Valor do desconto da fatura + + + + + Valor líquido da fatura + + + + + + + + Dados das duplicatas NT 2011/004 + + + + + + Número da duplicata + + + + + + + + + + + Data de vencimento da duplicata (AAAA-MM-DD) + + + + + Valor da duplicata + + + + + + + + + + + Dados de Pagamento. Obrigatório apenas para (NFC-e) NT 2012/004 + + + + + + Grupo de detalhamento da forma de pagamento. + + + + + + Indicador da Forma de Pagamento:0-Pagamento à Vista;1-Pagamento à Prazo; + + + + + + + + + + + + Forma de Pagamento:01-Dinheiro;02-Cheque;03-Cartão de Crédito;04-Cartão de Débito;05-Crédito Loja;10-Vale Alimentação;11-Vale Refeição;12-Vale Presente;13-Vale Combustível;14 - Duplicata Mercantil;15 - Boleto Bancario;90 - Sem Pagamento;99 - Outros + + + + + + + + + + + + + + + + + + + + + + + Valor do Pagamento. Esta tag poderá ser omitida quando a tag tPag=90 (Sem Pagamento), caso contrário deverá ser preenchida. + + + + + Grupo de Cartões + + + + + + Tipo de Integração do processo de pagamento com o sistema de automação da empresa/ + 1=Pagamento integrado com o sistema de automação da empresa Ex. equipamento TEF , Comercio Eletronico + 2=Pagamento não integrado com o sistema de automação da empresa Ex: equipamento POS + + + + + + + + + + + + CNPJ da credenciadora de cartão de crédito/débito + + + + + Bandeira da operadora de cartão de crédito/débito:01–Visa; 02–Mastercard; 03–American Express; 04–Sorocred;05-Diners Club;06-Elo;07-Hipercard;08-Aura;09-Cabal;99–Outros + + + + + + + + + + + + + + + + + + + + Número de autorização da operação cartão de crédito/débito + + + + + + + + + + + + + + + + + Valor do Troco. + + + + + + + + Informações adicionais da NF-e + + + + + + Informações adicionais de interesse do Fisco (v2.0) + + + + + + + + + + + Informações complementares de interesse do Contribuinte + + + + + + + + + + + Campo de uso livre do contribuinte +informar o nome do campo no atributo xCampo +e o conteúdo do campo no xTexto + + + + + + + + + + + + + + + + + + + + + + + + + Campo de uso exclusivo do Fisco +informar o nome do campo no atributo xCampo +e o conteúdo do campo no xTexto + + + + + + + + + + + + + + + + + + + + + + + + + Grupo de informações do processo referenciado + + + + + + Indentificador do processo ou ato +concessório + + + + + + + + + + + Origem do processo, informar com: +0 - SEFAZ; +1 - Justiça Federal; +2 - Justiça Estadual; +3 - Secex/RFB; +9 - Outros + + + + + + + + + + + + + + + + + + + + + Informações de exportação + + + + + + Sigla da UF de Embarque ou de transposição de fronteira + + + + + Local de Embarque ou de transposição de fronteira + + + + + + + + + + + Descrição do local de despacho + + + + + + + + + + + + + + Informações de compras (Nota de Empenho, Pedido e Contrato) + + + + + + Informação da Nota de Empenho de compras públicas (NT2011/004) + + + + + + + + + + + Informação do pedido + + + + + + + + + + + Informação do contrato + + + + + + + + + + + + + + Informações de registro aquisições de cana + + + + + + Identificação da safra + + + + + + + + + + + Mês e Ano de Referência, formato: MM/AAAA + + + + + + + + + + + Fornecimentos diários + + + + + + Quantidade em quilogramas - peso líquido + + + + + + Número do dia + + + + + + + + + + + + + + + + + Total do mês + + + + + Total Anterior + + + + + Total Geral + + + + + Deduções - Taxas e Contribuições + + + + + + Descrição da Dedução + + + + + + + + + + + valor da dedução + + + + + + + + Valor dos fornecimentos + + + + + Valor Total das Deduções + + + + + Valor Líquido dos fornecimentos + + + + + + + + + Versão do leiaute (v4.00) + + + + + PL_005d - 11/08/09 - validação do Id + + + + + + + + + + + + + + + + Informações suplementares Nota Fiscal + + + + + + Texto com o QR-Code impresso 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. + + + + + + + + + + + + + + + + + Tipo Protocolo de status resultado do processamento da NF-e + + + + + Dados do protocolo de status + + + + + + Identificação do Ambiente: +1 - Produção +2 - Homologação + + + + + Versão do Aplicativo que processou a NF-e + + + + + Chaves de acesso da NF-e, compostas por: UF do emitente, AAMM da emissão da NFe, CNPJ do emitente, modelo, série e número da NF-e e código numérico+DV. + + + + + Data e hora de processamento, no formato AAAA-MM-DDTHH:MM:SSTZD. Deve ser preenchida com data e hora da gravação no Banco em caso de Confirmação. Em caso de Rejeição, com data e hora do recebimento do Lote de NF-e enviado. + + + + + Número do Protocolo de Status da NF-e. 1 posição (1 – Secretaria de Fazenda Estadual 2 – Receita Federal); 2 - códiga da UF - 2 posições ano; 10 seqüencial no ano. + + + + + Digest Value da NF-e processada. Utilizado para conferir a integridade da NF-e original. + + + + + Código do status da mensagem enviada. + + + + + Descrição literal do status do serviço solicitado. + + + + + + + + + + + + + Tipo Pedido de Concessão de Autorização da Nota Fiscal Eletrônica + + + + + + Indicador de processamento síncrono. 0=NÃO; 1=SIM=Síncrono + + + + + + + + + + + + + + + + Tipo Retorno do Pedido de Autorização da Nota Fiscal Eletrônica + + + + + Identificação do Ambiente: +1 - Produção +2 - Homologação + + + + + Versão do Aplicativo que recebeu o Lote. + + + + + Código do status da mensagem enviada. + + + + + Descrição literal do status do serviço solicitado. + + + + + código da UF de atendimento + + + + + Data e hora do recebimento, no formato AAAA-MM-DDTHH:MM:SSTZD + + + + + + Dados do Recibo do Lote + + + + + + Número do Recibo + + + + + Tempo médio de resposta do serviço (em segundos) dos últimos 5 minutos + + + + + + + + Protocolo de status resultado do processamento sincrono da NFC-e + + + + + + + + + Tipo Pedido de Consulta do Recido do Lote de Notas Fiscais Eletrônicas + + + + + Identificação do Ambiente: +1 - Produção +2 - Homologação + + + + + Número do Recibo + + + + + + + + Tipo Retorno do Pedido de Consulta do Recido do Lote de Notas Fiscais Eletrônicas + + + + + Identificação do Ambiente: +1 - Produção +2 - Homologação + + + + + Versão do Aplicativo que processou a NF-e + + + + + Número do Recibo Consultado + + + + + Código do status da mensagem enviada. + + + + + Descrição literal do status do serviço solicitado. + + + + + código da UF de atendimento + + + + + Data e hora de processamento, no formato AAAA-MM-DDTHH:MM:SSTZD. Em caso de Rejeição, com data e hora do recebimento do Lote de NF-e enviado. + + + + + + Código da Mensagem (v2.0) +alterado para tamanho variavel 1-4. (NT2011/004) + + + + + + + + + + + Mensagem da SEFAZ para o emissor. (v2.0) + + + + + + + + + + + + Protocolo de status resultado do processamento da NF-e + + + + + + + + Tipo da NF-e processada + + + + + + + + + + Tipo Dados do Endereço // 24/10/08 - tamanho mínimo + + + + + Logradouro + + + + + + + + + + + Número + + + + + + + + + + + Complemento + + + + + + + + + + + Bairro + + + + + + + + + + + Código do município (utilizar a tabela do IBGE), informar 9999999 para operações com o exterior. + + + + + Nome do município, informar EXTERIOR para operações com o exterior. + + + + + + + + + + + Sigla da UF, informar EX para operações com o exterior. + + + + + CEP + + + + + + + + + + + Código de Pais + + + + + + + + + + + Nome do país + + + + + + + + + + + Telefone, preencher com Código DDD + número do telefone , nas operações com exterior é permtido informar o código do país + código da localidade + número do telefone + + + + + + + + + + + + + Tipo Dados do Endereço do Emitente // 24/10/08 - desmembrado / tamanho mínimo + + + + + Logradouro + + + + + + + + + + + Número + + + + + + + + + + + Complemento + + + + + + + + + + + Bairro + + + + + + + + + + + Código do município + + + + + Nome do município + + + + + + + + + + + Sigla da UF + + + + + CEP - NT 2011/004 + + + + + + + + + + + Código do país + + + + + + + + + + Nome do país + + + + + + + + + + + Preencher com Código DDD + número do telefone (v.2.0) + + + + + + + + + + + + + Tipo Dados do Local de Retirada ou Entrega // 24/10/08 - tamanho mínimo // v2.0 + + + + + + CNPJ + + + + + CPF (v2.0) + + + + + + Logradouro + + + + + + + + + + + Número + + + + + + + + + + + Complemento + + + + + + + + + + + Bairro + + + + + + + + + + + Código do município (utilizar a tabela do IBGE) + + + + + Nome do município + + + + + + + + + + + Sigla da UF + + + + + + + Tipo Dados do Veículo + + + + + Placa do veículo (NT2011/004) + + + + + + + + + + + Sigla da UF + + + + + Registro Nacional de Transportador de Carga (ANTT) + + + + + + + + + + + + + Tipo Origem da mercadoria CST ICMS origem da mercadoria: 0-Nacional exceto as indicadas nos códigos 3, 4, 5 e 8; +1-Estrangeira - Importação direta; 2-Estrangeira - Adquirida no mercado interno; 3-Nacional, conteudo superior 40% e inferior ou igual a 70%; 4-Nacional, processos produtivos básicos; 5-Nacional, conteudo inferior 40%; 6-Estrangeira - Importação direta, com similar nacional, lista CAMEX; 7-Estrangeira - mercado interno, sem simular,lista CAMEX;8-Nacional, Conteúdo de Importação superior a 70%. + + + + + + + + + + + + + + + + + Tipo Finalidade da NF-e (1=Normal; 2=Complementar; 3=Ajuste; 4=Devolução/Retorno) + + + + + + + + + + + + Tipo processo de emissão da NF-e + + + + + + + + + + + + Tipo Código da Lista de Serviços LC 116/2003 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Tipo Identificação de Lote + + + + + + + + + Tipo Versão da NF-e - 4.00 + + + + + + + + + Identificador único (Globally Unique Identifier) + + + + + + + + + Tipo: Dados do IPI + + + + + CNPJ do produtor da mercadoria, quando diferente do emitente. Somente para os casos de exportação direta ou indireta. + + + + + Código do selo de controle do IPI + + + + + + + + + + + Quantidade de selo de controle do IPI + + + + + + + + + + + Código de Enquadramento Legal do IPI (tabela a ser criada pela RFB) + + + + + + + + + + + + + + + Código da Situação Tributária do IPI: +00-Entrada com recuperação de crédito +49 - Outras entradas +50-Saída tributada +99-Outras saídas + + + + + + + + + + + + + + + + Valor da BC do IPI + + + + + Alíquota do IPI + + + + + + + Quantidade total na unidade padrão para tributação + + + + + Valor por Unidade Tributável. Informar o valor do imposto Pauta por unidade de medida. + + + + + + + Valor do IPI + + + + + + + + + + + Código da Situação Tributária do IPI: +01-Entrada tributada com alíquota zero +02-Entrada isenta +03-Entrada não-tributada +04-Entrada imune +05-Entrada com suspensão +51-Saída tributada com alíquota zero +52-Saída isenta +53-Saída não-tributada +54-Saída imune +55-Saída com suspensão + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/pysped/nfe/leiaute/schema/pl_009_v4b/nfe_v4.00.xsd b/pysped/nfe/leiaute/schema/pl_009_v4b/nfe_v4.00.xsd new file mode 100644 index 00000000..4fe917ae --- /dev/null +++ b/pysped/nfe/leiaute/schema/pl_009_v4b/nfe_v4.00.xsd @@ -0,0 +1,9 @@ + + + + + + Nota Fiscal Eletrônica + + + diff --git a/pysped/nfe/leiaute/schema/pl_009_v4b/procInutNFe_v4.00.xsd b/pysped/nfe/leiaute/schema/pl_009_v4b/procInutNFe_v4.00.xsd new file mode 100644 index 00000000..ee34246e --- /dev/null +++ b/pysped/nfe/leiaute/schema/pl_009_v4b/procInutNFe_v4.00.xsd @@ -0,0 +1,9 @@ + + + + + + Pedido de inutilização de númeração de NF-e processado + + + diff --git a/pysped/nfe/leiaute/schema/pl_009_v4b/procNFe_v4.00.xsd b/pysped/nfe/leiaute/schema/pl_009_v4b/procNFe_v4.00.xsd new file mode 100644 index 00000000..def67978 --- /dev/null +++ b/pysped/nfe/leiaute/schema/pl_009_v4b/procNFe_v4.00.xsd @@ -0,0 +1,9 @@ + + + + + + NF-e processada + + + diff --git a/pysped/nfe/leiaute/schema/pl_009_v4b/retConsReciNFe_v4.00.xsd b/pysped/nfe/leiaute/schema/pl_009_v4b/retConsReciNFe_v4.00.xsd new file mode 100644 index 00000000..dfa9246c --- /dev/null +++ b/pysped/nfe/leiaute/schema/pl_009_v4b/retConsReciNFe_v4.00.xsd @@ -0,0 +1,9 @@ + + + + + + Schema XML de validação do retorno do Pedido de Consulta do Recido do Lote de Notas Fiscais Eletrônicas + + + diff --git a/pysped/nfe/leiaute/schema/pl_009_v4b/retConsSitNFe_v4.00.xsd b/pysped/nfe/leiaute/schema/pl_009_v4b/retConsSitNFe_v4.00.xsd new file mode 100644 index 00000000..2681808c --- /dev/null +++ b/pysped/nfe/leiaute/schema/pl_009_v4b/retConsSitNFe_v4.00.xsd @@ -0,0 +1,9 @@ + + + + + + Schema XML de validação do retorno da consulta da situação atual da NF-e + + + diff --git a/pysped/nfe/leiaute/schema/pl_009_v4b/retConsStatServ_v4.00.xsd b/pysped/nfe/leiaute/schema/pl_009_v4b/retConsStatServ_v4.00.xsd new file mode 100644 index 00000000..318e0f14 --- /dev/null +++ b/pysped/nfe/leiaute/schema/pl_009_v4b/retConsStatServ_v4.00.xsd @@ -0,0 +1,9 @@ + + + + + + Schema XML de validação do Resultado da Consulta do Status do Serviço + + + diff --git a/pysped/nfe/leiaute/schema/pl_009_v4b/retEnviNFe_v4.00.xsd b/pysped/nfe/leiaute/schema/pl_009_v4b/retEnviNFe_v4.00.xsd new file mode 100644 index 00000000..2d1a5361 --- /dev/null +++ b/pysped/nfe/leiaute/schema/pl_009_v4b/retEnviNFe_v4.00.xsd @@ -0,0 +1,9 @@ + + + + + + Schema XML de validação do retorno do Pedido de Concessão de Autorização da Nota Fiscal Eletrônica + + + diff --git a/pysped/nfe/leiaute/schema/pl_009_v4b/retInutNFe_v4.00.xsd b/pysped/nfe/leiaute/schema/pl_009_v4b/retInutNFe_v4.00.xsd new file mode 100644 index 00000000..3d91a9b0 --- /dev/null +++ b/pysped/nfe/leiaute/schema/pl_009_v4b/retInutNFe_v4.00.xsd @@ -0,0 +1,9 @@ + + + + + + Schema XML de validação do retorno do Pedido de Inutilização de Numeração da Nota Fiscal Eletrônica + + + diff --git a/pysped/nfe/leiaute/schema/pl_009_v4b/tiposBasico_v4.00.xsd b/pysped/nfe/leiaute/schema/pl_009_v4b/tiposBasico_v4.00.xsd new file mode 100644 index 00000000..dc7aaf56 --- /dev/null +++ b/pysped/nfe/leiaute/schema/pl_009_v4b/tiposBasico_v4.00.xsd @@ -0,0 +1,589 @@ + + + + + + Tipo Código da UF da tabela do IBGE + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Tipo Código do Município da tabela do IBGE + + + + + + + + + Tipo Chave da Nota Fiscal Eletrônica + + + + + + + + + + Tipo Número do Protocolo de Status + + + + + + + + + + Tipo Número do Recibo do envio de lote de NF-e + + + + + + + + + + Tipo Código da Mensagem enviada + + + + + + + + + + Tipo Número do CNPJ + + + + + + + + + + Tipo Número do CNPJ tmanho varíavel (3-14) + + + + + + + + + + Tipo Número do CNPJ Opcional + + + + + + + + + + Tipo Número do CPF + + + + + + + + + + Tipo Número do CPF de tamanho variável (3-11) + + + + + + + + + + Tipo Decimal com até 1 dígitos inteiros, podendo ter de 1 até 4 decimais + + + + + + + + + Tipo Decimal com até 2 dígitos inteiros, podendo ter de 1 até 4 decimais + + + + + + + + + Tipo Decimal com até 3 dígitos inteiros, podendo ter de 2 até 4 decimais + + + + + + + + + Tipo Decimal com até 3 dígitos inteiros e 2 até 4 decimais. Utilizados em TAGs opcionais, não aceita valor zero. + + + + + + + + + Tipo Decimal com 3 inteiros (no máximo 100), com 2 decimais + + + + + + + + + Tipo Decimal com 3 inteiros (no máximo 100), com 4 decimais + + + + + + + + + Tipo Decimal com 3 inteiros (no máximo 100), com até 4 decimais + + + + + + + + + Tipo Decimal com 8 inteiros, podendo ter de 1 até 3 decimais + + + + + + + + + Tipo Decimal com 11 inteiros, podendo ter 4 decimais + + + + + + + + + Tipo Decimal com 11 inteiros, podendo ter de 1 até 4 decimais + + + + + + + + + Tipo Decimal com 11 inteiros, podendo ter 4 decimais (utilizado em tags opcionais) + + + + + + + + + Tipo Decimal com 11 inteiros, podendo ter de 1 até 10 decimais + + + + + + + + + Tipo Decimal com 12 inteiros, podendo ter 3 decimais + + + + + + + + + Tipo Decimal com 12 inteiros e 4 decimais + + + + + + + + + Tipo Decimal com 12 inteiros de 1 até 4 decimais + + + + + + + + + Tipo Decimal com 12 inteiros com 1 até 4 decimais + + + + + + + + + Tipo Decimal com 12 inteiros, 1 a 4 decimais + + + + + + + + + Tipo Decimal com 15 dígitos, sendo 13 de corpo e 2 decimais + + + + + + + + + Tipo Decimal com 15 dígitos, sendo 13 de corpo e 2 decimais, utilizado em tags opcionais + + + + + + + + + Tipo Inscrição Estadual do Destinatário // alterado para aceitar vazio ou ISENTO - maio/2010 v2.0 + + + + + + + + + + Tipo Inscrição Estadual do Destinatário // alterado para aceitar vazio ou ISENTO - maio/2010 v2.0 + + + + + + + + + + Tipo Inscrição Estadual do ST // acrescentado EM 24/10/08 + + + + + + + + + + Tipo Inscrição Estadual do Emitente // alterado EM 24/10/08 para aceitar ISENTO + + + + + + + + + + Tipo Modelo Documento Fiscal + + + + + + + + + + Tipo Número do Documento Fiscal + + + + + + + + + Tipo Série do Documento Fiscal + + + + + + + + + Tipo Sigla da UF + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Tipo Sigla da UF de emissor // acrescentado em 24/10/08 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Tipo Ambiente + + + + + + + + + + Tipo Versão do Aplicativo + + + + + + + + + Tipo Motivo + + + + + + + + + Tipo Justificativa + + + + + + + + + Tipo Serviço solicitado + + + + + + Tipo ano + + + + + + + + + Tipo temp médio em segundos + + + + + + + + + Tipo string genérico + + + + + + + + + Tipo data AAAA-MM-DD + + + + + + + + + Tipo hora HH:MM:SS // tipo acrescentado na v2.0 + + + + + + + + + Data e Hora, formato UTC (AAAA-MM-DDThh:mm:ssTZD, onde TZD = +hh:mm ou -hh:mm) + + + + + + + + + + + + + + + Tipo Código de orgão (UF da tabela do IBGE + 90 RFB) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/pysped/nfe/leiaute/schema/pl_009_v4b/xmldsig-core-schema_v1.01.xsd b/pysped/nfe/leiaute/schema/pl_009_v4b/xmldsig-core-schema_v1.01.xsd new file mode 100644 index 00000000..f7dc8dc6 --- /dev/null +++ b/pysped/nfe/leiaute/schema/pl_009_v4b/xmldsig-core-schema_v1.01.xsd @@ -0,0 +1,98 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file From 2508e2336ccb5814606b25e9b998cdf11eefb031 Mon Sep 17 00:00:00 2001 From: Magno Date: Fri, 20 Jul 2018 14:57:31 -0300 Subject: [PATCH 21/34] =?UTF-8?q?Altera=C3=A7=C3=A3o=20do=20XSD=20devido?= =?UTF-8?q?=20a=20um=20problema=20causado=20por=20alguma=20biblioteca(=20a?= =?UTF-8?q?inda=20n=C3=A3o=20identifiquei=20)=20responsavel=20por=20ler=20?= =?UTF-8?q?as=20regras=20dos=20campos.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pysped/nfe/leiaute/schema/pl_009_v4b/tiposBasico_v4.00.xsd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pysped/nfe/leiaute/schema/pl_009_v4b/tiposBasico_v4.00.xsd b/pysped/nfe/leiaute/schema/pl_009_v4b/tiposBasico_v4.00.xsd index dc7aaf56..b5865115 100644 --- a/pysped/nfe/leiaute/schema/pl_009_v4b/tiposBasico_v4.00.xsd +++ b/pysped/nfe/leiaute/schema/pl_009_v4b/tiposBasico_v4.00.xsd @@ -512,7 +512,7 @@ - + From a853514f87a6636d727fb2dde2834349868b90db Mon Sep 17 00:00:00 2001 From: Ari Caldeira Date: Thu, 28 Jun 2018 11:51:20 -0300 Subject: [PATCH 22/34] =?UTF-8?q?[FEA]=20Adapta=C3=A7=C3=A3o=20do=20envelo?= =?UTF-8?q?pe=20para=20n=C3=A3o=20mandar=20mais=20o=20header?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pysped/nfe/leiaute/soap_200.py | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/pysped/nfe/leiaute/soap_200.py b/pysped/nfe/leiaute/soap_200.py index dff5e8c3..f8ff4999 100644 --- a/pysped/nfe/leiaute/soap_200.py +++ b/pysped/nfe/leiaute/soap_200.py @@ -126,9 +126,14 @@ def get_xml(self): xml = XMLNFe.get_xml(self) xml += ABERTURA xml += '' - xml += '' - xml += self.nfeCabecMsg.xml - xml += '' + + if self.versao < '4.00': + xml += '' + xml += self.nfeCabecMsg.xml + xml += '' + else: + xml += '' + xml += '' xml += self.nfeDadosMsg.xml xml += '' @@ -141,6 +146,11 @@ def set_xml(self): xml = property(get_xml, set_xml) def get_header(self): + if self.soap_action_webservice_e_metodo: + self._header[b'content-type'] = b'application/soap+xml; charset=utf-8; action="http://www.portalfiscal.inf.br/nfe/wsdl/' + self.webservice.encode('utf-8') + b'/' + self.metodo.encode('utf-8') + b'"' + else: + self._header[b'content-type'] = b'application/soap+xml; charset=utf-8; action="http://www.portalfiscal.inf.br/nfe/wsdl/' + self.webservice.encode('utf-8') + b'"' + header = self._header return header From 55d9cd95a520bfc4770745a18643f5c8125d6f3b Mon Sep 17 00:00:00 2001 From: Ari Caldeira Date: Thu, 19 Jul 2018 09:55:11 -0300 Subject: [PATCH 23/34] =?UTF-8?q?[FIX]=20Formata=C3=A7=C3=A3o=20da=20s?= =?UTF-8?q?=C3=A9rie?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pysped/nfe/leiaute/nfe_310.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pysped/nfe/leiaute/nfe_310.py b/pysped/nfe/leiaute/nfe_310.py index 524babc8..f9d83b08 100644 --- a/pysped/nfe/leiaute/nfe_310.py +++ b/pysped/nfe/leiaute/nfe_310.py @@ -2191,7 +2191,7 @@ def numero_formatado(self): def serie_formatada(self): if str(self.infNFe.ide.mod.valor) == '65': return 'Série ' + str(self.infNFe.ide.serie.valor).zfill(3) - elif str(self.infNFe.ide.mod.valor) == '65': + elif str(self.infNFe.ide.mod.valor) == '55': return 'SÉRIE ' + str(self.infNFe.ide.serie.valor).zfill(3) else: return str(self.infNFe.ide.serie.valor).zfill(3) From d86862b7fb1a577ffecbae4d084b148b1bc35d02 Mon Sep 17 00:00:00 2001 From: Ari Caldeira Date: Wed, 25 Jul 2018 11:46:30 -0300 Subject: [PATCH 24/34] =?UTF-8?q?[FIX]=20Ambiente=20nacional=20para=20even?= =?UTF-8?q?to=20de=20confirma=C3=A7=C3=A3o=20da=20opera=C3=A7=C3=A3o?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pysped/nfe/webservices_4.py | 490 +++++++++++++++++------------------- 1 file changed, 229 insertions(+), 261 deletions(-) diff --git a/pysped/nfe/webservices_4.py b/pysped/nfe/webservices_4.py index 8697056e..2c281f18 100644 --- a/pysped/nfe/webservices_4.py +++ b/pysped/nfe/webservices_4.py @@ -41,20 +41,7 @@ from __future__ import division, print_function, unicode_literals -from .webservices_flags import (NFE_AMBIENTE_PRODUCAO, - NFE_AMBIENTE_HOMOLOGACAO, - WS_DPEC_CONSULTA, - WS_DPEC_RECEPCAO, - WS_NFE_AUTORIZACAO, - WS_NFE_CONSULTA, - WS_NFE_CONSULTA_AUTORIZACAO, - WS_NFE_CONSULTA_CADASTRO, - WS_NFE_CONSULTA_DESTINADAS, - WS_NFE_DOWNLOAD, - WS_NFE_INUTILIZACAO, - WS_NFE_SITUACAO, - WS_NFE_RECEPCAO_EVENTO, - WS_DFE_DISTRIBUICAO) +from .webservices_flags import * METODO_WS = { @@ -72,7 +59,7 @@ }, WS_NFE_CONSULTA_CADASTRO: { 'webservice': 'CadConsultaCadastro4', - 'metodo' : 'consultaCadastro', + 'metodo' : 'consultaCadastro2', }, WS_NFE_RECEPCAO_EVENTO: { 'webservice': 'NFeRecepcaoEvento4', @@ -80,20 +67,12 @@ }, WS_NFE_AUTORIZACAO: { 'webservice': 'NFeAutorizacao4', - 'metodo' : 'nfeAutorizacaoLote', + 'metodo' : 'NfeAutorizacao', }, WS_NFE_CONSULTA_AUTORIZACAO: { 'webservice': 'NFeRetAutorizacao4', - 'metodo' : 'nfeRetAutorizacaoLote', + 'metodo' : 'NfeRetAutorizacao', }, - #WS_NFE_DOWNLOAD: { - #'webservice': 'NfeDownloadNF', - #'metodo' : 'nfeDownloadNF', - #}, - #WS_NFE_CONSULTA_DESTINADAS: { - #'webservice': 'NfeConsultaDest', - #'metodo' : 'nfeConsultaNFDest', - #}, WS_DFE_DISTRIBUICAO: { 'webservice': 'NFeDistribuicaoDFe', 'metodo' : 'nfeDistDFeInteresse' @@ -104,100 +83,100 @@ SVRS = { # o servidor da consulta de cadastro é diferente dos demais... NFE_AMBIENTE_PRODUCAO: { - 'servidor' : 'nfe.svrs.rs.gov.br', + 'servidor' : 'nfe.svrs.rs.gov.br', 'servidor%s' % WS_NFE_CONSULTA_CADASTRO: 'cad.svrs.rs.gov.br', - WS_NFE_INUTILIZACAO : 'ws/nfeinutilizacao/nfeinutilizacao4.asmx', - WS_NFE_CONSULTA : 'ws/NfeConsulta/NfeConsulta4.asmx', - WS_NFE_SITUACAO : 'ws/NfeStatusServico/NfeStatusServico4.asmx', - WS_NFE_CONSULTA_CADASTRO: 'ws/cadconsultacadastro/cadconsultacadastro4.asmx', - WS_NFE_RECEPCAO_EVENTO : 'ws/recepcaoevento/recepcaoevento4.asmx', - WS_NFE_AUTORIZACAO : 'ws/NfeAutorizacao/NFeAutorizacao4.asmx', - WS_NFE_CONSULTA_AUTORIZACAO : 'ws/NfeRetAutorizacao/NFeRetAutorizacao4.asmx', + WS_NFE_INUTILIZACAO : 'ws/nfeinutilizacao/nfeinutilizacao4.asmx', + WS_NFE_CONSULTA : 'ws/NfeConsulta/NfeConsulta4.asmx', + WS_NFE_SITUACAO : 'ws/NfeStatusServico/NfeStatusServico4.asmx', + WS_NFE_CONSULTA_CADASTRO : 'ws/cadconsultacadastro/cadconsultacadastro4.asmx', + WS_NFE_RECEPCAO_EVENTO : 'ws/recepcaoevento/recepcaoevento4.asmx', + WS_NFE_AUTORIZACAO : 'ws/NfeAutorizacao/NFeAutorizacao4.asmx', + WS_NFE_CONSULTA_AUTORIZACAO: 'ws/NfeRetAutorizacao/NFeRetAutorizacao4.asmx', }, NFE_AMBIENTE_HOMOLOGACAO: { - 'servidor' : 'nfe-homologacao.svrs.rs.gov.br', - WS_NFE_INUTILIZACAO : 'ws/nfeinutilizacao/nfeinutilizacao4.asmx', - WS_NFE_CONSULTA : 'ws/NfeConsulta/NfeConsulta4.asmx', - WS_NFE_SITUACAO : 'ws/NfeStatusServico/NfeStatusServico4.asmx', - WS_NFE_CONSULTA_CADASTRO: 'ws/cadconsultacadastro/cadconsultacadastro4.asmx', - WS_NFE_RECEPCAO_EVENTO : 'ws/recepcaoevento/recepcaoevento4.asmx', - WS_NFE_AUTORIZACAO : 'ws/NfeAutorizacao/NFeAutorizacao4.asmx', - WS_NFE_CONSULTA_AUTORIZACAO : 'ws/NfeRetAutorizacao/NFeRetAutorizacao4.asmx', + 'servidor' : 'nfe-homologacao.svrs.rs.gov.br', + WS_NFE_INUTILIZACAO : 'ws/nfeinutilizacao/nfeinutilizacao4.asmx', + WS_NFE_CONSULTA : 'ws/NfeConsulta/NfeConsulta4.asmx', + WS_NFE_SITUACAO : 'ws/NfeStatusServico/NfeStatusServico4.asmx', + WS_NFE_CONSULTA_CADASTRO : 'ws/cadconsultacadastro/cadconsultacadastro4.asmx', + WS_NFE_RECEPCAO_EVENTO : 'ws/recepcaoevento/recepcaoevento4.asmx', + WS_NFE_AUTORIZACAO : 'ws/NfeAutorizacao/NFeAutorizacao4.asmx', + WS_NFE_CONSULTA_AUTORIZACAO: 'ws/NfeRetAutorizacao/NFeRetAutorizacao4.asmx', } } SVAN = { NFE_AMBIENTE_PRODUCAO: { - 'servidor' : 'www.sefazvirtual.fazenda.gov.br', - WS_NFE_INUTILIZACAO : 'NFeInutilizacao4/NFeInutilizacao4.asmx', - WS_NFE_CONSULTA : 'NFeConsultaProtocolo4/NFeConsultaProtocolo4.asmx', - WS_NFE_SITUACAO : 'NFeStatusServico4/NFeStatusServico4.asmx', - WS_NFE_RECEPCAO_EVENTO : 'NFeRecepcaoEvento4/NFeRecepcaoEvento4.asmx', - WS_NFE_AUTORIZACAO : 'NFeAutorizacao4/NFeAutorizacao4.asmx', - WS_NFE_CONSULTA_AUTORIZACAO : 'NFeRetAutorizacao4/NFeRetAutorizacao4.asmx', + 'servidor' : 'www.sefazvirtual.fazenda.gov.br', + WS_NFE_INUTILIZACAO : 'NFeInutilizacao4/NFeInutilizacao4.asmx', + WS_NFE_CONSULTA : 'NFeConsultaProtocolo4/NFeConsultaProtocolo4.asmx', + WS_NFE_SITUACAO : 'NFeStatusServico4/NFeStatusServico4.asmx', + WS_NFE_RECEPCAO_EVENTO : 'NFeRecepcaoEvento4/NFeRecepcaoEvento4.asmx', + WS_NFE_AUTORIZACAO : 'NFeAutorizacao4/NFeAutorizacao4.asmx', + WS_NFE_CONSULTA_AUTORIZACAO: 'NFeRetAutorizacao4/NFeRetAutorizacao4.asmx', }, NFE_AMBIENTE_HOMOLOGACAO: { - 'servidor' : 'hom.sefazvirtual.fazenda.gov.br', - WS_NFE_INUTILIZACAO : 'NFeInutilizacao4/NFeInutilizacao4.asmx', - WS_NFE_CONSULTA : 'NFeConsultaProtocolo4/NFeConsultaProtocolo4.asmx', - WS_NFE_SITUACAO : 'NFeStatusServico4/NFeStatusServico4.asmx', - WS_NFE_RECEPCAO_EVENTO : 'NFeRecepcaoEvento4/NFeRecepcaoEvento4.asmx', - WS_NFE_AUTORIZACAO : 'NFeAutorizacao4/NFeAutorizacao4.asmx', - WS_NFE_CONSULTA_AUTORIZACAO : 'NFeRetAutorizacao4/NFeRetAutorizacao4.asmx', + 'servidor' : 'hom.sefazvirtual.fazenda.gov.br', + WS_NFE_INUTILIZACAO : 'NFeInutilizacao4/NFeInutilizacao4.asmx', + WS_NFE_CONSULTA : 'NFeConsultaProtocolo4/NFeConsultaProtocolo4.asmx', + WS_NFE_SITUACAO : 'NFeStatusServico4/NFeStatusServico4.asmx', + WS_NFE_RECEPCAO_EVENTO : 'NFeRecepcaoEvento4/NFeRecepcaoEvento4.asmx', + WS_NFE_AUTORIZACAO : 'NFeAutorizacao4/NFeAutorizacao4.asmx', + WS_NFE_CONSULTA_AUTORIZACAO: 'NFeRetAutorizacao4/NFeRetAutorizacao4.asmx', } } SVC_AN = { NFE_AMBIENTE_PRODUCAO: { - 'servidor' : 'www.svc.fazenda.gov.br', - WS_NFE_CONSULTA : 'NFeConsultaProtocolo4/NFeConsultaProtocolo4.asmx', - WS_NFE_SITUACAO : 'NFeStatusServico4/NFeStatusServico4.asmx', - WS_NFE_RECEPCAO_EVENTO: 'NFeRecepcaoEvento4/NFeRecepcaoEvento4.asmx', - WS_NFE_AUTORIZACAO : 'NFeAutorizacao4/NFeAutorizacao4.asmx', - WS_NFE_CONSULTA_AUTORIZACAO : 'NFeRetAutorizacao4/NFeRetAutorizacao4.asmx', + 'servidor' : 'www.svc.fazenda.gov.br', + WS_NFE_CONSULTA : 'NFeConsultaProtocolo4/NFeConsultaProtocolo4.asmx', + WS_NFE_SITUACAO : 'NFeStatusServico4/NFeStatusServico4.asmx', + WS_NFE_RECEPCAO_EVENTO : 'NFeRecepcaoEvento4/NFeRecepcaoEvento4.asmx', + WS_NFE_AUTORIZACAO : 'NFeAutorizacao4/NFeAutorizacao4.asmx', + WS_NFE_CONSULTA_AUTORIZACAO: 'NFeRetAutorizacao4/NFeRetAutorizacao4.asmx', }, NFE_AMBIENTE_HOMOLOGACAO: { - 'servidor' : 'hom.nfe.fazenda.gov.br', - WS_NFE_CONSULTA : 'NFeConsultaProtocolo4/NFeConsultaProtocolo4.asmx', - WS_NFE_SITUACAO : 'NFeStatusServico4/NFeStatusServico4.asmx', - WS_NFE_RECEPCAO_EVENTO: 'NFeRecepcaoEvento4/NFeRecepcaoEvento4.asmx', - WS_NFE_AUTORIZACAO : 'NFeAutorizacao4/NFeAutorizacao4.asmx', - WS_NFE_CONSULTA_AUTORIZACAO : 'NFeRetAutorizacao4/NFeRetAutorizacao4.asmx', + 'servidor' : 'hom.nfe.fazenda.gov.br', + WS_NFE_CONSULTA : 'NFeConsultaProtocolo4/NFeConsultaProtocolo4.asmx', + WS_NFE_SITUACAO : 'NFeStatusServico4/NFeStatusServico4.asmx', + WS_NFE_RECEPCAO_EVENTO : 'NFeRecepcaoEvento4/NFeRecepcaoEvento4.asmx', + WS_NFE_AUTORIZACAO : 'NFeAutorizacao4/NFeAutorizacao4.asmx', + WS_NFE_CONSULTA_AUTORIZACAO: 'NFeRetAutorizacao4/NFeRetAutorizacao4.asmx', } } SVC_RS = { NFE_AMBIENTE_PRODUCAO: { - 'servidor' : 'nfe.svrs.rs.gov.br', - WS_NFE_INUTILIZACAO : 'ws/nfeinutilizacao/nfeinutilizacao4.asmx', - WS_NFE_CONSULTA : 'ws/NfeConsulta/NfeConsulta4.asmx', - WS_NFE_SITUACAO : 'ws/NfeStatusServico/NfeStatusServico4.asmx', - WS_NFE_RECEPCAO_EVENTO : 'ws/recepcaoevento/recepcaoevento4.asmx', - WS_NFE_AUTORIZACAO : 'ws/NfeAutorizacao/NFeAutorizacao4.asmx', - WS_NFE_CONSULTA_AUTORIZACAO : 'ws/NfeRetAutorizacao/NFeRetAutorizacao4.asmx', + 'servidor' : 'nfe.svrs.rs.gov.br', + WS_NFE_INUTILIZACAO : 'ws/nfeinutilizacao/nfeinutilizacao4.asmx', + WS_NFE_CONSULTA : 'ws/NfeConsulta/NfeConsulta4.asmx', + WS_NFE_SITUACAO : 'ws/NfeStatusServico/NfeStatusServico4.asmx', + WS_NFE_RECEPCAO_EVENTO : 'ws/recepcaoevento/recepcaoevento4.asmx', + WS_NFE_AUTORIZACAO : 'ws/NfeAutorizacao/NFeAutorizacao4.asmx', + WS_NFE_CONSULTA_AUTORIZACAO: 'ws/NfeRetAutorizacao/NFeRetAutorizacao4.asmx', }, NFE_AMBIENTE_HOMOLOGACAO: { - 'servidor' : 'nfe-homologacao.svrs.rs.gov.br', - WS_NFE_INUTILIZACAO : 'ws/nfeinutilizacao/nfeinutilizacao4.asmx', - WS_NFE_CONSULTA : 'ws/NfeConsulta/NfeConsulta4.asmx', - WS_NFE_SITUACAO : 'ws/NfeStatusServico/NfeStatusServico4.asmx', - WS_NFE_RECEPCAO_EVENTO : 'ws/recepcaoevento/recepcaoevento4.asmx', - WS_NFE_AUTORIZACAO : 'ws/NfeAutorizacao/NFeAutorizacao4.asmx', - WS_NFE_CONSULTA_AUTORIZACAO : 'ws/NfeRetAutorizacao/NFeRetAutorizacao4.asmx', + 'servidor' : 'nfe-homologacao.svrs.rs.gov.br', + WS_NFE_INUTILIZACAO : 'ws/nfeinutilizacao/nfeinutilizacao4.asmx', + WS_NFE_CONSULTA : 'ws/NfeConsulta/NfeConsulta4.asmx', + WS_NFE_SITUACAO : 'ws/NfeStatusServico/NfeStatusServico4.asmx', + WS_NFE_RECEPCAO_EVENTO : 'ws/recepcaoevento/recepcaoevento4.asmx', + WS_NFE_AUTORIZACAO : 'ws/NfeAutorizacao/NFeAutorizacao4.asmx', + WS_NFE_CONSULTA_AUTORIZACAO: 'ws/NfeRetAutorizacao/NFeRetAutorizacao4.asmx', } } DPEC = { NFE_AMBIENTE_PRODUCAO: { - 'servidor' : 'www.nfe.fazenda.gov.br', + 'servidor' : 'www.nfe.fazenda.gov.br', WS_DPEC_CONSULTA: 'SCERecepcaoRFB/SCERecepcaoRFB.asmx', WS_DPEC_RECEPCAO: 'SCEConsultaRFB/SCEConsultaRFB.asmx' }, NFE_AMBIENTE_HOMOLOGACAO: { - 'servidor' : 'hom.nfe.fazenda.gov.br', + 'servidor' : 'hom.nfe.fazenda.gov.br', WS_DPEC_CONSULTA: 'SCERecepcaoRFB/SCERecepcaoRFB.asmx', WS_DPEC_RECEPCAO: 'SCEConsultaRFB/SCEConsultaRFB.asmx' } @@ -206,211 +185,200 @@ AN = { NFE_AMBIENTE_PRODUCAO: { - 'servidor': 'www.nfe.fazenda.gov.br', + 'servidor' : 'www.nfe.fazenda.gov.br', 'servidor%s' % WS_DFE_DISTRIBUICAO: 'www1.nfe.fazenda.gov.br', - WS_NFE_RECEPCAO_EVENTO : 'RecepcaoEvento/RecepcaoEvento.asmx', - WS_NFE_CONSULTA_DESTINADAS: 'NFeConsultaDest/NFeConsultaDest.asmx', - WS_NFE_DOWNLOAD: 'NfeDownloadNF/NfeDownloadNF.asmx', - WS_DFE_DISTRIBUICAO: 'NFeDistribuicaoDFe/NFeDistribuicaoDFe.asmx', + WS_NFE_RECEPCAO_EVENTO : 'NFeRecepcaoEvento4/NFeRecepcaoEvento4.asmx', + WS_DFE_DISTRIBUICAO : 'NFeDistribuicaoDFe/NFeDistribuicaoDFe.asmx', }, NFE_AMBIENTE_HOMOLOGACAO: { - 'servidor': 'hom.nfe.fazenda.gov.br', - WS_NFE_RECEPCAO_EVENTO : 'RecepcaoEvento/RecepcaoEvento.asmx', - WS_NFE_CONSULTA_DESTINADAS: 'NFeConsultaDest/NFeConsultaDest.asmx', - WS_NFE_DOWNLOAD: 'NfeDownloadNF/NfeDownloadNF.asmx', - WS_DFE_DISTRIBUICAO: 'NFeDistribuicaoDFe/NFeDistribuicaoDFe.asmx', + 'servidor' : 'hom.nfe.fazenda.gov.br', + WS_NFE_RECEPCAO_EVENTO : 'NFeRecepcaoEvento4/NFeRecepcaoEvento4.asmx', + WS_DFE_DISTRIBUICAO : 'NFeDistribuicaoDFe/NFeDistribuicaoDFe.asmx', }, } UFAM = { NFE_AMBIENTE_PRODUCAO: { - 'servidor' : 'nfe.sefaz.am.gov.br', - WS_NFE_INUTILIZACAO : 'services2/services/NfeInutilizacao4', - WS_NFE_CONSULTA : 'services2/services/NfeConsulta4', - WS_NFE_SITUACAO : 'services2/services/NfeStatusServico4', - WS_NFE_CONSULTA_CADASTRO: 'services2/services/cadconsultacadastro2', - WS_NFE_RECEPCAO_EVENTO : 'services2/services/RecepcaoEvento', - WS_NFE_AUTORIZACAO : 'services2/services/NfeAutorizacao4', - WS_NFE_CONSULTA_AUTORIZACAO : 'services2/services/NfeRetAutorizacao4', + 'servidor' : 'nfe.sefaz.am.gov.br', + WS_NFE_INUTILIZACAO : 'services2/services/NfeInutilizacao4', + WS_NFE_CONSULTA : 'services2/services/NfeConsulta4', + WS_NFE_SITUACAO : 'services2/services/NfeStatusServico4', + WS_NFE_CONSULTA_CADASTRO : 'services2/services/cadconsultacadastro2', + WS_NFE_RECEPCAO_EVENTO : 'services2/services/RecepcaoEvento', + WS_NFE_AUTORIZACAO : 'services2/services/NfeAutorizacao4', + WS_NFE_CONSULTA_AUTORIZACAO: 'services2/services/NfeRetAutorizacao4', }, NFE_AMBIENTE_HOMOLOGACAO: { - 'servidor' : 'homnfe.sefaz.am.gov.br', - WS_NFE_INUTILIZACAO : 'services2/services/NfeInutilizacao4', - WS_NFE_CONSULTA : 'services2/services/NfeConsulta4', - WS_NFE_SITUACAO : 'services2/services/NfeStatusServico4', - WS_NFE_CONSULTA_CADASTRO: 'services2/services/cadconsultacadastro2', - WS_NFE_RECEPCAO_EVENTO : 'services2/services/RecepcaoEvento', - WS_NFE_AUTORIZACAO : 'services2/services/NfeAutorizacao4', - WS_NFE_CONSULTA_AUTORIZACAO : 'services2/services/NfeRetAutorizacao4', + 'servidor' : 'homnfe.sefaz.am.gov.br', + WS_NFE_INUTILIZACAO : 'services2/services/NfeInutilizacao4', + WS_NFE_CONSULTA : 'services2/services/NfeConsulta4', + WS_NFE_SITUACAO : 'services2/services/NfeStatusServico4', + WS_NFE_CONSULTA_CADASTRO : 'services2/services/cadconsultacadastro2', + WS_NFE_RECEPCAO_EVENTO : 'services2/services/RecepcaoEvento', + WS_NFE_AUTORIZACAO : 'services2/services/NfeAutorizacao4', + WS_NFE_CONSULTA_AUTORIZACAO: 'services2/services/NfeRetAutorizacao4', } } UFBA = { NFE_AMBIENTE_PRODUCAO: { - 'servidor' : 'nfe.sefaz.ba.gov.br', - WS_NFE_INUTILIZACAO : 'webservices/NFeInutilizacao4/NFeInutilizacao4.asmx', - WS_NFE_CONSULTA : 'webservices/NFeConsultaProtocolo4/NFeConsultaProtocolo4.asmx', - WS_NFE_SITUACAO : 'webservices/NFeStatusServico4/NFeStatusServico4.asmx', - WS_NFE_CONSULTA_CADASTRO: 'webservices/CadConsultaCadastro4/CadConsultaCadastro4.asmx', - WS_NFE_RECEPCAO_EVENTO : 'webservices/sre/recepcaoevento.asmx', - WS_NFE_AUTORIZACAO : 'webservices/NFeAutorizacao4/NFeAutorizacao4.asmx', - WS_NFE_CONSULTA_AUTORIZACAO : 'webservices/NFeRetAutorizacao4/NFeRetAutorizacao4.asmx', + 'servidor' : 'nfe.sefaz.ba.gov.br', + WS_NFE_INUTILIZACAO : 'webservices/NFeInutilizacao4/NFeInutilizacao4.asmx', + WS_NFE_CONSULTA : 'webservices/NFeConsultaProtocolo4/NFeConsultaProtocolo4.asmx', + WS_NFE_SITUACAO : 'webservices/NFeStatusServico4/NFeStatusServico4.asmx', + WS_NFE_CONSULTA_CADASTRO : 'webservices/CadConsultaCadastro4/CadConsultaCadastro4.asmx', + WS_NFE_RECEPCAO_EVENTO : 'webservices/sre/recepcaoevento.asmx', + WS_NFE_AUTORIZACAO : 'webservices/NFeAutorizacao4/NFeAutorizacao4.asmx', + WS_NFE_CONSULTA_AUTORIZACAO: 'webservices/NFeRetAutorizacao4/NFeRetAutorizacao4.asmx', }, NFE_AMBIENTE_HOMOLOGACAO: { - 'servidor' : 'hnfe.sefaz.ba.gov.br', - WS_NFE_INUTILIZACAO : 'webservices/NFeInutilizacao4/NFeInutilizacao4.asmx', - WS_NFE_CONSULTA : 'webservices/NFeConsultaProtocolo4/NFeConsultaProtocolo4.asmx', - WS_NFE_SITUACAO : 'webservices/NFeStatusServico4/NFeStatusServico4.asmx', - WS_NFE_CONSULTA_CADASTRO: 'webservices/CadConsultaCadastro4/CadConsultaCadastro4.asmx', - WS_NFE_RECEPCAO_EVENTO : 'webservices/sre/recepcaoevento.asmx', - WS_NFE_AUTORIZACAO : 'webservices/NFeAutorizacao4/NFeAutorizacao4.asmx', - WS_NFE_CONSULTA_AUTORIZACAO : 'webservices/NFeRetAutorizacao4/NFeRetAutorizacao4.asmx', + 'servidor' : 'hnfe.sefaz.ba.gov.br', + WS_NFE_INUTILIZACAO : 'webservices/NFeInutilizacao4/NFeInutilizacao4.asmx', + WS_NFE_CONSULTA : 'webservices/NFeConsultaProtocolo4/NFeConsultaProtocolo4.asmx', + WS_NFE_SITUACAO : 'webservices/NFeStatusServico4/NFeStatusServico4.asmx', + WS_NFE_CONSULTA_CADASTRO : 'webservices/CadConsultaCadastro4/CadConsultaCadastro4.asmx', + WS_NFE_RECEPCAO_EVENTO : 'webservices/sre/recepcaoevento.asmx', + WS_NFE_AUTORIZACAO : 'webservices/NFeAutorizacao4/NFeAutorizacao4.asmx', + WS_NFE_CONSULTA_AUTORIZACAO: 'webservices/NFeRetAutorizacao4/NFeRetAutorizacao4.asmx', } } UFCE = { NFE_AMBIENTE_PRODUCAO: { - 'servidor' : 'nfe.sefaz.ce.gov.br', - WS_NFE_INUTILIZACAO : 'nfe4/services/NFeInutilizacao4', - WS_NFE_CONSULTA : 'nfe4/services/NFeConsultaProtocolo4', - WS_NFE_SITUACAO : 'nfe4/services/NFeStatusServico4', - WS_NFE_CONSULTA_CADASTRO: 'nfe2/services/CadConsultaCadastro4', - WS_NFE_RECEPCAO_EVENTO : 'nfe4/services/NFeRecepcaoEvento4', - WS_NFE_AUTORIZACAO : 'nfe4/services/NFeAutorizacao4', - WS_NFE_CONSULTA_AUTORIZACAO : 'nfe4/services/NFeRetAutorizacao4', + 'servidor' : 'nfe.sefaz.ce.gov.br', + WS_NFE_INUTILIZACAO : 'nfe4/services/NFeInutilizacao4', + WS_NFE_CONSULTA : 'nfe4/services/NFeConsultaProtocolo4', + WS_NFE_SITUACAO : 'nfe4/services/NFeStatusServico4', + WS_NFE_CONSULTA_CADASTRO : 'nfe2/services/CadConsultaCadastro2', + WS_NFE_RECEPCAO_EVENTO : 'nfe4/services/NFeRecepcaoEvento4', + WS_NFE_AUTORIZACAO : 'nfe4/services/NFeAutorizacao4', + WS_NFE_CONSULTA_AUTORIZACAO: 'nfe4/services/NFeRetAutorizacao4', }, NFE_AMBIENTE_HOMOLOGACAO: { - 'servidor' : 'nfeh.sefaz.ce.gov.br', - WS_NFE_INUTILIZACAO : 'nfe4/services/NFeInutilizacao4', - WS_NFE_CONSULTA : 'nfe4/services/NFeConsultaProtocolo4', - WS_NFE_SITUACAO : 'nfe4/services/NFeStatusServico4', - WS_NFE_CONSULTA_CADASTRO: 'nfe2/services/CadConsultaCadastro4', - WS_NFE_RECEPCAO_EVENTO : 'nfe4/services/NFeRecepcaoEvento4', - WS_NFE_AUTORIZACAO : 'nfe4/services/NFeAutorizacao4', - WS_NFE_CONSULTA_AUTORIZACAO : 'nfe4/services/NFeRetAutorizacao4', + 'servidor' : 'nfeh.sefaz.ce.gov.br', + WS_NFE_INUTILIZACAO : 'nfe4/services/NFeInutilizacao4', + WS_NFE_CONSULTA : 'nfe4/services/NFeConsultaProtocolo4', + WS_NFE_SITUACAO : 'nfe4/services/NFeStatusServico4', + WS_NFE_CONSULTA_CADASTRO : 'nfe2/services/CadConsultaCadastro2', + WS_NFE_RECEPCAO_EVENTO : 'nfe4/services/NFeRecepcaoEvento4', + WS_NFE_AUTORIZACAO : 'nfe4/services/NFeAutorizacao4', + WS_NFE_CONSULTA_AUTORIZACAO: 'nfe4/services/NFeRetAutorizacao4', } } UFGO = { NFE_AMBIENTE_PRODUCAO: { - 'servidor' : 'nfe.sefaz.go.gov.br', - WS_NFE_INUTILIZACAO : 'nfe/services/NFeInutilizacao4', - WS_NFE_CONSULTA : 'nfe/services/NFeConsultaProtocolo4', - WS_NFE_SITUACAO : 'nfe/services/NFeStatusServico4', - WS_NFE_CONSULTA_CADASTRO: 'nfe/services/CadConsultaCadastro4', - WS_NFE_RECEPCAO_EVENTO : 'nfe/services/NFeRecepcaoEvento4', - WS_NFE_AUTORIZACAO : 'nfe/services/NFeAutorizacao4', - WS_NFE_CONSULTA_AUTORIZACAO : 'nfe/services/NFeRetAutorizacao4', + 'servidor' : 'nfe.sefaz.go.gov.br', + WS_NFE_INUTILIZACAO : 'nfe/services/NFeInutilizacao4', + WS_NFE_CONSULTA : 'nfe/services/NFeConsultaProtocolo4', + WS_NFE_SITUACAO : 'nfe/services/NFeStatusServico4', + WS_NFE_CONSULTA_CADASTRO : 'nfe/services/CadConsultaCadastro4', + WS_NFE_RECEPCAO_EVENTO : 'nfe/services/NFeRecepcaoEvento4', + WS_NFE_AUTORIZACAO : 'nfe/services/NFeAutorizacao4', + WS_NFE_CONSULTA_AUTORIZACAO: 'nfe/services/NFeRetAutorizacao4', }, NFE_AMBIENTE_HOMOLOGACAO: { - 'servidor' : 'homolog.sefaz.go.gov.br', - WS_NFE_INUTILIZACAO : 'nfe/services/NFeInutilizacao4', - WS_NFE_CONSULTA : 'nfe/services/NFeConsultaProtocolo4', - WS_NFE_SITUACAO : 'nfe/services/NFeStatusServico4', - WS_NFE_CONSULTA_CADASTRO: 'nfe/services/CadConsultaCadastro4', - WS_NFE_RECEPCAO_EVENTO : 'nfe/services/NFeRecepcaoEvento4', - WS_NFE_AUTORIZACAO : 'nfe/services/NFeAutorizacao4', - WS_NFE_CONSULTA_AUTORIZACAO : 'nfe/services/NFeRetAutorizacao4', + 'servidor' : 'homolog.sefaz.go.gov.br', + WS_NFE_INUTILIZACAO : 'nfe/services/NFeInutilizacao4', + WS_NFE_CONSULTA : 'nfe/services/NFeConsultaProtocolo4', + WS_NFE_SITUACAO : 'nfe/services/NFeStatusServico4', + WS_NFE_CONSULTA_CADASTRO : 'nfe/services/CadConsultaCadastro4', + WS_NFE_RECEPCAO_EVENTO : 'nfe/services/NFeRecepcaoEvento4', + WS_NFE_AUTORIZACAO : 'nfe/services/NFeAutorizacao4', + WS_NFE_CONSULTA_AUTORIZACAO: 'nfe/services/NFeRetAutorizacao4', } } -#UFMA = { - #NFE_AMBIENTE_PRODUCAO: { - #'servidor': 'sistemas.sefaz.ma.gov.br', - #WS_NFE_CONSULTA_CADASTRO: 'wscadastro/CadConsultaCadastro2', - #} -#} - UFMT = { NFE_AMBIENTE_PRODUCAO: { - 'servidor' : 'nfe.sefaz.mt.gov.br', - WS_NFE_INUTILIZACAO : 'nfews/v2/services/NfeInutilizacao4', - WS_NFE_CONSULTA : 'nfews/v2/services/NfeConsulta4', - WS_NFE_SITUACAO : 'nfews/v2/services/NfeStatusServico4', - WS_NFE_CONSULTA_CADASTRO: 'nfews/v2/services/CadConsultaCadastro4', - WS_NFE_RECEPCAO_EVENTO : 'nfews/v2/services/RecepcaoEvento4', - WS_NFE_AUTORIZACAO : 'nfews/v2/services/NfeAutorizacao4', - WS_NFE_CONSULTA_AUTORIZACAO : 'nfews/v2/services/NfeRetAutorizacao4', + 'servidor' : 'nfe.sefaz.mt.gov.br', + WS_NFE_INUTILIZACAO : 'nfews/v2/services/NfeInutilizacao4', + WS_NFE_CONSULTA : 'nfews/v2/services/NfeConsulta4', + WS_NFE_SITUACAO : 'nfews/v2/services/NfeStatusServico4', + WS_NFE_CONSULTA_CADASTRO : 'nfews/v2/services/CadConsultaCadastro4', + WS_NFE_RECEPCAO_EVENTO : 'nfews/v2/services/RecepcaoEvento4', + WS_NFE_AUTORIZACAO : 'nfews/v2/services/NfeAutorizacao4', + WS_NFE_CONSULTA_AUTORIZACAO: 'nfews/v2/services/NfeRetAutorizacao4', }, NFE_AMBIENTE_HOMOLOGACAO: { - 'servidor' : 'homologacao.sefaz.mt.gov.br', - WS_NFE_INUTILIZACAO : 'nfews/v2/services/NfeInutilizacao4', - WS_NFE_CONSULTA : 'nfews/v2/services/NfeConsulta4', - WS_NFE_SITUACAO : 'nfews/v2/services/NfeStatusServico4', - WS_NFE_CONSULTA_CADASTRO: 'nfews/v2/services/CadConsultaCadastro4', - WS_NFE_RECEPCAO_EVENTO : 'nfews/v2/services/RecepcaoEvento4', - WS_NFE_AUTORIZACAO : 'nfews/v2/services/NfeAutorizacao4', - WS_NFE_CONSULTA_AUTORIZACAO : 'nfews/v2/services/NfeRetAutorizacao4', + 'servidor' : 'homologacao.sefaz.mt.gov.br', + WS_NFE_INUTILIZACAO : 'nfews/v2/services/NfeInutilizacao4', + WS_NFE_CONSULTA : 'nfews/v2/services/NfeConsulta4', + WS_NFE_SITUACAO : 'nfews/v2/services/NfeStatusServico4', + WS_NFE_CONSULTA_CADASTRO : 'nfews/v2/services/CadConsultaCadastro4', + WS_NFE_RECEPCAO_EVENTO : 'nfews/v2/services/RecepcaoEvento4', + WS_NFE_AUTORIZACAO : 'nfews/v2/services/NfeAutorizacao4', + WS_NFE_CONSULTA_AUTORIZACAO: 'nfews/v2/services/NfeRetAutorizacao4', } } UFMS = { NFE_AMBIENTE_PRODUCAO: { - 'servidor' : 'nfe.fazenda.ms.gov.br', - WS_NFE_INUTILIZACAO : 'ws/NFeInutilizacao4', - WS_NFE_CONSULTA : 'ws/NFeConsultaProtocolo4', - WS_NFE_SITUACAO : 'ws/NFeStatusServico4', - WS_NFE_CONSULTA_CADASTRO: 'ws/CadConsultaCadastro4', - WS_NFE_RECEPCAO_EVENTO : 'ws/NFeRecepcaoEvento4', - WS_NFE_AUTORIZACAO : 'ws/NFeAutorizacao4', - WS_NFE_CONSULTA_AUTORIZACAO : 'ws/NFeRetAutorizacao4', + 'servidor' : 'nfe.fazenda.ms.gov.br', + WS_NFE_INUTILIZACAO : 'ws/NFeInutilizacao4', + WS_NFE_CONSULTA : 'ws/NFeConsultaProtocolo4', + WS_NFE_SITUACAO : 'ws/NFeStatusServico4', + WS_NFE_CONSULTA_CADASTRO : 'ws/CadConsultaCadastro4', + WS_NFE_RECEPCAO_EVENTO : 'ws/NFeRecepcaoEvento4', + WS_NFE_AUTORIZACAO : 'ws/NFeAutorizacao4', + WS_NFE_CONSULTA_AUTORIZACAO: 'ws/NFeRetAutorizacao4', }, NFE_AMBIENTE_HOMOLOGACAO: { - 'servidor' : 'homologacao.nfe.ms.gov.br', - WS_NFE_INUTILIZACAO : 'ws/NFeInutilizacao4', - WS_NFE_CONSULTA : 'ws/NFeConsultaProtocolo4', - WS_NFE_SITUACAO : 'ws/NFeStatusServico4', - WS_NFE_CONSULTA_CADASTRO: 'ws/CadConsultaCadastro4', - WS_NFE_RECEPCAO_EVENTO : 'ws/NFeRecepcaoEvento4', - WS_NFE_AUTORIZACAO : 'ws/NFeAutorizacao4', - WS_NFE_CONSULTA_AUTORIZACAO : 'ws/NFeRetAutorizacao4', + 'servidor' : 'homologacao.nfe.ms.gov.br', + WS_NFE_INUTILIZACAO : 'ws/NFeInutilizacao4', + WS_NFE_CONSULTA : 'ws/NFeConsultaProtocolo4', + WS_NFE_SITUACAO : 'ws/NFeStatusServico4', + WS_NFE_CONSULTA_CADASTRO : 'ws/CadConsultaCadastro4', + WS_NFE_RECEPCAO_EVENTO : 'ws/NFeRecepcaoEvento4', + WS_NFE_AUTORIZACAO : 'ws/NFeAutorizacao4', + WS_NFE_CONSULTA_AUTORIZACAO: 'ws/NFeRetAutorizacao4', } } UFMG = { NFE_AMBIENTE_PRODUCAO: { - 'servidor' : 'nfe.fazenda.mg.gov.br', - WS_NFE_INUTILIZACAO : 'nfe2/services/NFeInutilizacao4', - WS_NFE_CONSULTA : 'nfe2/services/NFeConsulta4', - WS_NFE_SITUACAO : 'nfe2/services/NFeStatusServico4', - WS_NFE_CONSULTA_CADASTRO: 'nfe2/services/cadconsultacadastro2', - WS_NFE_RECEPCAO_EVENTO : 'nfe2/services/NFeRecepcaoEvento4', - WS_NFE_AUTORIZACAO : 'nfe2/services/NFeAutorizacao4', - WS_NFE_CONSULTA_AUTORIZACAO : 'nfe2/services/NFeRetAutorizacao4', + 'servidor' : 'nfe.fazenda.mg.gov.br', + WS_NFE_INUTILIZACAO : 'nfe2/services/NFeInutilizacao4', + WS_NFE_CONSULTA : 'nfe2/services/NFeConsulta4', + WS_NFE_SITUACAO : 'nfe2/services/NFeStatusServico4', + WS_NFE_CONSULTA_CADASTRO : 'nfe2/services/cadconsultacadastro2', + WS_NFE_RECEPCAO_EVENTO : 'nfe2/services/NFeRecepcaoEvento4', + WS_NFE_AUTORIZACAO : 'nfe2/services/NFeAutorizacao4', + WS_NFE_CONSULTA_AUTORIZACAO: 'nfe2/services/NFeRetAutorizacao4', }, NFE_AMBIENTE_HOMOLOGACAO: { - 'servidor' : 'hnfe.fazenda.mg.gov.br', - WS_NFE_INUTILIZACAO : 'nfe2/services/NFeInutilizacao4', - WS_NFE_CONSULTA : 'nfe2/services/NFeConsulta4', - WS_NFE_SITUACAO : 'nfe2/services/NFeStatusServico4', - WS_NFE_CONSULTA_CADASTRO: 'nfe2/services/cadconsultacadastro2', - WS_NFE_RECEPCAO_EVENTO : 'nfe2/services/NFeRecepcaoEvento4', - WS_NFE_AUTORIZACAO : 'nfe2/services/NFeAutorizacao4', - WS_NFE_CONSULTA_AUTORIZACAO : 'nfe2/services/NFeRetAutorizacao4', + 'servidor' : 'hnfe.fazenda.mg.gov.br', + WS_NFE_INUTILIZACAO : 'nfe2/services/NFeInutilizacao4', + WS_NFE_CONSULTA : 'nfe2/services/NFeConsulta4', + WS_NFE_SITUACAO : 'nfe2/services/NFeStatusServico4', + WS_NFE_CONSULTA_CADASTRO : 'nfe2/services/cadconsultacadastro2', + WS_NFE_RECEPCAO_EVENTO : 'nfe2/services/NFeRecepcaoEvento4', + WS_NFE_AUTORIZACAO : 'nfe2/services/NFeAutorizacao4', + WS_NFE_CONSULTA_AUTORIZACAO: 'nfe2/services/NFeRetAutorizacao4', } } UFPR = { NFE_AMBIENTE_PRODUCAO: { - 'servidor' : 'nfe.fazenda.pr.gov.br', - WS_NFE_INUTILIZACAO : 'nfe/NFeInutilizacao4', - WS_NFE_CONSULTA : 'nfe/NFeConsultaProtocolo4', - WS_NFE_SITUACAO : 'nfe/NFeStatusServico4', - WS_NFE_CONSULTA_CADASTRO: 'nfe/CadConsultaCadastro4', - WS_NFE_RECEPCAO_EVENTO : 'nfe/NFeRecepcaoEvento4', - WS_NFE_AUTORIZACAO : 'nfe/NFeAutorizacao4', - WS_NFE_CONSULTA_AUTORIZACAO : 'nfe/NFeRetAutorizacao4', + 'servidor' : 'nfe.sefa.pr.gov.br', + WS_NFE_INUTILIZACAO : 'nfe/NFeInutilizacao4', + WS_NFE_CONSULTA : 'nfe/NFeConsultaProtocolo4', + WS_NFE_SITUACAO : 'nfe/NFeStatusServico4', + WS_NFE_CONSULTA_CADASTRO : 'nfe/CadConsultaCadastro4', + WS_NFE_RECEPCAO_EVENTO : 'nfe/NFeRecepcaoEvento4', + WS_NFE_AUTORIZACAO : 'nfe/NFeAutorizacao4', + WS_NFE_CONSULTA_AUTORIZACAO: 'nfe/NFeRetAutorizacao4', }, NFE_AMBIENTE_HOMOLOGACAO: { - 'servidor' : 'homologacao.nfe.fazenda.pr.gov.br', - WS_NFE_INUTILIZACAO : 'nfe/NFeInutilizacao4', - WS_NFE_CONSULTA : 'nfe/NFeConsultaProtocolo4', - WS_NFE_SITUACAO : 'nfe/NFeStatusServico4', - WS_NFE_CONSULTA_CADASTRO: 'nfe/CadConsultaCadastro4', - WS_NFE_RECEPCAO_EVENTO : 'nfe/NFeRecepcaoEvento4', - WS_NFE_AUTORIZACAO : 'nfe/NFeAutorizacao4', - WS_NFE_CONSULTA_AUTORIZACAO : 'nfe/NFeRetAutorizacao4', + 'servidor' : 'homologacao.nfe.sefa.pr.gov.br', + WS_NFE_INUTILIZACAO : 'nfe/NFeInutilizacao4', + WS_NFE_CONSULTA : 'nfe/NFeConsultaProtocolo4', + WS_NFE_SITUACAO : 'nfe/NFeStatusServico4', + WS_NFE_CONSULTA_CADASTRO : 'nfe/CadConsultaCadastro4', + WS_NFE_RECEPCAO_EVENTO : 'nfe/NFeRecepcaoEvento4', + WS_NFE_AUTORIZACAO : 'nfe/NFeAutorizacao4', + WS_NFE_CONSULTA_AUTORIZACAO: 'nfe/NFeRetAutorizacao4', } } @@ -440,49 +408,49 @@ UFRS = { NFE_AMBIENTE_PRODUCAO: { - 'servidor' : 'nfe.sefazrs.rs.gov.br', + 'servidor' : 'nfe.sefazrs.rs.gov.br', 'servidor%s' % WS_NFE_CONSULTA_CADASTRO: 'cad.sefazrs.rs.gov.br', - WS_NFE_INUTILIZACAO : 'ws/nfeinutilizacao/nfeinutilizacao4.asmx', - WS_NFE_CONSULTA : 'ws/NfeConsulta/NfeConsulta4.asmx', - WS_NFE_SITUACAO : 'ws/NfeStatusServico/NfeStatusServico4.asmx', - WS_NFE_CONSULTA_CADASTRO: 'ws/cadconsultacadastro/cadconsultacadastro4.asmx', - WS_NFE_RECEPCAO_EVENTO : 'ws/recepcaoevento/recepcaoevento4.asmx', - WS_NFE_AUTORIZACAO : 'ws/NfeAutorizacao/NFeAutorizacao4.asmx', - WS_NFE_CONSULTA_AUTORIZACAO : 'ws/NfeRetAutorizacao/NFeRetAutorizacao4.asmx', + WS_NFE_INUTILIZACAO : 'ws/nfeinutilizacao/nfeinutilizacao4.asmx', + WS_NFE_CONSULTA : 'ws/NfeConsulta/NfeConsulta4.asmx', + WS_NFE_SITUACAO : 'ws/NfeStatusServico/NfeStatusServico4.asmx', + WS_NFE_CONSULTA_CADASTRO : 'ws/cadconsultacadastro/cadconsultacadastro4.asmx', + WS_NFE_RECEPCAO_EVENTO : 'ws/recepcaoevento/recepcaoevento4.asmx', + WS_NFE_AUTORIZACAO : 'ws/NfeAutorizacao/NFeAutorizacao4.asmx', + WS_NFE_CONSULTA_AUTORIZACAO: 'ws/NfeRetAutorizacao/NFeRetAutorizacao4.asmx', }, NFE_AMBIENTE_HOMOLOGACAO: { - 'servidor' : 'nfe-homologacao.sefazrs.rs.gov.br', - WS_NFE_INUTILIZACAO : 'ws/nfeinutilizacao/nfeinutilizacao4.asmx', - WS_NFE_CONSULTA : 'ws/NfeConsulta/NfeConsulta4.asmx', - WS_NFE_SITUACAO : 'ws/NfeStatusServico/NfeStatusServico4.asmx', - WS_NFE_RECEPCAO_EVENTO : 'ws/recepcaoevento/recepcaoevento4.asmx', - WS_NFE_CONSULTA_CADASTRO: 'ws/cadconsultacadastro/cadconsultacadastro4.asmx', - WS_NFE_AUTORIZACAO : 'ws/NfeAutorizacao/NFeAutorizacao4.asmx', - WS_NFE_CONSULTA_AUTORIZACAO : 'ws/NfeRetAutorizacao/NFeRetAutorizacao4.asmx', + 'servidor' : 'nfe-homologacao.sefazrs.rs.gov.br', + WS_NFE_INUTILIZACAO : 'ws/nfeinutilizacao/nfeinutilizacao4.asmx', + WS_NFE_CONSULTA : 'ws/NfeConsulta/NfeConsulta4.asmx', + WS_NFE_SITUACAO : 'ws/NfeStatusServico/NfeStatusServico4.asmx', + WS_NFE_RECEPCAO_EVENTO : 'ws/recepcaoevento/recepcaoevento4.asmx', + WS_NFE_CONSULTA_CADASTRO : 'ws/cadconsultacadastro/cadconsultacadastro4.asmx', + WS_NFE_AUTORIZACAO : 'ws/NfeAutorizacao/NFeAutorizacao4.asmx', + WS_NFE_CONSULTA_AUTORIZACAO: 'ws/NfeRetAutorizacao/NFeRetAutorizacao4.asmx', } } UFSP = { NFE_AMBIENTE_PRODUCAO: { - 'servidor' : 'nfe.fazenda.sp.gov.br', - WS_NFE_INUTILIZACAO : 'ws/nfeinutilizacao4.asmx', - WS_NFE_CONSULTA : 'ws/nfeconsultaprotocolo4.asmx', - WS_NFE_SITUACAO : 'ws/nfestatusservico4.asmx', - WS_NFE_CONSULTA_CADASTRO: 'ws/cadconsultacadastro4.asmx', - WS_NFE_RECEPCAO_EVENTO : 'ws/nferecepcaoevento4.asmx', - WS_NFE_AUTORIZACAO : 'ws/nfeautorizacao4.asmx', - WS_NFE_CONSULTA_AUTORIZACAO : 'ws/nferetautorizacao4.asmx', + 'servidor' : 'nfe.fazenda.sp.gov.br', + WS_NFE_INUTILIZACAO : 'ws/nfeinutilizacao4.asmx', + WS_NFE_CONSULTA : 'ws/nfeconsultaprotocolo4.asmx', + WS_NFE_SITUACAO : 'ws/nfestatusservico4.asmx', + WS_NFE_CONSULTA_CADASTRO : 'ws/cadconsultacadastro4.asmx', + WS_NFE_RECEPCAO_EVENTO : 'ws/nferecepcaoevento4.asmx', + WS_NFE_AUTORIZACAO : 'ws/nfeautorizacao4.asmx', + WS_NFE_CONSULTA_AUTORIZACAO: 'ws/nferetautorizacao4.asmx', }, NFE_AMBIENTE_HOMOLOGACAO: { - 'servidor' : 'homologacao.nfe.fazenda.sp.gov.br', - WS_NFE_INUTILIZACAO : 'ws/nfeinutilizacao4.asmx', - WS_NFE_CONSULTA : 'ws/nfeconsultaprotocolo4.asmx', - WS_NFE_SITUACAO : 'ws/nfestatusservico4.asmx', - WS_NFE_CONSULTA_CADASTRO: 'ws/cadconsultacadastro4.asmx', - WS_NFE_RECEPCAO_EVENTO : 'ws/nferecepcaoevento4.asmx', - WS_NFE_AUTORIZACAO : 'ws/nfeautorizacao4.asmx', - WS_NFE_CONSULTA_AUTORIZACAO : 'ws/nferetautorizacao4.asmx', + 'servidor' : 'homologacao.nfe.fazenda.sp.gov.br', + WS_NFE_INUTILIZACAO : 'ws/nfeinutilizacao4.asmx', + WS_NFE_CONSULTA : 'ws/nfeconsultaprotocolo4.asmx', + WS_NFE_SITUACAO : 'ws/nfestatusservico4.asmx', + WS_NFE_CONSULTA_CADASTRO : 'ws/cadconsultacadastro4.asmx', + WS_NFE_RECEPCAO_EVENTO : 'ws/nferecepcaoevento4.asmx', + WS_NFE_AUTORIZACAO : 'ws/nfeautorizacao4.asmx', + WS_NFE_CONSULTA_AUTORIZACAO: 'ws/nferetautorizacao4.asmx', } } @@ -567,4 +535,4 @@ 'SE': SVC_AN, 'SP': SVC_AN, 'TO': SVC_AN, -} +} \ No newline at end of file From c12d7503428e090bfeb428a7056df3291a758331 Mon Sep 17 00:00:00 2001 From: Ari Caldeira Date: Tue, 31 Jul 2018 17:33:12 -0300 Subject: [PATCH 25/34] [FIX] Campos referentes ao Fundo de Combate a Pobreza. --- pysped/nfe/leiaute/nfe_400.py | 46 +++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) diff --git a/pysped/nfe/leiaute/nfe_400.py b/pysped/nfe/leiaute/nfe_400.py index 31b77b95..c78c2fa8 100644 --- a/pysped/nfe/leiaute/nfe_400.py +++ b/pysped/nfe/leiaute/nfe_400.py @@ -176,6 +176,52 @@ class TagCSTICMS(nfe_310.TagCSTICMS): def __init__(self, *args, **kwargs): super(TagCSTICMS, self).__init__(*args, **kwargs) + def set_valor(self, novo_valor): + super(TagCSTICMS, self).set_valor(novo_valor) + if not self.grupo_icms: + return None + # + # Definimos todas as tags como não obrigatórias + # + self.grupo_icms.pST.obrigatorio = False + self.grupo_icms.vBCFCP.obrigatorio = False + self.grupo_icms.pFCP.obrigatorio = False + self.grupo_icms.vFCP.obrigatorio = False + self.grupo_icms.vBCFCPST.obrigatorio = False + self.grupo_icms.pFCPST.obrigatorio = False + self.grupo_icms.vFCPST.obrigatorio = False + self.grupo_icms.vBCFCPSTRet.obrigatorio = False + self.grupo_icms.pFCPSTRet.obrigatorio = False + self.grupo_icms.vFCPSTRet.obrigatorio = False + # + # Por segurança, zeramos os valores das tags do + # grupo ICMS ao redefinirmos o código da situação + # tributária + # + self.grupo_icms.pST.valor = '0.00' + self.grupo_icms.vBCFCP.valor = '0.00' + self.grupo_icms.pFCP.valor = '0.00' + self.grupo_icms.vFCP.valor = '0.00' + self.grupo_icms.vBCFCPST.valor = '0.00' + self.grupo_icms.pFCPST.valor = '0.00' + self.grupo_icms.vFCPST.valor = '0.00' + self.grupo_icms.vBCFCPSTRet.valor = '0.00' + self.grupo_icms.pFCPSTRet.valor = '0.00' + self.grupo_icms.vFCPSTRet.valor = '0.00' + # + # Redefine a raiz para todas as tags do grupo ICMS + # + self.grupo_icms.pST.raiz = self.grupo_icms.raiz_tag + self.grupo_icms.vBCFCP.raiz = self.grupo_icms.raiz_tag + self.grupo_icms.pFCP.raiz = self.grupo_icms.raiz_tag + self.grupo_icms.vFCP.raiz = self.grupo_icms.raiz_tag + self.grupo_icms.vBCFCPST.raiz = self.grupo_icms.raiz_tag + self.grupo_icms.pFCPST.raiz = self.grupo_icms.raiz_tag + self.grupo_icms.vFCPST.raiz = self.grupo_icms.raiz_tag + self.grupo_icms.vBCFCPSTRet.raiz = self.grupo_icms.raiz_tag + self.grupo_icms.pFCPSTRet.raiz = self.grupo_icms.raiz_tag + self.grupo_icms.vFCPSTRet.raiz = self.grupo_icms.raiz_tag + class ICMS(nfe_310.ICMS): def __init__(self): From 6d5b80bd9dbceb0dd60f17afc0b4e76151cbf654 Mon Sep 17 00:00:00 2001 From: Ari Caldeira Date: Fri, 6 Apr 2018 15:48:13 -0300 Subject: [PATCH 26/34] [FIX] Corrigindo CSOSN 500 --- pysped/nfe/leiaute/nfe_400.py | 64 +++++++++++++++++++++++++++++++---- 1 file changed, 58 insertions(+), 6 deletions(-) diff --git a/pysped/nfe/leiaute/nfe_400.py b/pysped/nfe/leiaute/nfe_400.py index c78c2fa8..6c60ed99 100644 --- a/pysped/nfe/leiaute/nfe_400.py +++ b/pysped/nfe/leiaute/nfe_400.py @@ -171,6 +171,56 @@ class TagCSOSN(nfe_310.TagCSOSN): def __init__(self, *args, **kwargs): super(TagCSOSN, self).__init__(*args, **kwargs) + def set_valor(self, novo_valor): + super(TagCSOSN, self).set_valor(novo_valor) + + if not self.grupo_icms: + return None + + # + # Definimos todas as tags como não obrigatórias + # + self.grupo_icms.pST.obrigatorio = False + self.grupo_icms.vBCFCP.obrigatorio = False + self.grupo_icms.pFCP.obrigatorio = False + self.grupo_icms.vFCP.obrigatorio = False + self.grupo_icms.vBCFCPST.obrigatorio = False + self.grupo_icms.pFCPST.obrigatorio = False + self.grupo_icms.vFCPST.obrigatorio = False + self.grupo_icms.vBCFCPSTRet.obrigatorio = False + self.grupo_icms.pFCPSTRet.obrigatorio = False + self.grupo_icms.vFCPSTRet.obrigatorio = False + + # + # Por segurança, zeramos os valores das tags do + # grupo ICMS ao redefinirmos o código da situação + # tributária + # + self.grupo_icms.pST.valor = '0.00' + self.grupo_icms.vBCFCP.valor = '0.00' + self.grupo_icms.pFCP.valor = '0.00' + self.grupo_icms.vFCP.valor = '0.00' + self.grupo_icms.vBCFCPST.valor = '0.00' + self.grupo_icms.pFCPST.valor = '0.00' + self.grupo_icms.vFCPST.valor = '0.00' + self.grupo_icms.vBCFCPSTRet.valor = '0.00' + self.grupo_icms.pFCPSTRet.valor = '0.00' + self.grupo_icms.vFCPSTRet.valor = '0.00' + + # + # Redefine a raiz para todas as tags do grupo ICMS + # + self.grupo_icms.pST.raiz = self.grupo_icms.raiz_tag + self.grupo_icms.vBCFCP.raiz = self.grupo_icms.raiz_tag + self.grupo_icms.pFCP.raiz = self.grupo_icms.raiz_tag + self.grupo_icms.vFCP.raiz = self.grupo_icms.raiz_tag + self.grupo_icms.vBCFCPST.raiz = self.grupo_icms.raiz_tag + self.grupo_icms.pFCPST.raiz = self.grupo_icms.raiz_tag + self.grupo_icms.vFCPST.raiz = self.grupo_icms.raiz_tag + self.grupo_icms.vBCFCPSTRet.raiz = self.grupo_icms.raiz_tag + self.grupo_icms.pFCPSTRet.raiz = self.grupo_icms.raiz_tag + self.grupo_icms.vFCPSTRet.raiz = self.grupo_icms.raiz_tag + class TagCSTICMS(nfe_310.TagCSTICMS): def __init__(self, *args, **kwargs): @@ -490,13 +540,15 @@ def get_xml(self): xml += self.vFCPST.xml elif self.CSOSN.valor == '500': - xml += self.vBCSTRet.xml - xml += self.vICMSSTRet.xml + if (self.vBCSTRet.valor or self.pST.valor or self.vICMSSTRet.valor): + xml += self.vBCSTRet.xml + xml += self.pST.xml + xml += self.vICMSSTRet.xml - xml += self.pST.xml - xml += self.vBCFCPSTRet.xml - xml += self.pFCPSTRet.xml - xml += self.vFCPSTRet.xml + if (self.vBCFCPSTRet.valor or self.pFCPSTRet.valor or self.vFCPSTRet.valor): + xml += self.vBCFCPSTRet.xml + xml += self.pFCPSTRet.xml + xml += self.vFCPSTRet.xml elif self.CSOSN.valor == '900': xml += self.modBC.xml From ae94be908dd73893085293355783efb17fa2da1f Mon Sep 17 00:00:00 2001 From: Ari Caldeira Date: Tue, 10 Apr 2018 15:04:09 -0300 Subject: [PATCH 27/34] [FIX] Ajustando tags do FCP --- pysped/nfe/leiaute/nfe_400.py | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/pysped/nfe/leiaute/nfe_400.py b/pysped/nfe/leiaute/nfe_400.py index 6c60ed99..d1781893 100644 --- a/pysped/nfe/leiaute/nfe_400.py +++ b/pysped/nfe/leiaute/nfe_400.py @@ -85,7 +85,7 @@ def __init__(self): class ICMSUFDest(nfe_310.ICMSUFDest): def __init__(self): super(ICMSUFDest, self).__init__() - self.vBCFCPUFDest = TagDecimal(nome='vBCFCPUFDest', codigo='', tamanho=[1, 13, 1], decimais=[0, 2, 2], raiz='//det/imposto/ICMSUFDest') + self.vBCFCPUFDest = TagDecimal(nome='vBCFCPUFDest', codigo='', tamanho=[1, 13, 1], decimais=[0, 2, 2], raiz='//det/imposto/ICMSUFDest', obrigatorio=False) def get_xml(self): if not (self.vBCUFDest.valor): @@ -276,16 +276,17 @@ def set_valor(self, novo_valor): class ICMS(nfe_310.ICMS): def __init__(self): super(ICMS, self).__init__() - self.pST = TagDecimal(nome='pST' , codigo='', tamanho=[1, 3, 1], decimais=[0, 2, 4], raiz='') - self.vBCFCP = TagDecimal(nome='vBCFCP' , codigo='', tamanho=[1, 13, 1], decimais=[0, 2, 2], raiz='') - self.pFCP = TagDecimal(nome='pFCP' , codigo='', tamanho=[1, 3, 1], decimais=[0, 2, 4], raiz='') - self.vFCP = TagDecimal(nome='vFCP' , codigo='', tamanho=[1, 13, 1], decimais=[0, 2, 2], raiz='') - self.vBCFCPST = TagDecimal(nome='vBCFCPST' , codigo='', tamanho=[1, 13, 1], decimais=[0, 2, 2], raiz='') - self.pFCPST = TagDecimal(nome='pFCPST' , codigo='', tamanho=[1, 3, 1], decimais=[0, 2, 4], raiz='') - self.vFCPST = TagDecimal(nome='vFCPST' , codigo='', tamanho=[1, 13, 1], decimais=[0, 2, 2], raiz='') - self.vBCFCPSTRet = TagDecimal(nome='vBCFCPSTRet', codigo='', tamanho=[1, 13, 1], decimais=[0, 2, 2], raiz='') - self.pFCPSTRet = TagDecimal(nome='pFCPSTRet' , codigo='', tamanho=[1, 3, 1], decimais=[0, 2, 4], raiz='') - self.vFCPSTRet = TagDecimal(nome='vFCPSTRet' , codigo='', tamanho=[1, 13, 1], decimais=[0, 2, 2], raiz='') + + self.pST = TagDecimal(nome='pST' , codigo='', tamanho=[1, 3, 1], decimais=[0, 2, 4], raiz='', obrigatorio=False) + self.vBCFCP = TagDecimal(nome='vBCFCP' , codigo='', tamanho=[1, 13, 1], decimais=[0, 2, 2], raiz='', obrigatorio=False) + self.pFCP = TagDecimal(nome='pFCP' , codigo='', tamanho=[1, 3, 1], decimais=[0, 2, 4], raiz='', obrigatorio=False) + self.vFCP = TagDecimal(nome='vFCP' , codigo='', tamanho=[1, 13, 1], decimais=[0, 2, 2], raiz='', obrigatorio=False) + self.vBCFCPST = TagDecimal(nome='vBCFCPST' , codigo='', tamanho=[1, 13, 1], decimais=[0, 2, 2], raiz='', obrigatorio=False) + self.pFCPST = TagDecimal(nome='pFCPST' , codigo='', tamanho=[1, 3, 1], decimais=[0, 2, 4], raiz='', obrigatorio=False) + self.vFCPST = TagDecimal(nome='vFCPST' , codigo='', tamanho=[1, 13, 1], decimais=[0, 2, 2], raiz='', obrigatorio=False) + self.vBCFCPSTRet = TagDecimal(nome='vBCFCPSTRet', codigo='', tamanho=[1, 13, 1], decimais=[0, 2, 2], raiz='', obrigatorio=False) + self.pFCPSTRet = TagDecimal(nome='pFCPSTRet' , codigo='', tamanho=[1, 3, 1], decimais=[0, 2, 4], raiz='', obrigatorio=False) + self.vFCPSTRet = TagDecimal(nome='vFCPSTRet' , codigo='', tamanho=[1, 13, 1], decimais=[0, 2, 2], raiz='', obrigatorio=False) self.orig = TagCaracter(nome='orig', codigo='', raiz='') # From 260c9a81b7856bdd9deb58fe7512e402084d2d44 Mon Sep 17 00:00:00 2001 From: Renato Lima Date: Thu, 2 Aug 2018 23:15:48 -0300 Subject: [PATCH 28/34] [FIX] Ajustando tags do FCPST --- pysped/nfe/leiaute/nfe_400.py | 35 ++++++++++++++++++++--------------- 1 file changed, 20 insertions(+), 15 deletions(-) diff --git a/pysped/nfe/leiaute/nfe_400.py b/pysped/nfe/leiaute/nfe_400.py index d1781893..7e437f32 100644 --- a/pysped/nfe/leiaute/nfe_400.py +++ b/pysped/nfe/leiaute/nfe_400.py @@ -397,9 +397,10 @@ def get_xml(self): xml += self.pICMSST.xml xml += self.vICMSST.xml - xml += self.vBCFCPST.xml - xml += self.pFCPST.xml - xml += self.vFCPST.xml + if self.vFCPST.valor: + xml += self.vBCFCPST.xml + xml += self.pFCPST.xml + xml += self.vFCPST.xml xml += self.vICMSDeson.xml xml += self.motDesICMS.xml @@ -481,9 +482,10 @@ def get_xml(self): xml += self.pICMSST.xml xml += self.vICMSST.xml - xml += self.vBCFCPST.xml - xml += self.pFCPST.xml - xml += self.vFCPST.xml + if self.vFCPST.valor: + xml += self.vBCFCPST.xml + xml += self.pFCPST.xml + xml += self.vFCPST.xml xml += self.vICMSDeson.xml xml += self.motDesICMS.xml @@ -517,9 +519,10 @@ def get_xml(self): xml += self.pICMSST.xml xml += self.vICMSST.xml - xml += self.vBCFCPST.xml - xml += self.pFCPST.xml - xml += self.vFCPST.xml + if self.vFCPST.valor: + xml += self.vBCFCPST.xml + xml += self.pFCPST.xml + xml += self.vFCPST.xml xml += self.pCredSN.xml xml += self.vCredICMSSN.xml @@ -536,9 +539,10 @@ def get_xml(self): xml += self.pICMSST.xml xml += self.vICMSST.xml - xml += self.vBCFCPST.xml - xml += self.pFCPST.xml - xml += self.vFCPST.xml + if self.vFCPST.valor: + xml += self.vBCFCPST.xml + xml += self.pFCPST.xml + xml += self.vFCPST.xml elif self.CSOSN.valor == '500': if (self.vBCSTRet.valor or self.pST.valor or self.vICMSSTRet.valor): @@ -568,9 +572,10 @@ def get_xml(self): xml += self.pICMSST.xml xml += self.vICMSST.xml - xml += self.vBCFCPST.xml - xml += self.pFCPST.xml - xml += self.vFCPST.xml + if self.vFCPST.valor: + xml += self.vBCFCPST.xml + xml += self.pFCPST.xml + xml += self.vFCPST.xml xml += self.pCredSN.xml xml += self.vCredICMSSN.xml From 126686ce48e799eb5e6b7aa085515d309bf51d87 Mon Sep 17 00:00:00 2001 From: Renato Lima Date: Tue, 14 Aug 2018 12:23:43 -0300 Subject: [PATCH 29/34] [FIX] UFPE NF-e 4.00 address --- pysped/nfe/webservices_4.py | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/pysped/nfe/webservices_4.py b/pysped/nfe/webservices_4.py index 2c281f18..b6adc42e 100644 --- a/pysped/nfe/webservices_4.py +++ b/pysped/nfe/webservices_4.py @@ -385,23 +385,23 @@ UFPE = { NFE_AMBIENTE_PRODUCAO: { 'servidor' : 'nfe.sefaz.pe.gov.br', - WS_NFE_INUTILIZACAO : 'nfe-service/services/NfeInutilizacao2', - WS_NFE_CONSULTA : 'nfe-service/services/NfeConsulta2', - WS_NFE_SITUACAO : 'nfe-service/services/NfeStatusServico2', + WS_NFE_INUTILIZACAO : 'nfe-service/services/NfeInutilizacao4', + WS_NFE_CONSULTA : 'nfe-service/services/NFeConsultaProtocolo4', + WS_NFE_SITUACAO : 'nfe-service/services/NFeStatusServico4', WS_NFE_CONSULTA_CADASTRO: 'nfe-service/services/CadConsultaCadastro2', - WS_NFE_RECEPCAO_EVENTO : 'nfe-service/services/RecepcaoEvento', - WS_NFE_AUTORIZACAO : 'nfe-service/services/NfeAutorizacao', - WS_NFE_CONSULTA_AUTORIZACAO : 'nfe-service/services/NfeRetAutorizacao', + WS_NFE_RECEPCAO_EVENTO : 'nfe-service/services/NFeRecepcaoEvento4', + WS_NFE_AUTORIZACAO : 'nfe-service/services/NFeAutorizacao4', + WS_NFE_CONSULTA_AUTORIZACAO : 'nfe-service/services/NFeRetAutorizacao4', }, NFE_AMBIENTE_HOMOLOGACAO: { 'servidor' : 'nfehomolog.sefaz.pe.gov.br', - WS_NFE_INUTILIZACAO : 'nfe-service/services/NfeInutilizacao2', - WS_NFE_CONSULTA : 'nfe-service/services/NfeConsulta2', - WS_NFE_SITUACAO : 'nfe-service/services/NfeStatusServico2', + WS_NFE_INUTILIZACAO : 'nfe-service/services/NfeInutilizacao4', + WS_NFE_CONSULTA : 'nfe-service/services/NFeConsultaProtocolo4', + WS_NFE_SITUACAO : 'nfe-service/services/NFeStatusServico4', WS_NFE_CONSULTA_CADASTRO: 'nfe-service/services/CadConsultaCadastro2', - WS_NFE_RECEPCAO_EVENTO : 'nfe-service/services/RecepcaoEvento', - WS_NFE_AUTORIZACAO : 'nfe-service/services/NfeAutorizacao', - WS_NFE_CONSULTA_AUTORIZACAO : 'nfe-service/services/NfeRetAutorizacao', + WS_NFE_RECEPCAO_EVENTO : 'nfe-service/services/NFeRecepcaoEvento4', + WS_NFE_AUTORIZACAO : 'nfe-service/services/NFeAutorizacao4', + WS_NFE_CONSULTA_AUTORIZACAO : 'nfe-service/services/NFeRetAutorizacao4', } } @@ -535,4 +535,4 @@ 'SE': SVC_AN, 'SP': SVC_AN, 'TO': SVC_AN, -} \ No newline at end of file +} From ad5806366c418700e0b958cde239c6f66d304d6f Mon Sep 17 00:00:00 2001 From: Renato Lima Date: Wed, 22 Aug 2018 18:26:24 -0300 Subject: [PATCH 30/34] =?UTF-8?q?[FIX]=20ejei=C3=A7=C3=A3o-324?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pysped/nfe/leiaute/nfe_400.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/pysped/nfe/leiaute/nfe_400.py b/pysped/nfe/leiaute/nfe_400.py index 7e437f32..89ecaef5 100644 --- a/pysped/nfe/leiaute/nfe_400.py +++ b/pysped/nfe/leiaute/nfe_400.py @@ -1401,8 +1401,9 @@ def get_xml(self): xml += self.retirada.xml xml += self.entrega.xml - for a in self.autXML: - xml += a.xml + if self.emit.CNPJ.valor != self.dest.CNPJ.valor: + for a in self.autXML: + xml += a.xml for d in self.det: d.imposto.ICMS.regime_tributario = self.emit.CRT.valor From ee60ba5342f0902f5a0ebc94f0c71e794a3060d0 Mon Sep 17 00:00:00 2001 From: Gabriel Cardoso de Faria Date: Tue, 28 Aug 2018 19:54:24 -0300 Subject: [PATCH 31/34] [FIX] Metodos --- pysped/nfe/webservices_4.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pysped/nfe/webservices_4.py b/pysped/nfe/webservices_4.py index b6adc42e..e1189145 100644 --- a/pysped/nfe/webservices_4.py +++ b/pysped/nfe/webservices_4.py @@ -59,7 +59,7 @@ }, WS_NFE_CONSULTA_CADASTRO: { 'webservice': 'CadConsultaCadastro4', - 'metodo' : 'consultaCadastro2', + 'metodo' : 'consultaCadastro', }, WS_NFE_RECEPCAO_EVENTO: { 'webservice': 'NFeRecepcaoEvento4', @@ -67,11 +67,11 @@ }, WS_NFE_AUTORIZACAO: { 'webservice': 'NFeAutorizacao4', - 'metodo' : 'NfeAutorizacao', + 'metodo' : 'nfeAutorizacaoLote', }, WS_NFE_CONSULTA_AUTORIZACAO: { 'webservice': 'NFeRetAutorizacao4', - 'metodo' : 'NfeRetAutorizacao', + 'metodo' : 'nfeRetAutorizacaoLote', }, WS_DFE_DISTRIBUICAO: { 'webservice': 'NFeDistribuicaoDFe', From 92e8cb85f5e1ae33d25eb4b1ce1cd5ee0589aa0c Mon Sep 17 00:00:00 2001 From: Gabriel Cardoso de Faria Date: Wed, 31 Oct 2018 16:48:30 -0300 Subject: [PATCH 32/34] =?UTF-8?q?[FIX]=20Webservice=20de=20Recep=C3=A7?= =?UTF-8?q?=C3=A3o=20de=20Evento?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pysped/nfe/webservices_4.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pysped/nfe/webservices_4.py b/pysped/nfe/webservices_4.py index 8697056e..b4fdf3f0 100644 --- a/pysped/nfe/webservices_4.py +++ b/pysped/nfe/webservices_4.py @@ -208,14 +208,14 @@ NFE_AMBIENTE_PRODUCAO: { 'servidor': 'www.nfe.fazenda.gov.br', 'servidor%s' % WS_DFE_DISTRIBUICAO: 'www1.nfe.fazenda.gov.br', - WS_NFE_RECEPCAO_EVENTO : 'RecepcaoEvento/RecepcaoEvento.asmx', + WS_NFE_RECEPCAO_EVENTO: 'NFeRecepcaoEvento4/NFeRecepcaoEvento4.asmx', WS_NFE_CONSULTA_DESTINADAS: 'NFeConsultaDest/NFeConsultaDest.asmx', WS_NFE_DOWNLOAD: 'NfeDownloadNF/NfeDownloadNF.asmx', WS_DFE_DISTRIBUICAO: 'NFeDistribuicaoDFe/NFeDistribuicaoDFe.asmx', }, NFE_AMBIENTE_HOMOLOGACAO: { 'servidor': 'hom.nfe.fazenda.gov.br', - WS_NFE_RECEPCAO_EVENTO : 'RecepcaoEvento/RecepcaoEvento.asmx', + WS_NFE_RECEPCAO_EVENTO: 'NFeRecepcaoEvento4/NFeRecepcaoEvento4.asmx', WS_NFE_CONSULTA_DESTINADAS: 'NFeConsultaDest/NFeConsultaDest.asmx', WS_NFE_DOWNLOAD: 'NfeDownloadNF/NfeDownloadNF.asmx', WS_DFE_DISTRIBUICAO: 'NFeDistribuicaoDFe/NFeDistribuicaoDFe.asmx', From a8e55400579e99f1471579e8efeb34874dfcab85 Mon Sep 17 00:00:00 2001 From: Sadson Diego da Silva Souza Date: Tue, 6 Nov 2018 09:37:43 -0300 Subject: [PATCH 33/34] Feature/nfe 4.00 pl 009b4b 01 09 2018 (#22) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * [FIX]Correcao dos tipos de frete para impressao do danfe. * [ADD]Regras de frete NF-e 4.0 * [FIX]Correção frete nfe 4.0 --- pysped/nfe/leiaute/nfe_400.py | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/pysped/nfe/leiaute/nfe_400.py b/pysped/nfe/leiaute/nfe_400.py index 89ecaef5..0e904392 100644 --- a/pysped/nfe/leiaute/nfe_400.py +++ b/pysped/nfe/leiaute/nfe_400.py @@ -1505,6 +1505,31 @@ def set_xml(self, arquivo): self.infNFeSupl.xml = arquivo self.Signature.xml = self._le_noh('//NFe/sig:Signature') + @property + def frete_formatado(self): + if self.infNFe.transp.modFrete.valor == 0: + formatado = '0-do Remetente CIF' + + elif self.infNFe.transp.modFrete.valor == 1: + formatado = '1-do Destinatário FOB' + + elif self.infNFe.transp.modFrete.valor == 2: + formatado = '2-de Terceiros' + + elif self.infNFe.transp.modFrete.valor == 3: + formatado = '3-do Remetente' + + elif self.infNFe.transp.modFrete.valor == 4: + formatado = '4-do Destinatario' + + elif self.infNFe.transp.modFrete.valor == 9: + formatado = '9-sem frete' + + else: + formatado = '' + + return formatado + xml = property(get_xml, set_xml) From b14ec1fc84b6dd92ba56c0836c4f78184a4785d6 Mon Sep 17 00:00:00 2001 From: Luis Felipe Mileo Date: Tue, 7 May 2019 11:26:56 -0300 Subject: [PATCH 34/34] [NEW] ICMS efetivo para cst 60 --- pysped/nfe/leiaute/nfe_400.py | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/pysped/nfe/leiaute/nfe_400.py b/pysped/nfe/leiaute/nfe_400.py index 0e904392..f20c8a8a 100644 --- a/pysped/nfe/leiaute/nfe_400.py +++ b/pysped/nfe/leiaute/nfe_400.py @@ -277,7 +277,7 @@ class ICMS(nfe_310.ICMS): def __init__(self): super(ICMS, self).__init__() - self.pST = TagDecimal(nome='pST' , codigo='', tamanho=[1, 3, 1], decimais=[0, 2, 4], raiz='', obrigatorio=False) + self.pST = TagDecimal(nome='pST' , codigo='', tamanho=[1, 3, 1], decimais=[0, 2, 4], raiz='', obrigatorio=False) self.vBCFCP = TagDecimal(nome='vBCFCP' , codigo='', tamanho=[1, 13, 1], decimais=[0, 2, 2], raiz='', obrigatorio=False) self.pFCP = TagDecimal(nome='pFCP' , codigo='', tamanho=[1, 3, 1], decimais=[0, 2, 4], raiz='', obrigatorio=False) self.vFCP = TagDecimal(nome='vFCP' , codigo='', tamanho=[1, 13, 1], decimais=[0, 2, 2], raiz='', obrigatorio=False) @@ -287,6 +287,10 @@ def __init__(self): self.vBCFCPSTRet = TagDecimal(nome='vBCFCPSTRet', codigo='', tamanho=[1, 13, 1], decimais=[0, 2, 2], raiz='', obrigatorio=False) self.pFCPSTRet = TagDecimal(nome='pFCPSTRet' , codigo='', tamanho=[1, 3, 1], decimais=[0, 2, 4], raiz='', obrigatorio=False) self.vFCPSTRet = TagDecimal(nome='vFCPSTRet' , codigo='', tamanho=[1, 13, 1], decimais=[0, 2, 2], raiz='', obrigatorio=False) + self.pRedBCEfet = TagDecimal(nome='pRedBCEfet', codigo='', tamanho=[1, 3, 1], decimais=[0, 2, 4], raiz='') + self.vBCEfet = TagDecimal(nome='vBCEfet' , codigo='', tamanho=[1, 13, 1], decimais=[0, 2, 2], raiz='') + self.pICMSEfet = TagDecimal(nome='pICMSEfet', codigo='', tamanho=[1, 3, 1], decimais=[0, 2, 4], raiz='') + self.vICMSEfet = TagDecimal(nome='vICMSEfet' , codigo='', tamanho=[1, 13, 1], decimais=[0, 2, 2], raiz='') self.orig = TagCaracter(nome='orig', codigo='', raiz='') # @@ -434,6 +438,12 @@ def get_xml(self): xml += self.pFCPSTRet.xml xml += self.vFCPSTRet.xml + if (self.pRedBCEfet.valor or self.vBCEfet.valor or self.pICMSEfet.valor or self.vICMSEfet.valor): + xml += self.pRedBCEfet.xml + xml += self.vBCEfet.xml + xml += self.pICMSEfet.xml + xml += self.vICMSEfet.xml + elif self.CST.valor == '70': xml += self.modBC.xml xml += self.pRedBC.xml @@ -680,6 +690,10 @@ def set_xml(self, arquivo): self.pFCPSTRet.xml = arquivo self.vFCPSTRet.xml = arquivo self.vICMSDeson.xml = arquivo + self.pRedBCEfet.xml = arquivo + self.vBCEfet.xml = arquivo + self.pICMSEfet.xml = arquivo + self.vICMSEfet.xml = arquivo self.vICMSOp.xml = arquivo self.pDif.xml = arquivo self.vICMSDif.xml = arquivo