Ir para conteúdo
  • Cadastre-se

dev botao

Erro 500 ao chamar https://sefin.nfse.gov.br/sefinnacional/nfse/{chaveAcesso}/eventos


Eugenio Araujo
Ver Solução Respondido por Eugenio Araujo,

Recommended Posts

Boa tarde, estou tentando reimplementar o cancelamento de NFSE aqui na empresa.

Pela documentação do swagger (https://www.nfse.gov.br/swagger/contribuintesissqn/#/) agora os pedidas são feitos em post na seguinte rota: https://sefin.nfse.gov.br/sefinnacional/nfse/{chaveAcesso}/eventos. Porém qualquer chamada que faço nessa rota retorna com Internal Server Error independente do que eu mandar.

Gostaria de saber se nesse novo emissor nacional simples vocês "sabem como/estão conseguindo" fazer o cancelamento de notas fiscais? Muito obrigado pela ajuda.

Link para o comentário
Compartilhar em outros sites

  • 3 meses depois ...
Em 01/12/2023 at 17:53, Eugenio Araujo disse:

Boa tarde, estou tentando reimplementar o cancelamento de NFSE aqui na empresa.

Pela documentação do swagger (https://www.nfse.gov.br/swagger/contribuintesissqn/#/) agora os pedidas são feitos em post na seguinte rota: https://sefin.nfse.gov.br/sefinnacional/nfse/{chaveAcesso}/eventos. Porém qualquer chamada que faço nessa rota retorna com Internal Server Error independente do que eu mandar.

Gostaria de saber se nesse novo emissor nacional simples vocês "sabem como/estão conseguindo" fazer o cancelamento de notas fiscais? Muito obrigado pela ajuda.

Eu to com o mesmo problema, se alguém tiver dado uma luz a você, compartilha aqui com agente. Meu XML teoricamente está válido, pois implementei uma rotina de validação simples baseada no pacote de XSD que eles fornecem. 

Link para o comentário
Compartilhar em outros sites

  • Consultores

Boa tarde a todos,

Complementando o que o @Juliomar Marchetti, já passou.

O novo componente de emissão de notas fiscais de serviço eletrônica - ACBrNFSeX já esta apto a consumir todos os serviços da NFS-e Padrão Nacional.

Lembrando sempre que no momento somente as empresas que são MEI que são obrigadas a emitir suas notas segundo o Padrão Nacional.

As demais empresas dependem da cidade ter aderido a emissão da nota, caso contrario continua como esta.

Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / e-mail: [email protected] / Fone: (16) 9-9701-5030 / Araraquara-SP

Araraquara - A era dos Trólebus

Link para o comentário
Compartilhar em outros sites

  • 3 semanas depois ...
On 3/15/2024 at 3:57 PM, Italo Giurizzato Junior said:

Boa tarde a todos,

Complementando o que o @Juliomar Marchetti, já passou.

O novo componente de emissão de notas fiscais de serviço eletrônica - ACBrNFSeX já esta apto a consumir todos os serviços da NFS-e Padrão Nacional.

Lembrando sempre que no momento somente as empresas que são MEI que são obrigadas a emitir suas notas segundo o Padrão Nacional.

As demais empresas dependem da cidade ter aderido a emissão da nota, caso contrario continua como esta.

Obrigado pela resposta, poderia dar mais detalhes de como fazer?

Sigo tentando chamar o endpoint do wagger (https://www.nfse.gov.br/swagger/contribuintesissqn/#/)  em POST na rota https://sefin.nfse.gov.br/sefinnacional/nfse/{chaveAcesso}/eventos. E sempre me retorna status_code 500 com esse response.text: '{\r\n  "tipoAmbiente": 2,\r\n  "versaoAplicativo": "SefinNac_Pre_1.0.0",\r\n  "dataHoraProcessamento": "2024-04-03T10:51:04.7081027-03:00",\r\n  "erro": []\r\n}'. Não sei se o problema está no endereço que chamo, ou no xml que envio. Estranho que chamadas GET em /nfse/{ChaveAcesso}/eventos também retornam status_code 405 dizendo que o método GET não é aceito, sendo que na própria documentação consta o GET como um método desse endereço.

 

Link para o comentário
Compartilhar em outros sites

51 minutes ago, Italo Giurizzato Junior said:

Bom dia Eugenio,

Você trabalha com qual linguagem de programação?

Bom dia, python, depois de muito tentar e pesquisar encontrei um modelo de XML que funciona aqui. Uma pena a API não responder o erro que aconteceu e em certas situações só mandar "erro": [] e não emitir/cancelar a NFSE.

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

  • Solution
Postado (editado)
On 4/6/2024 at 11:59 AM, Renato Rubinho said:

Bom dia, 

Que bom que resolveu. 

Poderia compartilhar o modelo que resolveu, pois poderá ajudar a outros que tenham o mesmo problema e também precisem de ajuda para resolver.

Sim, fiz um código python que le uma XML de template, troca os placeholders e gera o cancelar a nfse:

XML:

<?xml version="1.0" encoding="UTF-8"?>
<pedRegEvento xmlns="http://www.sped.fazenda.gov.br/nfse" versao="1.00">
    <infPedReg Id="PRE{{order_nfse_number_val}}101101{{cancel_id_val}}">
        <tpAmb>{{tpAmb_val}}</tpAmb>
        <verAplic>{{verAplic_val}}</verAplic>
        <dhEvento>{{actual_billing_time_val}}-03:00</dhEvento>
        <CNPJAutor>{{cnpj_val}}</CNPJAutor>
        <chNFSe>{{order_nfse_number_val}}</chNFSe>
        <nPedRegEvento>{{cancel_id_val}}</nPedRegEvento>
        <e101101>
            <xDesc>Cancelamento de NFS-e</xDesc>
            <cMotivo>2</cMotivo>
            <xMotivo>Serviço não prestado</xMotivo>
        </e101101>
    </infPedReg>
</pedRegEvento>

 

O order_nfse_number é a chave_de_acesso da nota emitida.
No cancel_id to usando 001.


Depois disso é só assinar usando o elemento "infPedReg", comprimir com gzip, encodar pra b64 e chamar a eventos com POST. Minha chamada com requests ficou assim:

response = requests.post(f"{self.sefin_url}/nfse/{chave_acesso}/eventos", json={"pedidoRegistroEventoXmlGZipB64": compressed_xml_b64}, cert=(self.cert_path, self.key_path), headers={"Content-Type": "application/json; charset=utf-8"})

Um dos erros que estava fazendo era no POST passar o campo o campo "dpsXmlGZipB64" que uso na hora de emitir a NFSE ao invés de usar o "pedidoRegistroEventoXmlGZipB64".
É uma pena que essa API se não manda tudo exatamente como tem que ser ela não emite/cancela e também não fala o erro.
Tenho assinado em SHA1 o que acho bem ruim, mas até agora não consegui fazer nenhum outro SHA funcionar, se alguém tá conseguindo assinar com SHA256 ou algum outro e a API deles está recebendo me avisem por favor, pq tive que fazer uma enjambra pra conseguir realizar SHA1 usando a lib do signxml.
 

Editado por Eugenio Araujo
Link para o comentário
Compartilhar em outros sites

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.

The popup will be closed in 10 segundos...