Voltar   OpenNFSe > NFS-e > Área relacionada a NFS-e
Stats Comunidade Calendário Postados Hoje Pesquisar

Resposta
 
LinkBack Ferramentas do Tópico Modos de Exibição

 
  #1 (permalink)  
Antigo 06/07/2010
Junior Member
Wannabe
Points: 478, Level: 9 Points: 478, Level: 9 Points: 478, Level: 9
Activity: 33.3% Activity: 33.3% Activity: 33.3%
Last Achievements
 
Registrado em: Jul 2010
Posts: 5
Thanks: 1
Thanked 0 Times in 0 Posts
Activity Longevity
0/20 19/20
Today Posts
ssssssss5
Question Problema Cancelamento NFS-e

Boa tarde,

Tenho uma logica de assinar e enviar(gerar) NFS-e que funciona perfeitamente.

Mas na hora de invocar o método de cancelamento de NFS-e, o sistema me retorna o seguinte erro - aparentemente não tratado - em relação a assinatura:

Citação:
0 - Ocorreu um erro Inesperado. (The XML signature in file invalid !!!!! (bad))
0 sendo o n° do erro, e o texto a descrição do mesmo, retornados pela estrutura ListaMensagemRetorno.


O XML que envio é o seguinte (retirei algumas informações do certificado e zerei CNPJ / Inscrição Municipal propositalmente):


Citação:
<?xml version="1.0" encoding="utf-8"?>
<CancelarNfseEnvio xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.abrasf.org.br/nfse.xsd">
<Pedido>
<InfPedidoCancelamento Id="cancelamento201000000000444">
<IdentificacaoNfse>
<Numero>201000000000444</Numero>
<Cnpj>000000000</Cnpj>
<InscricaoMunicipal>0000000000</InscricaoMunicipal>
<CodigoMunicipio>3106200</CodigoMunicipio>
</IdentificacaoNfse>
<CodigoCancelamento>2</CodigoCancelamento>
</InfPedidoCancelamento>
<Signature Id="Ass_cancelamento201000000000444" xmlns="http://www.w3.org/2000/09/xmldsig#">
<SignedInfo>
<CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315#WithComments" />
<SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1" />
<Reference URI="#cancelamento201000000000444">
<Transforms>
<Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature" />
</Transforms>
<DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" />
<DigestValue>S/dIhFuaDfP2SJ6EsjThisCGTYg=</DigestValue>
</Reference>
</SignedInfo>
<SignatureValue>.......</SignatureValue>
<KeyInfo>
<X509Data>
<X509Certificate>......</X509Certificate>
</X509Data>
</KeyInfo>
</Signature>
</Pedido>
</CancelarNfseEnvio>
Estou precisando cancelar notas e não consigo resolver este problema, sendo que as logicas de assinatura/envio são as mesmas que da geração de NFS-e e tudo funciona perfeitamente.

Vocês teriam alguma orientação/sugestão ?

Caso precisem de mais alguma informação, é so me perguntar.

Muito obrigado.
Responder com Citação

 
  #2 (permalink)  
Antigo 12/07/2010
Avatar de LuizVaz
Administrator
Super Admin
Points: 10,505, Level: 68 Points: 10,505, Level: 68 Points: 10,505, Level: 68
Activity: 0% Activity: 0% Activity: 0%
Last Achievements
 
Registrado em: Oct 2009
Localização: Belo Horizonte
Posts: 86
Thanks: 2
Thanked 6 Times in 6 Posts
Activity Longevity
0/20 20/20
Today Posts
sssssss86
Enviar mensagem via Windows Live Messenger para LuizVaz Enviar mensagem via Yahoo para LuizVaz
Padrão

Na linha:
<CancelarNfseEnvio xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.abrasf.org.br/nfse.xsd">

Mude para:
<CancelarNfseEnvio xmlns:ns="http://www.abrasf.org.br/nfse.xsd">

Isso corrige a validação do XML vi schemas.
Não adicione outros esquemas porque dá problema do Back-end da PBH.

Verifique se você realmente está enviando um arquivo UTF-8.
Senão, troque o cabeçalho para:
<?xml version="1.0" encoding="ISO-8859-1"?>

Atenção ao CASE SENSITIVE.

Mas quanto ao erro, verifique se a Data da Nota está dentro do Fechamento e que a Cidade do Tomador seja BELO HORIZONTE.

Senão você só poderá fazer SUBSTITUIÇÃO da Nota.
E isso é somente via Site.

Nos informe se persistir o ERRO.

Att,
Luiz Vaz
Responder com Citação
The Following User Says Thank You to LuizVaz For This Useful Post:

 
  #3 (permalink)  
Antigo 13/07/2010
Junior Member
Wannabe
Points: 478, Level: 9 Points: 478, Level: 9 Points: 478, Level: 9
Activity: 33.3% Activity: 33.3% Activity: 33.3%
Last Achievements
 
Registrado em: Jul 2010
Posts: 5
Thanks: 1
Thanked 0 Times in 0 Posts
Activity Longevity
0/20 19/20
Today Posts
ssssssss5
Padrão

Muito obrigado Luiz.

