Estou desenvolvendo a nota fiscal eletronica de vitoria-es, estou utilizando o php com o pacote de nfephp-org/sped-nfse-nacional, fiz uns ajustes para atender a prefeitura, ao enviar o rps retorna essa mensagem “Não foi possível validar a assinatura do arquivo.”
Boa tarde, obrigado pelo retorno, realmente havia um projeto inacabado, porem devido a complexidade de um unico framework para atender todas as prefeituras eles fragmentaram em pequenos projetos, esse da nota nacional esta bem completo ele gera todas os tipos de requisicoes, atribui a assinatura no xml, fiz o que vc sugeriu em outros posts de começar pela consulta de rps, e esta funcionando, o webservice responde e de envio de rps tambem responde, fiz varios testes com campos errados, faltando assinatura digital e todas o webservice retorna o erro porem ao enviar xml com todas as informações corretas recebo essa da assinatura, olha o que retorna:
O Erro E179 quer dizer que o certificado que você está usando para assinar a Nota, não está liberado na Prefeitura de Vitória para emissão.
Consultando o CNPJ do Certificado ele consta em Vila Velha.
Tem certeza que é em Vitória que você precisa emitir e não em Vila Velha?
Os dois usam a mesma solução, muda apenas o endereço do webservice.
O Script esta preparado para as duas prefeituras, baseado na codigo do municipio o sistema ira direcionar para a configuração correspondente. Esse CNPJ em questao é de Vila Velha e verifiquei todos os parâmetros e estao corretos, estou usando o webservice de homologação.
Será que a assinatura está sendo montada de maneira correta? Existe alguma forma de verificar a veracidade da assinatura?
Obs. no site da prefeitura tem uma area de verificação do xml, quado eu testo o xml do rps, mesmo com assinatura, é validado, quando testo o xml do soap (completo) ele da a mensagem: “A mensagem XML do cabeçalho do arquivo enviado está fora do padrão especificado. Consulte o Manual da NFS-e para saber quais são as versões de XML Schema suportadas pelo sistema”
Quando vc diz liberado, o que se refere? o cliente consegue emitir nota via portal (nota manualmente) , para que ele posso enviar via webservice precisa de alguma autorizacao especial da prefeitura?
Luiz quero agradecer muito a sua ajuda, essa semana retomei o processo da nota fiscal enviada via soap e continuava o erro de autenticação, mas ao fazer uma comparação linha a linha do methodo assinaXML() do arquivo que vc compartilhou eu vi que na função “C14N(false, false, NULL, NULL);” estava dessa forma e no meu script estava C14N(true, false, null null); e ao deixar igual ao seu a prefeitura passou a aceitar o envio do arquivo. Retornando:
<?xml version="1.0" encoding="utf-8"?>
<EnviarLoteRpsResposta xmlns:xs="http:\\www.w3.org\2001\XMLSchema-instance\" xmlns=\"http:\\www.abrasf.org.br\nfse.xsd\">
<Protocolo>b3881ebc-f54a-40eb</Protocolo>
<ListaMensagemRetorno>
<MensagemRetorno>
<Codigo>A31</Codigo>
<Mensagem>Arquivo processado com sucesso</Mensagem>
<Correcao>Todos os RPS do arquivo foram convertidos em NFS-e com sucesso. </Correcao> </MensagemRetorno>
<MensagemRetorno>
<Codigo>A32</Codigo>
<Mensagem>Arquivo processado com sucesso</Mensagem>
<Correcao>O arquivo passou com sucesso pelas validações física e lógica.</Correcao> </MensagemRetorno>
</ListaMensagemRetorno>
</EnviarLoteRpsResposta>
</RecepcionarLoteRpsResult>
</RecepcionarLoteRpsResponse>
</soap:Body>
</soap:Envelope>