Ir para conteúdo
  • Cadastre-se

dev botao

Erro "CheckSignature, arquivo editado apos a assinatura" Joinville/SC


fernandoschulz
  • Este tópico foi criado há 1624 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Boa tarde pessoal,

Possuo a nfs-e de diversas cidades implementadas e funcionando com o acbr a um bom tempo, porém, a tentar implementar a cidade de Joinville/SC, no serviço de cancelamento da nfs-e sempre me retorna o erro "CheckSignature, arquivo editado apos a assinatura", já tentei debugar comparando o xml antes e depois da assinatura, mudar diversas opções, utilizei o demo do acbr, tentei enviar o xml pelo SoapUI e em todos acontece o mesmo problema, passei o xml em um validador e me retorna que a assinatura realmente está com problema, dessa forma, imagino que seja alguma configuração que estou usando errado pois o envio do lote e consulta de lote e rps consegui implementar sem problemas para esse município, e pelo que vi no Fórum alguns colegas já utilizam essa nfs-e de Joinville pelo acbr e ninguém relatou algo parecido.

Alguém já teve um problema semelhante que possa me dar uma dica/ajuda?

Obs: Todos os fontes estão atualizados.

Agradeço a atenção,
Fernando Schulz.

Link para o comentário
Compartilhar em outros sites

  • Consultores

Bom dia Fernando,

Estamos tentando resolver esse problema.

A questão é que os demais XML ao serem assinados o grupo <Signature> é colocado no nível 2 do XML, já o de cancelamento é no nível 3.

Mas dependendo da configuração usado no componente o grupo <Signature> é colocado no nível 2 deixando o XML errado no que diz respeito ao layout.

Foi feito uma alteração para poder colocar no nível 3, mas isso esta provocando a invalidação da assinatura.

  • Curtir 2
Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / e-mail: [email protected] / Fone: (16) 9-9701-5030 / Araraquara-SP

Araraquara - A era dos Trólebus

Link para o comentário
Compartilhar em outros sites

Boa tarde @Italo Jurisato Junior

Acompanhei uns dias o fórum e percebi que vocês fizeram algumas modificações após outros usuários reportarem erro na assinatura do xml de cancelamento, enfim, resolvi fazer um update e testar em Joinville pra ver se já estava funcionando, porém, ocorreu um erro novamente, mas dessa vez o erro era diferente, o acbr nem tentou enviar o xml pra prefeitura, o erro é o seguinte:

Na Unit ACBrDFeXsMsXmlCapicom na parte onde faz a assinatura do xml:

    // Inserindo Template da Assinatura digital //
    if (not XmlEstaAssinado(AXml)) or (vSignatureNode <> CSIGNATURE_NODE) then
      AXml := AdicionarSignatureElement(AXml, False, docElement, IdSignature, IdAttr);

Após ele assinar o xml por essa função acima ele perdia a tag de fechamento do xml, ficava dessa forma:

<CancelarNfseEnvio xmlns="http://nfews.joinville.sc.gov.br"><Pedido>[...]</Pedido>

Ou seja, como podes reparar acima ele não inseria a tag de fechamento </CancelarNfseEnvio> e dava erro na função logo abaixo dizendo que não conseguiu carregar o xml.

Eu alterei a Unit ACBrNFSeWebServices na parte onde é inserido o DocElement do XML conforme o servidor, ISSJoinville estava setado para ser como:

FdocElemento := FPrefixo3 + 'Pedido';

E eu alterei para ficar igual aos servidores BHISS, Betha e SystemPro:

      proBHISS,
//      proPublica,
      proBethav2,
      proSystemPro,
      proISSJoinville: FdocElemento := FPrefixo3 + 'Pedido></' + FTagGrupo;

Após efetuar essa alteração assinou o xml corretamente e enviou a prefeitura sem problemas, conforme verifiquei no portal cancelou a nota na prefeitura.