Realmente, retirei aqueles namespaces e funcionou corretamente!

Quanto a substituição, é realmente estranho até hoje não terem criado esse método.

Penso que consultarei a nota atual no WS da PBH e verificando que existe uma nota a substituindo, criarei esta nova automaticamente e farei o vinculo internamente.

Abraço
Responder com Citação

 
  #4 (permalink)  
Antigo 14/07/2010
Junior Member
Wannabe
Points: 478, Level: 9 Points: 478, Level: 9 Points: 478, Level: 9
Activity: 33.3% Activity: 33.3% Activity: 33.3%
Last Achievements
 
Registrado em: Jul 2010
Posts: 5
Thanks: 1
Thanked 0 Times in 0 Posts
Activity Longevity
0/20 19/20
Today Posts
ssssssss5
Padrão

Citação:
Postado Originalmente por chrisbhmg Ver Post
Muito obrigado Luiz.

Realmente, retirei aqueles namespaces e funcionou corretamente!

Quanto a substituição, é realmente estranho até hoje não terem criado esse método.

Penso que consultarei a nota atual no WS da PBH e verificando que existe uma nota a substituindo, criarei esta nova automaticamente e farei o vinculo internamente.

Abraço
O que acham da ideia da substituição?

Abraço
Responder com Citação

 
  #5 (permalink)  
Antigo 17/07/2010
Avatar de LuizVaz
Administrator
Super Admin
Points: 10,505, Level: 68 Points: 10,505, Level: 68 Points: 10,505, Level: 68
Activity: 0% Activity: 0% Activity: 0%
Last Achievements
 
Registrado em: Oct 2009
Localização: Belo Horizonte
Posts: 86
Thanks: 2
Thanked 6 Times in 6 Posts
Activity Longevity
0/20 20/20
Today Posts
sssssss86
Enviar mensagem via Windows Live Messenger para LuizVaz Enviar mensagem via Yahoo para LuizVaz
Padrão

Citação:
Postado Originalmente por chrisbhmg Ver Post
O que acham da ideia da substituição?

Abraço
Não faça isso, Se criar uma nova nota o Prestador vai ter que pagar os impostos novamente.

Você pode deixar que o Prestador faça a substituição pelo próprio site.

A substituição pelo site na verdade cancela a nota original e cria uma nova com referência para a nota antiga.

Você pode fazer esse relacionamento no seu programa usando o método ConsultaNFSe.
Passando o período para o método ele traz todas as notas canceladas e vigentes.

O retorno é um XML gigante com todas as notas.
Assim você pode processar nota a nota e atualizar seu banco de dados.

É o que eu faço.

Att,
Luiz Vaz
Responder com Citação

 
  #6 (permalink)  
Antigo 17/07/2010
Junior Member
Wannabe
Points: 478, Level: 9 Points: 478, Level: 9 Points: 478, Level: 9
Activity: 33.3% Activity: 33.3% Activity: 33.3%
Last Achievements
 
Registrado em: Jul 2010
Posts: 5
Thanks: 1
Thanked 0 Times in 0 Posts
Activity Longevity
0/20 19/20
Today Posts
ssssssss5
Padrão

Ah sim sim, isso mesmo que estou falando.

O cara seleciona quais notas ele substituiu e ai ele clica em "Substituidas" ou algo do gênero, e o sistema cria as novas notas localmente substituidoras e faz a referência tambem na base local entre as canceladas e a substituidoras.

Obrigado.
Responder com Citação

 
  #7 (permalink)  
Antigo 18/07/2010
Avatar de LuizVaz
Administrator
Super Admin
Points: 10,505, Level: 68 Points: 10,505, Level: 68 Points: 10,505, Level: 68
Activity: 0% Activity: 0% Activity: 0%
Last Achievements
 
Registrado em: Oct 2009
Localização: Belo Horizonte
Posts: 86
Thanks: 2
Thanked 6 Times in 6 Posts
Activity Longevity
0/20 20/20
Today Posts
sssssss86
Enviar mensagem via Windows Live Messenger para LuizVaz Enviar mensagem via Yahoo para LuizVaz
Padrão

Ah sim,

se você sonseguir cancelar um nota, você pode criar outra sem necessidade de substituir no site.

As restrições são que o tomador da Nota deve ser de Belo Horizonte e que a Nota ainda não tenha os impostos recolhidos.
Fora isso você pode cancelar e gerar uma nova nota.

Outra coisa que você pode fazer é usar o Número do RPS para controlar a relação entre as notas.

Eu uso o número de nota interno dos sistemas como o número do RPS.
Assim quando uma nota é cancelada eu associo isso internamente pelo código do RPS.

Atenciosamente,
Luiz Vaz
Responder com Citação
Resposta

Tags
cancelar nfse assinatura


Regras para Posts
Você não pode postar novos tópicos
Você não pode postar respostas
Você não pode postar anexos
Você não pode editar seus posts

Código [IMG] Sim
Código HTML Não
Trackbacks are Sim
Pingbacks are Sim
Refbacks are Sim



Horários baseados na GMT -2. Agora são 00:07.



vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO 3.3.0