Ir para conteúdo
  • Cadastre-se

dev botao

Duplicidade De Nfe


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

Recommended Posts

Pessoal, não sei se é algo que estou fazendo errado, mas seguindo em clientes que tem internet "ruim", acontece de enviar a nota para a receita, e não receber o retorno, ai quando tento mandar novamente, está dando duplicidade de nota...

 

Alguém poderia me dar umas dicas de como trabalhar o retorno, para que isso não aconteça?

 

Grato

Link para o comentário
Compartilhar em outros sites

Segue abaixo o meu código de como estou fazendo atualmente.
 


  ACBrNFe1.NotasFiscais.Assinar;

  ACBrNFe1.NotasFiscais.Valida;

  ACBrNFe1.Enviar(0);

  ACBrNFe1.NotasFiscais.Items[0].SaveToFile;

  qry.Locate('id',NfsId, []);
  qry.Edit;
  qryprotocolo.AsString := ACBrNFe1.WebServices.Retorno.Protocolo;
  qrychave_nfe.AsString := ACBrNFe1.WebServices.Retorno.ChaveNFe;
  qryarquivo_xml.AsString := ACBrNFe1.NotasFiscais.Items[0].NomeArq;
  qryambiente.AsString    := IfThen(Ambiente = 'HOMOLOGACAO', '1', '2');
  qrycodigo_retorno_nfe.AsInteger := ACBrNFe1.WebServices.Retorno.cStat;
  qry.Post;
Link para o comentário
Compartilhar em outros sites

Boa tarde,

 

É o seguinte zumbi, este erro e comum em clientes com internet muito ruim, eu mesmo ja passei por isso. Há varias maneiras de vc identificar e corrigir a situação:

 

- se ocorreu erro 105 (mais comum por lentidão no ws). você só tem que armazenar o recibo e então consultar a situação da NFe mais tarde.

- se por algum motivo não receber o retorno, voce pode consultar a situação da nota quando estiver efetuando o reenvio.

- quando você efetuar o envio da e retornar duplicidade, dois tipos de retorno você poderá receber. 

   1 - Duplicidade de NF-e: quando foi efetuado o envio da NF-e mas esta com a mesma chave.

   1 - Duplicidade de NF-e com chave diferente: neste caso, houve envio da nf-e duas vezes mas gerou o cNF diferente para cada uma, neste caso, na mesma msg de resposta você receberá a chave de acesso numero do recibo que foi utilizado na primeira emissão. Você só tem que pegar esse recibo e chave, atualizar seus arquivos com eles e efetuar o BuscaProc utilizando estas informações. Ou seja, seu primeiro envio esta correto, o segundo envio esta incorreto e vai ser ignorado e a primeira nota vai estar autorizada.

 

Basta você analisar a situação e preparar teu aplicativo pra se comportar de acordo com a situação.

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

Boa Tarde!

 

Por favor, estou com esse problema também em alguns casos. Quando ocorre o erro de duplicidade, na situação: "1 - Duplicidade de NF-e com chave diferente", qual o comando para eu pegar o número da chave correto(o que aparece na mensagem de erro) e do protocolo?

 

Grato!!

Link para o comentário
Compartilhar em outros sites

  • Moderadores

Obrigado pelo esclarecimento Roberto..

 

Você teria algum exemplo de como eu faço para pegar este retorno?

 

e como faço para consultar o sstatus da nota antes de enviar?

Boa tarde Zumbi, dê uma lida nestes tópicos.

 

 
 
 
 
 
Existem mais tópicos tratando deste assunto, procure por cStatus=105 ou "em processamento".
  • Curtir 1


logoacbr.pngConheça o Portal do Projeto ACBr

Ajude o Projeto ACBr crescer - Assine o SAC ACBr
Assine um dos planos de longa duração do SAC ACBr, obtenha Descontos Especiais, Parcele no Cartão e ainda ganhe Brindes Exclusivos. Saiba mais aqui

Conheça o ACBrLib, o ACBr de forma nativa para qualquer linguagem de programação. Saiba mais aqui

 

 

 

 

Link para o comentário
Compartilhar em outros sites

Bom dia,

 

