Ir para conteúdo
  • Cadastre-se

dev botao

Ajuste na validação de regras de negócio da NFe (rejeição 772).


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

Recommended Posts

Postado (editado)

Na unit ACBrNFeNotasFiscais existe a rotina ValidarRegrasdeNegocios, que faz uma série de validações dos dados da NFe.

Segundo o manual de integração, a rejeição 772 (Operação Interestadual e UF de destino igual à UF do emitente) acontece em NFes de operação interestadual (idDest = 2), UF destino igual à UF origem e CNPJ do destinatário diferente do CNPJ do emitente. Essa última consistência não é feita pela rotina, fiz um pequeno ajuste para corrigir.

Código anterior:

if (nfe.Ide.idDest = doInterestadual) and
  (NFe.Dest.EnderDest.UF = NFe.Emit.EnderEmit.UF) then
  	AdicionaErro('772-Rejeição: Operação Interestadual e UF de destino igual à UF do emitente');

Código ajustado:

if (nfe.Ide.idDest = doInterestadual) and
  (NFe.Dest.EnderDest.UF = NFe.Emit.EnderEmit.UF) and
  (NFe.Dest.CNPJCPF <> NFe.Emit.CNPJCPF) then
  	AdicionaErro('772-Rejeição: Operação Interestadual e UF de destino igual à UF do emitente');

Manual de integração:

image.thumb.png.a0bef14fa695ed0b9e431cf5836f50b1.png

Segue anexo a unit ACBrNFeNotasFiscais  com a correção.

Obrigado!

ACBrNFeNotasFiscais.pas

Editado por André Angeluci
  • Curtir 1

Att,

André Angelucci

  • 4 meses depois ...
Postado
17 hours ago, Julio Cesar Lima Almeida said:

Opa boa tarde...

Eu fiz a alteração sugerida mas mesmo assim o erro 772 persiste.

 

Tem algo a mais que eu possa tentar?

O intuito do ajuste proposto é ignorar a mensagem de erro quando o CNPJ do emissor for o mesmo do CNPJ destinatário, como é orientado no manual.

Porém, esse método faz consistências nas regras de negócio no XML antes do envio à SEFAZ, se vc estiver recebendo essa rejeição ao tentar autorizar a NFe provavelmente existe alguma informação errada.

Anexa o XML aqui pra darmos uma olhada.

Att,

André Angelucci

  • Consultores
Postado

Bom dia André,

A alteração que você realizou, tem como finalidade apenas deixar exatamente igual o que esta no manual?

Pois para mim se a venda é interestadual obviamente que a UF do emitente tem que ser diferente da UF do destinatário.

Não entendi o motivo da SEFAZ acrescentar uma outra condição checando o CNPJ do emitente com o do destinatário.

A minha duvida é, posso vender para mim mesmo?

Outra coisa, existe uma exceção para essa regra, ela se refere a existência ou não de um item com a tag <UFCons> diferente da UF do emitente.

Sendo assim essa regra deve ser checada após o loop dos itens e dentro do loop devemos verificar a exceção acima.

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

  • 3 anos depois...
Postado

Boa tarde.

Ainda seguindo nesse erro de validação (772).

Deve-se acrescentar na validação as exceções, (UF local de entrega e UF local de retirada) conforme manual de orientações.

"Exceção 1: A regra de validação não se aplica se informada UF do local de entrega (tag: entrega/UF) diferente da UF do emitente (tag: enderEmit/UF) e não informada UF do local de retirada (tag: retirada/UF); Exceção 2: A regra de validação não se aplica se informada UF do local de retirada (tag: retirada/UF) diferente da UF do destinatário (tag: enderDest/UF) e não informada UF do local de entrega (tag: entrega/UF); Exceção 3: A regra de validação não se aplica se informadas UF do local de entrega (tag: entrega/UF) e UF do local de retirada (tag: retirada/UF) diferentes entre si; (NT 2015.003)".

Ajustei no código, apenas a exceção para a UF do local de retirada. (ACBrNFeNotasFiscais.pas)

    if not UFCons then
    begin
      GravaLog('Validar: 772-Op.Interstadual e UF igual');
      if (nfe.Ide.idDest = doInterestadual) and
         (NFe.Dest.EnderDest.UF = NFe.Emit.EnderEmit.UF) and
         (NFe.Dest.CNPJCPF <> NFe.Emit.CNPJCPF) AND
         (NFe.Entrega.UF = NFe.Emit.EnderEmit.UF) then
        AdicionaErro('772-Rejeição: Operação Interestadual e UF de destino igual à UF do emitente');
    end;

Isso deve-se ao seguintes cenários.

SEFAZ SC
UF Emitente = 'SC'
UF Destinatário = 'SC'
UF Local Entrega = 'RS'
CFOP = '6949' 
Nota Autorizada.

SEFAZ RS
UF Emitente = 'RS'
UF Destinatário = 'RS'
UF Local Entrega = 'SC'
CFOP = '6949' 
Utilizando estas informações você receberá a Rejeição 523 "Rejeição: CFOP não é de Operação Estadual e UF emitente igual à UF destinatário [nItem: 999]".

Esta é uma rejeição facultativa, a critério da sefaz.

***Ainda não sei como funciona a questão da coloboração com a equipe do ACBR para implementação dos ajustes.

 

  • Administradores
Postado

Boa tarde, 

Em 09/06/2022 at 18:12, mscorteganha disse:

Ainda não sei como funciona a questão da coloboração com a equipe do ACBR para implementação dos ajustes

Em primeiro lugar, muito obrigado por seu interesse em contribuir com o código, isto é muito importante para toda a comunidade!

Para submeter suas alterações, basta anexar aqui no tópico o .pas alterado e assim que possível, um dos consultores fará a análise e retornará aqui msm.

At.

Consultora SAC ACBr

Juliana Tamizou

Gerente de Projetos ACBr / Diretora de Marketing AFRAC
Ajude o Projeto ACBr crescer - Seja Pro

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

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

  • Administradores
Postado

Obrigado pela contribuição, em breve será validada para possível inclusão ao svn

TK-2797

Consultora SAC ACBr

Juliana Tamizou

Gerente de Projetos ACBr / Diretora de Marketing AFRAC
Ajude o Projeto ACBr crescer - Seja Pro

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

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

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