Ir para conteúdo
  • Cadastre-se

dev botao

Cancelar NFCe usando o Integrador CE


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

Recommended Posts

  • Membros Pro
Postado

Boa tarde, já fiz uma busca aqui no fórum e até o momento não encontrei, para cancelar uma NFC-e usando o integrador sempre que executo a função de cancelamento me retorna o seguinte erro:

[Content]
Versão Layout:  
Ambiente: 1 
Versão Aplicativo:  
Status Código: 0 
Status Descrição:

ou seja ele não faz nada, alguém tem alguma ideia de como posso proceder com o cancelamento.

  • Moderadores
  • Solution
Postado

Bom dia,

O Cancelamento é tratado como um evento mesmo pelo Integrador Fiscal... Certifique-se apenas de estar setando o modeloDF=65  (NFCe)  para o componente ACBrNFe antes de chamar o evento com dados de Cancelamento.

Verifique também o Log do integrador para identificar algum possível erro que ele esteja retornando.

  • Curtir 2
Consultor SAC ACBr

José Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

  • Moderadores
Postado

Verifique se está gerando corretamente o XML na pasta input do integrador. Marque a opção para gerar log do componente ACBrIntegrador... Através dos logs fica mais fácil identificar o problema.

Consultor SAC ACBr

José Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

  • Membros Pro
Postado (editado)

quando estou mandando cancelar está retornando esse erro:


Erro ao obter resposta do webservice.
ERRO : T2JyaWdhZG8gc29tZW50ZSBhbyB1c28gZG8gSW50ZWdyYWRvciBGaXNjYWw='.

eu estou tentando cancelar pela chave

Editado por brajan
  • Moderadores
Postado

Esse é um retorno de erro do próprio Integrador Fiscal...

Creio que para Cancelamento utilizando o integrador não seja possível ser realizado apenas com a chave, pois o processamento do integrador é Sincrono, não será realizado a consulta para obter o protocolo e efetuar o cancelamento como é feito direto pelo componente... Experimente carregar o XML para efetuar o cancelamento. 

Consultor SAC ACBr

José Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

  • Moderadores
Postado

Nesse caso já não ocorreu erro de transmissão, esse status é da própria Sefaz e indica: 128 - Lote de Evento Processado.

Foi processado mas não retornou, nesse caso precisa consultar a nota para verificar e obter o protocolo de cancelamento, caso tenha sido processado com Êxito. 

Consultor SAC ACBr

José Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

  • Membros Pro
Postado
    FDataModule.ACBrNFCe.EventoNFe.idLote := NumeroLote;
    if (Empresa.Uf = 'CE') and (FDataModule.ACBrNFCe.Integrador = FDataModule.ACBrIntegrador) then
    begin
      StreamXML := TStringStream.Create(XML);
      FDataModule.ACBrNFCe.NotasFiscais.LoadFromStream(StreamXML, False);

      with FDataModule.ACBrNFCe.EventoNFe.Evento.New do
      begin
        infEvento.dhEvento := now;
        infEvento.tpEvento := teCancelamento;
        infEvento.detEvento.xJust := Justificativa;
      end;
    end
if FDataModule.ACBrNFCe.EnviarEvento(NumeroLote) then

eu consegui cancelar mas não estou obtendo o retorno correto 
quando mando cancelar pego esse status usando EventoRetorno.retEvento.Items[0].RetInfEvento.cStat ele me retorna o 128 mas mando mando consulta pelo xml usando WebServices.Consulta.protNFe.cStat ele me traz 100 ao invés de 135

  • Membros Pro
Postado
Tp_CiniEvento:=''
Tp_CiniEvento:='[EVENTO]'
Tp_CiniEvento+='idlote='+alltrim(Str(nrnfce))
Tp_CiniEvento+='[EVENTO001]'
Tp_CiniEvento+='cOrgao='+estado_ibge(u_uf)
Tp_CiniEvento+='CNPJ='+u_cnpj
Tp_CiniEvento+='chNFe='+chave+hb_eol()
Tp_CiniEvento+='dhEvento='+dtoc(mdatasis)+" "+time()
Tp_CiniEvento+='tpEvento='+"110111"
Tp_CiniEvento+='nSeqEvento='+"1"
Tp_CiniEvento+='versaoEvento='+'1.0'
Tp_CiniEvento+='nProt='+prtusonfce
Tp_CiniEvento+='xJust='+'DESISTENCIA CLIENTE'
If !CmdACBrOKNfe(ACBrNfce('NFe.EnviarEvento', {Tp_CiniEvento})) 
   return
endif

Um exemplo de como faço o cancelamento usando o acbrmintor

  • Curtir 1
×
×
  • 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.