Login Registre-se
Erro E324 em NFSE GOIANIA  XML
Índice dos Fóruns » NF-e / NFS-e / CT-e / CF-e / Certificados Digitais
Autor Mensagem
rafaelmw

JavaC Membro

Membro desde: 14/08/2015 18:39:29
Mensagens: 18
Offline

Bem galera , estou tentando gerar uma NFSE (Goiania) e estou recebendo o seguinte resposta:
<GerarNfseResposta xmlns="http://nfse.goiania.go.gov.br/xsd/nfse_gyn_v02.xsd">
<ListaMensagemRetorno>
<MensagemRetorno>
<Codigo>E324</Codigo>
<Mensagem>Assinatura do RPS inválida.</Mensagem>
<Correcao>O RPS deve conter assinatura digital vinculada a certificado digital padrão ICP Brasil, não revogado e não expirado.</Correcao>
</MensagemRetorno>
</ListaMensagemRetorno>
</GerarNfseResposta>
Alguem tem alguma luz ? acho que o problema é na hora de gerar o digestValue, já que nao sei muito bem como gera-lo...
Segue em anexo o xml que eu gero com o arquivo.
 Nome do arquivo Teste2.xml [Disk] Download
 Descrição
 Tamanho 5 Kbytes
 Baixado:  127 vez(es)

cado_arena

JavaC Membro

Membro desde: 06/08/2013 15:11:59
Mensagens: 29
Offline

Olá Rafael,

Com o XML que você enviou não consigo verificar a assinatura, mas você mesmo pode fazer isto através do seguinte link:

https://www.receita.fazenda.gov.br/Aplicacoes/SSL/ATBHE/assinadoc/ValidadorAssinaturas.app/valida.aspx

Pelo que estou entendendo você está assinando a TAG "<nfse:InfDeclaracaoPrestacaoServico>", não deveria ser a TAG "<nfse:Rps>"? Como está o exemplo do XML fornecido pela prefeitura ou no manual? Podes fornecer o manual para darmos
uma olhada?

Apenas por garantia, seu certificado é ICP Brasil, está valido e não revogado correto?

Abraço.
rafaelmw

JavaC Membro

Membro desde: 14/08/2015 18:39:29
Mensagens: 18
Offline

Então as informações sobre a NFSE se encontram no link ao lado (inclusive lá tem um exemplo). > https://docs.google.com/document/d/1B6L11ZGv2iXMfxCtIJxgzLaDCyeF-tCJ82ELysnJaTs/edit
Sobre o certificado é sim ICP Brasil e esta valido.Sobre a assinatura eu estou assinando a tag "<nfse:Rps>" e não a "<nfse:InfDeclaracaoPrestacaoServico>". Agora estou em duvida no que colocar no digest value. Como que funciona a geração desse valor ?
rafaelmw

JavaC Membro

Membro desde: 14/08/2015 18:39:29
Mensagens: 18
Offline

Esse aqui é o codigo que estou utilizando. Vale lembrar que estou utilizando as classes que gerei absorvendo o .xsd e para transmitir estou utilizando as classes que gerei utilizando o .wsdl

Esse é o metodo que gera a certificacao
cado_arena

JavaC Membro

Membro desde: 06/08/2013 15:11:59
Mensagens: 29
Offline

Rafael,

Já tentou enviar sem setar o Digestvalue?

Para gerar o Digestvalue dê uma olhada nos dois links a seguir, o primeiro resume como deve ser gerado o Digestvalue e o segundo é uma classe que contém um trecho que gera o Digestvalue para a NFe de produtos, mas deve servir para a sua NFSe também.

http://pt.stackoverflow.com/questions/423/como-calcular-o-digestvalue-do-xml

http://www.guj.com.br/java/83758-assinaturas-de-arquivos-xml-da-nfe#448662

Até.
rafaelmw

JavaC Membro

Membro desde: 14/08/2015 18:39:29
Mensagens: 18
Offline

sem o digest value eu recebo
<?xml version="1.0"?>
<GerarNfseResposta xmlns="http://nfse.goiania.go.gov.br/xsd/nfse_gyn_v02.xsd">
<ListaMensagemRetorno>
<MensagemRetorno>
<Codigo>E160</Codigo>
<Mensagem>Arquivo em desacordo com o XML Schema.</Mensagem>
<Correcao>Consulte o Manual da NFS-e para saber quais são as versões de XML Schema suportadas pelo sistema.</Correcao>
</MensagemRetorno>
</ListaMensagemRetorno>
</GerarNfseResposta>
cado_arena

JavaC Membro

Membro desde: 06/08/2013 15:11:59
Mensagens: 29
Offline

Rafael,

Verifique os links que te passei, você precisará alterar o seguinte trecho de sua classe.



