Ir para conteúdo
  • Cadastre-se

dev botao

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

Recommended Posts

Postado

Olá...

 

Estou tentando implementar a NFS-e para o provedor Publica de Itajaí - SC. Por acaso alguém já conseguiu? 

 

Atualizando os fontes, quando envia, ocorre o erro "Autorização do cliente não está configurado neste computador". 

 

Tentei adicionar o provedor proPublica, na lista da procedure TWebServicesBase.OnBeforePost(const HTTPReqResp: THTTPReqResp;

 
(...)

 

 if not (FProvedor in [proGovBr, proSimplISS, proAbaco, proISSNet, proPublica])
 
 
O erro de autorização resolveu, porém daí começou dar o erro: Assinatura do Hash nao confere.
 

 

Alguém tem alguma solução ou alguma ideia do que posso fazer??? 

 

Postado

O erro que ocorre (Autorização do cliente não está configurado neste computador)

é tanto na minha aplicação como no demo do ACBRNFSe. Será que é algum problema com o certificado???  Porém ele está instalado corretamente e meu cliente afirma que é o mesmo certificado que usa para emitir a NF-e.

 

Se tentar a opção "Gerar e Enviar NFSe" ocorre o erro abaixo:

 

Project Demo_ACBrNFSe.exe raised exception class Exception with message 'Não foi possível carregar o arquivo: <Signature xmlns="http://www.w3.org/2000/09/xmldsig#"><SignedInfo><CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315" /><SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1" /><Reference URI=""><Transforms><Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature" /><Transform Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315" /></Transforms><DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" /><DigestValue></DigestValue></Reference></SignedInfo><SignatureValue></SignatureValue><KeyInfo><X509Data><X509Certificate></X509Certificate></X509Data></KeyInfo></Signature></EnviarLoteRpsEnvio>'.

 

  • Consultores
Postado

Bom dia ncc,

 

Você já tentou entrar em contato com o provedor?

 

e expor o problema: Assinatura do Hash nao confere

 

Se não, aproveite e solicite o XML de envio completo ou seja com as TAGs do envelope.

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

2 opções.

- Todo envio na publica tem que ser assinado, inclusive as consultas.

- Não modificar o XML depois de assinado, nem para tirar espaços em branco.

Postado (editado)

xml_exemplo (1).zipBom dia...

 

Entrei em contato com a Publica. Segundo eles, esse erro (Assinatura do Hash nao confere) é mesmo relativo a assinatura, porém eles não sabem me dizer exatamente o que está errado. Eles me repassaram também o que o shdw postou, todo envio tem que ser assinado e não pode ter nenhuma alteração no XML depois de assinado.

 

Do site da prefeitura de Itajaí ( http://nfse.itajai.sc.gov.br/nfse/jsp/externo/downloads.jsp ) baixei os exemplos de XML, que estão em anexo.

xml_exemplo (1).zip

Editado por ncc.star
  • 9 meses depois ...
Postado (editado)

Boa tarde Italo,

segue mais alterações para o provedor Publica -> Itajai/SC

 

implementado o GerarNFSe

 

meu testes pararam no recebimento do XML pela prefeitura...(em Homologação) esta me retornando o seguinte erro:



<return><?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<GerarNfseResposta xmlns="http://www.publica.inf.br" xmlns:ns3="http://www.publica.inf.br/integracao_nfse" xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
 <ListaMensagemRetorno>
  <MensagemRetorno>
   <Codigo>E17</Codigo>
   <Mensagem>A data da emissao do RPS nao podera ser inferior a data de habilitacao do prestador para emissao da NFS-e.</Mensagem>
   <Correcao>Informe uma data de emissao de RPS valida.</Correcao>
  </MensagemRetorno>
 </ListaMensagemRetorno>
</GerarNfseResposta>
</return>

Apesar da mensagem do erro ser bem obvia...

O serviço de homologação foi habilitado na segunda (10/02/2014) e a rps tem data de hoje (14/02/2014)...

Vou entrar em contato com o provedor para ver oque esta acontecendo.

 

Fontes em anexo:

NFSe_Itajai-SC_proPublica.rar

 

 

[OBS: o erro realmente era no provedor, eles tinham habilitado a emissão com uma data totalmente aleatória!!!]

Editado por Akai

Massao Aihara

  • 1 mês depois ...
Postado

Boa tarde Italo,

 

tive que fazer mais algumas alterações para o funcionamento do cancelamento de emissão de NFS-e para o provedor publica.

 

Tive que adicionar Identificador "Id" para o cancelamento das NFS-e, mas para a emissão o mesmo não deve ir no xml.

 

Fontes alterados em anexo.

 

Att.

ProvedorPublica.rar

 

Massao Aihara

  • 3 semanas depois ...
Postado

Boa tarde, pelos testes que fiz encontrei as seguintes situações:

 

No envio de lote RPS (ACBrNFSe.Enviar()):

 

1) Integração com CAPICOM

- Servidor retorna a mensagem de erro: "Assinatura do hash não confere". Fiz a validação do arquivo no site da receita federal e realmente ele está com erro na assinatura.

 

2) Integração com OpenSSL