Não sei se muda algo nessa parte, mas no caso de Joinville eu teria que ter setado alguma outra configuração pra funcionar sem fazer essas alterações? Minhas configurações de certificado que utilizo em todos os servidores que tenho implementado estão da seguinte forma:

  ACBrNFSe1.Configuracoes.Geral.SSLCryptLib := cryCapicom;
  ACBrNFSe1.Configuracoes.Geral.SSLHttpLib   := httpIndy;
  ACBrNFSe1.Configuracoes.Geral.SSLLib            := libCapicom;
  ACBrNFSe1.Configuracoes.Geral.SSLXmlSignLib := xsMsXmlCapicom;

Caso não e as alterações que fiz estão corretas, coloquei a Unit alterada em anexo.

Agradeço a atenção,
Fernando Schulz.

ACBrNFSeWebServices.pas

Link para o comentário
Compartilhar em outros sites

  • Consultores

Bom dia Fernando,

Muito obrigado pela colaboração, fiz o ajuste e ainda hoje estarei enviando para o repositório.

  • Curtir 1
  • Obrigado 1
Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / e-mail: [email protected] / Fone: (16) 9-9701-5030 / Araraquara-SP

Araraquara - A era dos Trólebus

Link para o comentário
Compartilhar em outros sites

  • 2 meses depois ...

Prezados, 

Apenas repassando um detalhe:

Estive realizando alguns testes de envio de RPS hoje para Joinville e obtive o mesmo erro citado pelo Fernando. Realizando alguns testes pude perceber que o erro estava ocorrendo pelo fato de possuir acentuação em uma string do XML.

Então apenas para deixar relatado, caso mais alguém passar por este problema verifique também se não há acentuação no XML.

 

Bom trabalho a todos.

  • Curtir 2
Link para o comentário
Compartilhar em outros sites

  • 2 semanas depois ...
  • Consultores

Boa tarde Naiara,

Experimenta remover do campo Discriminação os caracteres "{" e "}".

Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / e-mail: [email protected] / Fone: (16) 9-9701-5030 / Araraquara-SP

Araraquara - A era dos Trólebus

Link para o comentário
Compartilhar em outros sites

Em 23/04/2019 at 16:42, Italo Jurisato Junior disse:

Boa tarde Naiara,

Experimenta remover do campo Discriminação os caracteres "{" e "}".

Mesmo removendo o "{" e o "}" ocorre 

CheckSignature, arquivo editado após a assinatura 
Erro no RPS, posição 1 

estou validando o xml em: https://nfemwshomologacao.joinville.sc.gov.br/HomeWebService/ValidatorXml

Mais alguma sugestão?

Não sei mais o que pode ser ?

em anexo o xml

LOTE798-Env-Lot.xml

Link para o comentário
Compartilhar em outros sites

  • Consultores

Bom dia Naiara,

Me parece que houve alteração em uma das units responsáveis por realizar a assinatura no XML, favor atualizar os fontes e refaça os testes.

  • Curtir 1
  • Obrigado 1
Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / e-mail: [email protected] / Fone: (16) 9-9701-5030 / Araraquara-SP

Araraquara - A era dos Trólebus

Link para o comentário
Compartilhar em outros sites

  • 5 meses depois ...
Em 26/04/2019 at 15:23, naiaragomesp disse:

Mesmo removendo o "{" e o "}" ocorre 

CheckSignature, arquivo editado após a assinatura 
Erro no RPS, posição 1 

estou validando o xml em: https://nfemwshomologacao.joinville.sc.gov.br/HomeWebService/ValidatorXml

Mais alguma sugestão?

Não sei mais o que pode ser ?

em anexo o xml

LOTE798-Env-Lot.xml 8 kB · 6 downloads

Teve alguma novidade?

Link para o comentário
Compartilhar em outros sites

  • Administradores

Obrigado por reportar.

Fechando. Para novas dúvidas, criar um novo tópico.

Consultora SAC ACBr

Juliana Tamizou

Gerente de Projetos ACBr / Diretora de Marketing AFRAC
Ajude o Projeto ACBr crescer - Seja Pro

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.  Discord

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

Link para o comentário
Compartilhar em outros sites

  • Este tópico foi criado há 1624 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Visitante
Este tópico está agora fechado para novas respostas
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.