Ir para conteúdo
  • Cadastre-se

dev botao

Erro ao inutilizar NFe e NFCe com OpenSSL


Ver Solução Respondido por Daniel Simoes,
  • Este tópico foi criado há 3080 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Postado

Bom dia senhores.

 

Após a liberação das últimas alterações referente a problemas na assinatura utilizando OpenSSL, começou a ocorrer o seguinte erro na inutilização de número de NF:

Erro Interno: 0
Erro HTTP: 400

 

Testei com Capicom e funcionou corretamente. Pude constatar que isso ocorre pois o XML do pedido de inutilização é gerado de forma errada (em anexo os dois XMLs). 

Para OpenSSL está adicionando <?xml version="1.0"?>  sendo que já existe essa informação em <?xml version="1.0" encoding="UTF-8"?>.

Atualizei DLLs e Schemas mas não corrigiu o problema. Ao debugar verifiquei que esse trecho é adicionado na function TDFeOpenSSL.Assinar após a execução da instrução:

  XmlAss := XmlSecSign(AXml, AnsiString(SignatureNode),
                             AnsiString(SelectionNamespaces),
                             AnsiString(infElement));

Não senti segurança para fazer alterações neste método. Agradeço a quem puder ajudar.

CAPICOM_15160600298500084765001000000507000000507-ped-inu.xml

OPENSSL_15160600298500084765001000000507000000507-ped-inu.xml

Postado

Agora que vi que a solução era mais simples que eu imaginava. Tem que alterar o método Assinar, conforme também foi feito para Capicom, adicionando a linha:

XmlAss := StringReplace(XmlAss, '<?xml version="1.0"?>', '', []);

 

Arquivo alterado em anexo.

ACBrDFeOpenSSL.pas

  • Curtir 1
Postado
1 hora atrás, Daniel Simoes disse:

Apliquei um Workaround, baseado nas sugestões... favor atualizar pelo SVN e testar

Funcionou. Muito obrigado!

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

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • 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.