Ir para conteúdo
  • Cadastre-se

dev botao

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

Recommended Posts

Postado

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.

  • Consultores
Postado

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 / Araraquara-SP

Araraquara - A era dos Trólebus

Postado

Ah entendi, dei azar que peguei o erro bem quando estava implementando uma nova cidade e acabei achando que era algo que eu estava fazendo errado, enfim, agradeço a resposta e fico no aguardo.

Obrigado,
Fernando Schulz.

  • Curtir 2
Postado

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

  • 2 meses depois ...
Postado

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
  • 2 semanas depois ...
Postado
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

  • 5 meses depois ...
Postado

Bom dia, 

quando um lote havia mais de um rps, ao assinar o segundo rps a assinatura do primeiro ficava inválida, mas atualizando os fontes está tudo certo. Obrigada pela atenção e ajuda.

  • Curtir 2
  • Administradores
Postado

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 !!

  • Este tópico foi criado há 1872 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.