Você está perto, precisa de alguns ajustes apenas. Caso não consiga post que te ajudaremos. reveja o trecho que mencionei, principalmente como você está setando o DigestValue.



Você não precisa setar o valor do DigestValue, ele será criado conforme o método que você definir.

Até.
rafaelmw

JavaC Membro

Membro desde: 14/08/2015 18:39:29
Mensagens: 18
Offline

Então eu também esperava que esse valor fosse gerado, porem ele não é... imagino que esteja faltando algo que eu nao esteja vendo ... algum metodo que tenho que chamar manualmente para que o valor seja gerado...
estou anexando o jar das classes que estou usando, e as classes de comunicacao obtidas com o wsdl.
 Nome do arquivo nfse_gyn_v02.jar [Disk] Download
 Descrição nfse
 Tamanho 816 Kbytes
 Baixado:  117 vez(es)

 Nome do arquivo comunicacao.rar [Disk] Download
 Descrição comunicacao
 Tamanho 5 Kbytes
 Baixado:  109 vez(es)

cado_arena

JavaC Membro

Membro desde: 06/08/2013 15:11:59
Mensagens: 29
Offline

Rafael,

O que temos que resolver é a assinatura e não a comunicação. No link que te passei para verificar a assinatura, a receita validou o arquivo?

https://www.receita.fazenda.gov.br/Aplicacoes/SSL/ATBHE/assinadoc/ValidadorAssinaturas.app/valida.aspx
rafaelmw

JavaC Membro

Membro desde: 14/08/2015 18:39:29
Mensagens: 18
Offline

É, eu imagino que não seja a comunicação, só coloquei ela pois as vezes alguém desenvolveu utilizando algo parecido e pode notar algo de diferente. E quanto a validacao no site aparece para mim "A assinatura digital do documento fornecido não é válida. ". Sera que é o meu signature value ?
cado_arena

JavaC Membro

Membro desde: 06/08/2013 15:11:59
Mensagens: 29
Offline

Rafael,

Gere o XML assinado sem o DigestValue e veja se é validado.
rafaelmw

JavaC Membro

Membro desde: 14/08/2015 18:39:29
Mensagens: 18
Offline

mesmo erro... =/
cado_arena

JavaC Membro

Membro desde: 06/08/2013 15:11:59
Mensagens: 29
Offline

Rafael,

Estou testando com a classe que te informei para ver se assina com o DigestValue o seu XML e passa na validação da receita. Depois posto aqui.
rafaelmw

JavaC Membro

Membro desde: 14/08/2015 18:39:29
Mensagens: 18
Offline

Então, nao cheguei nem a testar tentando pegar o xml e assinando manualmente... estava tentando utilizar o que o xsd já havia me gerado... mais se vc esta conseguindo de outra forma poste ai que eu dou uma olhada...
cado_arena

JavaC Membro

Membro desde: 06/08/2013 15:11:59
Mensagens: 29
Offline

Rafael,

Usando o assinador de NFe de produto e incluindo um atributo de Id na TAG Rps consegui gerar uma assinatura com o DigestValue que foi validada pela Receita. Segundo o documento que você compartilhou, Goiania segue o padrão ABRASF 2.0. Fui atrás da documentação e vi que seu XMl está errado, baixe o manual da versão 2.0 pelo seguinte endereço:

http://www.abrasf.org.br/paginas_multiplas_detalhes.php?cod_pagina=1&titulo=TEMAS%20T%C9CNICOS&data=nao

Veja que no item 4.5.3 - Geração de NFS-e, informa o conteúdo do "GerarNfseEnvio" tem que tem o tipo composto(tc) "tcDeclaracaoPrestacaoServico" que possui as estrutura de "InfDeclaracaoPrestacaoServico" e "Signature". Veja o exemplo:



A o atributo "Id" da tag "RPS" é o que será assinado. Usando a classe do seguinte link com um pequeno ajuste você irá conseguir gerar a assinatura.

http://www.guj.com.br/java/83758-assinaturas-de-arquivos-xml-da-nfe#448662

Aqui no fórum também você consegue uma classe para assim como a de cima para fazer a assinatura, por exemplo no link a seguir:

http://www.javac.com.br/jc/posts/list/994-nfe-cce-e-dpec-assinatura-de-todos-os-xmls.page

No método assinar que o macial disponibilizou você pode alterar o tipo para a tag que você quer assinar, que seria a RPS. Então no seu caso o método da classe poderia ficar assim:



Da pra melhorar, foi só uma palha.

Espero ter ajudado, qualquer coisa chama ai.

Esta mensagem foi editada 2 vezes. Última atualização foi em 17/08/2015 16:20:54

 
Índice dos Fóruns » NF-e / NFS-e / CT-e / CF-e / Certificados Digitais
Ir para:   
Powered by JForum 2.1.9 © JForum Team