Pessoal, não tenho um exemplo disponível aqui agora, mais tarde se sobrar um tempinho eu posto algum exemplo. Mas é simples, quando vocês efetuarem o envio dessa nota vocês devem armazenar a situação dela para mais tarde poder tratar esses erros, enfim, antes de efetuar o reenvio você efetuar uma consulta da nfe. Ele vai retornar 3 status que denotam duplicidade. Segue:

 

  • 204  - Duplicidade de NF-e [nRec:999999999999999]

neste caso a NFe esta com a mesma chave, então basta você utilizar a chave que você tem e o nRec retornado e efetuar um BuscaProc.

 

  • 562 - Rejeição: Código Numérico informado na Chave de Acesso difere do Código Numérico da NF-e [chNFe:99999999999999999999999999999999999999999999]

Neste caso, você esta com duas chaves de acesso diferentes. EX: 

Você gerou uma NF-e e tentou enviar e por algum motivo não retornou processado. Após isto você tentou reenviar esta mesma nota e alterou o cNF *** e a chave de acesso ficou diferente.

 

Neste caso vc esta cometendo erro já no reenvio, ou seja, a nota não deve ter seu cNF alterado caso ja tenha sido enviado ao ws anteriormente, ou seja, no reenvio voce deve pegar este mesmo cNF anterior e informar no XML pra evitar diferença na chNFe.

 

Mas se aconteceu, você pega esta chave retornada na msg e ela será a chave correta, faz uma consulta da situação da NF-e utilizando ela.

 

  • 539  Duplicidade de NF-e com diferença na Chave de Acesso [chNFe: 
99999999999999999999999999999999999999999999][nRec:999999999999999]
 

Mesma situação do retorno acima e o mesmo tratamento se aplica com um diferencial que o recibo do primeiro envio também é retornado, ou seja, você pode utiliza-los para efetuar uma BuscaProc e autorizar sua NF-e.

 

 

Estas são as dicas de como tratar e como prevenir os erros, no entanto, a maneira como você vai implementar/tratar estas situações varia de sistema para sistema.

 

Como o Kiko mencionou acima, deem uma buscada que tem muita informação disponível, basta estuda-las e aplicar os métodos mencionados para adequar seus sistema. 

 

 

*** Sempre que for efetuar o reenvio procurem carregar o XML gerado e só alterar as informações que precisarem ser alteradas. Se precisarem gerar o XML novamente com base nas informações do banco de dados, uma coisa, pelo menos, vocês devem ter, e esta é a chave de acesso ou então gravar o código numerico da chave (cNF), pois se vocês gerarem novamente a chave e utilizar o mesmo cNF não haverá diferença da chave de acesso anterior com a do xml gerado agora.

Editado por Roberto.Godinho
Link para o comentário
Compartilhar em outros sites

Então eu teria que fazer da seguinte forma:

 

- consultar NF-e

- Já existe, re-imprimir.

- não existe, validar, enviar;

 

Só que no meu caso, como faço para montar novamente o XML, sendo que eu não recebi o retorno do protocolo ? ou quando faço a Consulta o Componente já é carregado com as informações da NF-e?

Link para o comentário
Compartilhar em outros sites

  • 3 meses depois ...
  • Membros Pro

Boa noite, como eu faria isso ??

 

  • 204  - Duplicidade de NF-e [nRec:999999999999999]

neste caso a NFe esta com a mesma chave, então basta você utilizar a chave que você tem e o nRec retornado e efetuar um BuscaProc.

 

Desculpe a ignorância, mas resposta do q ? gerado onde ??

 

Obrigado

Link para o comentário
Compartilhar em outros sites

  • 7 meses depois ...
  • Membros Pro

Pessoal, está acontecendo um problema num único cliente, vou postar o xml como exemplo.

Já li as informações do manual, já revirei o forum mas não consigo chegar a uma explicação plausível.

 

Se alguém puder me indicar um tópico, ou me ajudar com esse problema, eu agradeço.

 

Att.

 

Leonardo Freitag

51141001365698000101650010000307621000307620-nfe.xml

assinatura.png

Link para o comentário
Compartilhar em outros sites

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

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • 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...