- Aparece a mensagem: "Error: unable to parse". Está faltando declarar "proPublica" no método "AssinarLibXML" da unit "ACBrNFSeUtil". Segue correção no arquivo em anexo.

- Após a correção acima, o servidor está retornando a mensagem: "Arquivo enviado fora da estrutura do arquivo XML"

 

Acredito que o servidor da prefeitura esteja obrigando o preenchimento do atributo "id". Alguém sabe como faço para declarar o atributo "id" para as tags "InfRps" e "LoteRps" ?

 

ACBrNFSeUtil.pas

Postado (editado)

Seus fontes estão atualizados?

eu tive esses problemas e mandei a alteração para o acbr, o italo subiu elas e esta funcionando normalmente,...

 

sobre ID veja meu outro post...

 

...

Editado por Akai

Massao Aihara

Postado

Sim, os fontes estão atualizados,

 

a rotina ACBrNFSe.Gerar está funcionando, mas o envio de lote apresenta os erros mencionados.

 

Como o provedor prevê o envio de lotes penso que seria bom também ser implementado.

Por isso comentei que se colocar o id nas tags "InfRps" e "LoteRps" talvez funcione o envio de lote, mas não sei como colocar o id nessas tags, para fazer os testes.

Postado

entendi,

 

se não me engano eu mesmo removi, quando fiz as alterações para funcionar o Gerar...

não me lembro bem o motivo,...

 

depois eu pego uma base de cliente para testar,

no momento estou tentando fazer funcionar o provedor DSF para Campinas/SP...

 

se vc puder dar uma força aqui no provedor publica, é so ir debugando que vc vai ver onde devia adicionar o identificador ("Id")...

 

att

Massao Aihara

Postado

Pelo que verifiquei o Provedor pública aceita apenas o id com "i" minúsculo o que inviabiliza a assinatura com o CAPICOM. Tentei usar o OpenSSL mas sempre recebo a mensagem de erro: "Error: signature failed" ao assinar o lote. O InfRps está sendo assinado corretamente.

 

Já entrei em contato com o pessoal da Pública cobrando sobre o Id, mas eles não tem previsão de quando será liberado a correção.

Postado

Boa tarde Italo

 

Fiz os testes, e usando o CAPICOM o servidor da prefeitura está retornando a mensagem de erro "Assinatura do hash não confere" tanto no Envio de lote quanto no Envio de NFSe. Com o OpenSSL está dando falha na assinatura: "Error: signature failed".

 

Antes das alterações, a operação Envio de NFSe funcionava, pois não tinha o atributo id como mencionado pelo Akai.

 

É possível realizar a assinatura do XML sendo que o id é com "i" minúsculo ? Eu nunca consegui fazer funcionar nesses casos.

  • Consultores
Postado

Boa tarde Augusto,

 

Eu utilizo o CAPICOM, usando o programa exemplo, e a opção [Gerar e Enviar NFS-e] o erro vamos dizer assim que eu tive foi que o CNPJ não constava da base de dados, até ai sem nenhum problema, o mais importante que o envio foi realizado, só não foi processado pois o CNPJ não existe na base de dados deles.

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

Boa tarde Italo

 

Fiz o teste colocando um CNPJ de outra empresa, foi apresentada a mensagem "CNPJ do pretador não autorizado a emitir NFSe". Ou seja, a validação do CNPJ é realizada antes da validação do Hash, por isso vc não conseguiu simular. Com o CNPJ do meu cliente aparece a mensagem do Hash inválido.

Postado

1) Para que o envio de lote ("Gerar e Enviar Lote") funcione, o provedor precisa estar configurado da seguinte forma:

ConfigCidade.AssinaRPS  := false;
ConfigCidade.AssinaLote := true;

 

2) Para que o envio da NFS-e ("Gerar e Enviar NFSe") funcione, é preciso realizar a assinatura com a tag "GerarNfseEnvio" presente no XML.

Italo removi alguns comentários que vc colocou nos fontes relacionados ao provedor Publica, pois sem eles dava problema na validação do Hash.

O provedor deverá estar configurado da seguinte forma para envio da NFS-e:

ConfigCidade.AssinaRPS  := true;
ConfigCidade.AssinaLote := true;

 

Alguma sugestão de como alterar os fontes, para que quando for enviar o lote a propriedade "AssinaRPS" fique false ?

 

Eu criei o write para a propriedade na classe TCertificadosConf e antes de chamar a rotina de envio do lote estou setando a propriedade para false,

mas não me parece a forma ideal. De qualquer maneira seguem em anexo os arquivos alterados.

 

As alterações não irão afetar quem já usa da forma atual, através da geração da NFS-e sem o lote.

 

Italo tem como liberar essas alterações ?

AlteraçoesPublica.rar

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