RECEBIMENTO AUTOMÁTICO DE NF-e

 

Características do Requisito

 

Linha de Produto:

RM

Segmento:

Construção & Projetos

Módulo:

Totvs Gestão de Estoque, Compras e Faturamento

Rotina:

Rotina

Nome Técnico

Recebimento de NF-e: Inclusão de Movimento através de XML

???????

Rotina(s) envolvida(s)

Nome Técnico

Parâmetros da Filial

??????

Definições de Cli/For - Totvs Colaboração??????
Criação de Fórmulas??????
Diferença de Tributos Calculados x Tributos do XML??????
Cópia por Referência??????
Produtos Totvs Colaboração??????
Natureza Inversa Totvs Colaboração??????
Unidades de Medida Totvs Colaboração??????
Anexo de Movimentos - Status Inconsistente??????

Chamados Relacionados

TSRMCN

País(es):

Brasil

Banco(s) de Dados:

SQL e Oracle

Tabelas Utilizadas:

TPARFILIAL - Parâmetros da Filial

TDEFINICOESCFOCOLAB - Definições de Cli/For - Totvs Colaboração

GFORMULA - Fórmulas

 

Sistema(s) Operacional(is):

Windows

Versões/Release:

12.1.9

Descrição

O objetivo dessa implementação é permitir a importação automática das notas fiscais eletrônicas, através do processo do TOTVS Colaboração 2.0.

O atual processo responsável pelo recebimento da NF-e, exige a intervenção manual do usuário para resolver alguns conflitos, tais como, tradução dos produtos, seleção da natureza de operação, entre outros. A fim de simplificar este processo, será implementado o recebimento automático da NF-e, o qual será capaz de solucionar todas estas questões, mediante uma prévia configuração, sendo que todas as validações/consistências executadas na criação manual do movimento serão também executadas no recebimento e criação automática da NF-e.

O Recebimento Automático da NF-e está disponível apenas para o TOTVS Colaboração 2.0, mas as melhorias de performance e de usabilidade das telas também estão disponíveis para o TOTVS Colaboração 1.0.

É importante salientar que para a utilização do TOTVS Colaboração é indispensável a contratação dos serviços da NeoGrid que é a responsável pelo processamento da leitura dos arquivos XML, pela comunicação com os webservices da SEFAZ e pelo retorno às consultas destes documentos. Estes, por sua vez, serão lidos e interpretados através da execução de JOBs específicos pelo ERP TOTVS Linha RM para a devida atualização dos dados no sistema.

 

Procedimento para Utilização


1. Parametrização

Para o correto funcionamento da rotina de Recebimento Automático das NF-e é necessário que sejam executadas algumas parametrizações. São elas:

 

1.1. Tipo de Recebimento de NF-e

O campo "Tipo de Recebimento de NF-e" define a forma como o sistema irá realizar o processo de recebimento automático das NF-e. Esta informação é parametrizável por Fornecedor do Totvs Colaboração e/ou por Filial.

Assim, quando do recebimento automático de uma NF-e, caso o emitente da mesma conste na tabela de definições do Cli/For para o Totvs Colaboração ("Cadastros > Mais > Tabelas Auxiliares > Definições de Cli/For – Totvs Colaboração"), essa informação prevalecerá e assim para determinados fornecedores poderá ser definido um Tipo de Recebimento diferente do que é praticado geralmente. Para o preenchimento deste campo é importante avaliar quais os fornecedores que enviam o nº do Pedido de Compra no XML.

Caso no momento do recebimento automático de uma NF-e o emitente da mesma não conste na tabela de "Definições de Cli/For para o Totvs Colaboração", o sistema obedecerá ao que foi parametrizado para a filial de destino da NF-e em "Ambiente > Parâmetros > Gestão de Estoque, Compras e Faturamento > 04.03  - Integrações > 04.03.03 - Fiscal > 04.03.03.01 - Dados Fiscais > Parâmetros por Filial > Informações TOTVS Colaboração".

Assim, para evitar possíveis erros no momento do recebimento é importante que o parâmetro da filial esteja sempre preenchido indicando como o sistema deve proceder para os fornecedores cujo Tipo de Recebimento não foi informado.

Os Tipos de Recebimento possíveis são:

  • Inclusão Direta: O sistema não considera o código do pedido no XML e realiza a inclusão direta do movimento de NF-e com base nos dados existentes no XML. O movimento será criado, acatando a todas as parametrizações do seu tipo de movimento, ou seja, efetuando todas as integrações parametrizadas e terá o status 'Normal'; 

  •  Inclusão Direta - Status Não Processado: O sistema não considera o código do pedido no XML e realiza a inclusão direta do movimento com base nos dados existentes no XML, mas com o status “Não Processado”.  Um movimento criado com status 'Não Processado' existirá apenas como documentação, sem qualquer efeito sobre o sistema, ou seja, estes movimentos serão criados sem a geração de suas possíveis integrações com a Contabilidade, Financeiro e Estoque e não irão gerar movimentação no estoque, lançamentos financeiros, lançamentos contábeis, atendimentos no RMAgilis, etc. Para que estes movimentos passem a ter efeito os mesmos deverão ser processados, além de obrigatoriamente serem submetidos ao processo  "Conferir Movimento Totvs Colaboração" (vide item 4.3 deste documento);

  • Recebimento de Pedido: O sistema utiliza o código do pedido contido no XML para buscar o movimento correspondente e realizar o faturamento do mesmo, sendo que se o pedido não for encontrado na base de dados o novo movimento não será criado na base de dados pois o sistema abortará o processo, informando o motivo através do log de execução. 

  • Recebimento de Pedido ou Inclusão Direta: Através do conteúdo do XML, o sistema tentará identificar o respectivo pedido, e caso seja bem-sucedido, será realizado o faturamento do mesmo. Se o sistema não conseguir identificar nenhum pedido, a inclusão do movimento será feita através dos dados constantes do XML e sem nenhum relacionamento com qualquer outro movimento já existente na base de dados, ou seja, o movimento será criado acatando a todas às parametrizações do seu tipo de movimento, efetuando todas as integrações parametrizadas. O novo movimento terá o status "Normal";

  • Recebimento de Pedido ou Inclusão Direta - Status Não Processado: Através do conteúdo do XML, o sistema tentará identificar o respectivo pedido, e caso seja bem-sucedido, será realizado o faturamento do mesmo.  Se o sistema não conseguir identificar nenhum pedido, a inclusão do movimento será feita através dos dados constantes do XML e sem nenhum relacionamento com qualquer outro movimento já existente na base de dados, ou seja, o movimento será criado acatando às parametrizações do seu tipo de movimento, exceto as de integração, pois o movimento será criado com o status "Não Processado". Um movimento criado com status 'Não Processado' existirá apenas como documentação, sem qualquer efeito sobre o sistema, ou seja, estes movimentos serão criados sem a geração de suas possíveis integrações com a Contabilidade, Financeiro e Estoque e não irão gerar movimentação no estoque, lançamentos financeiros, lançamentos contábeis, atendimentos no RMAgilis, etc. Para que estes movimentos passem a ter efeito os mesmos deverão ser processados, além de obrigatoriamente serem submetidos ao processo  "Conferir Movimento Totvs Colaboração" (vide item 4.3 deste documento).

Lembre-se que caso para alguns fornecedores o tipo de recebimento seja diferente do que foi definido para a filial forneça esta informação em "Cadastros > Mais > Tabelas Auxiliares > Definições de Cli/For – Totvs Colaboração".

Caso a filial não vá utilizar a rotina de recebimento automático da NF-e, o campo "Tipo de Recebimento de NF-e" deverá permanecer em branco.


 

1.1. Tipo de Movimento para Recebimento Automático de NF-e

Em  “Ambiente > Parâmetros > Gestão de Estoque, Compras e Faturamento > Integrações > Fiscal > Parâmetros por Filial > Informações Totvs Colaboração”, deverá ser preenchido por filial o campo "Tipo de Movimento para Recebimento Automático de NF-e".

Este novo parâmetro é do tipo fórmula, e assim, através do mesmo, o usuário poderá implementar uma regra específica para buscar o tipo de movimento que será utilizado no recebimento automático da NF-e de cada filial.

Essa fórmula será executada para cada XML a ser recebido.

Foram criadas duas novas funções de fórmula para auxiliar na criação dessa regra, são elas:

  • TABXMLCOLAB - Retorna o valor de um campo da tabela de XMLs do Totvs Colaboração (TNFEENTRADA);
  • DADOSXMLCOLAB - Retorna o valor de uma TAG de um XML.

Daremos a seguir exemplos de utilização de ambas as funções.

Exemplo de fórmula de seleção do tipo de movimento utilizando a função TABXMLCOLAB:

Exemplo de fórmula de seleção do tipo de movimento utilizando a função DADOSXMLCOLAB:

Nesta função é permitido o acesso a qualquer TAG do XML e para isso, assim como no exemplo acima, deve ser informado o caminho da TAG desejada separado por barra ( / ), e o namespace do XML, no nosso caso o namespace da NF-e (http://www.portalfiscal.inf.br/nfe).

Quando a tag possuir índice, basta informá-lo o entre colchetes ([ ]).

No nosso exemplo o sistema irá retornar a informação da TAG CFOP do primeiro item da NFe, já que não informamos o índice.

Veja abaixo um exemplo da mesma fórmula retornando o CFOP do 2º item da NFe:

Caso a filial não vá utilizar a rotina de recebimento automático da NF-e, o campo "Tipo de Mov. para Recebimento Automático de NF-e" não deverá ser preenchido.

Este novo parâmetro somente será habilitado quando, no quadro “Tipo Documento Integração Totvs Colaboração” pelo menos uma das opções, 'Todos' ou 'Recebimento de NF-e' estiver marcada.

 

2. Cadastros

Para o correto funcionamento da rotina de Recebimento Automático das NF-e devemos ficar atentos ao preenchimento de alguns cadastros. São eles:

 

2.1. Natureza Fiscal (CFOP)

Quando uma nota fiscal eletrônica é enviada por um fornecedor, ela contém, para cada um dos seus itens, uma natureza fiscal (CFOP) de saída, que caracteriza a operação desse fornecedor. Para a empresa que recebe esse documento, entretanto, devemos encontrar a natureza fiscal (CFOP) de entrada correspondente. Essa ‘Natureza Inversa’ é indispensável para a criação automática de um movimento de NF-e.

Para definir a Natureza Inversa na geração automática do movimento de entrada, o Totvs Gestão de Estoque, Compras e Faturamento utilizará os seguintes recursos:

 

2.1.1. Regra de Seleção da Natureza Inversa (CFOP)

Para cada movimento de NF-e a ser incluído, o sistema irá encontrar a Natureza Inversa da CFOP constante do arquivo XML. Para isso, é necessário saber, através das parametrizações vigentes do tipo de movimento, se o movimento a ser criado seleciona a Natureza de Operação somente para o movimento, ou se deve ser selecionada também uma Natureza para o item de movimento. Para ambos os casos, será utilizada em primeiro lugar a Regra de Seleção da Natureza (RSN), rotina hoje já existente e, que tem a finalidade de encontrar a Natureza de Operação baseada nas informações do movimento e parametrizações de várias tabelas tais como: Parâmetros do Tipo de Movimento, Produto, Classificação de Produto, Naturezas Fiscais, Regras de ICMS, Regras de IPI, etc..

Para verificar como está a parametrização da sua empresa vá na etapa "Fis - Natureza" dos Parâmetros dos Tipos de Movimento que serão utilizados no Recebimento Automático da NF-e e verifique o preenchimento do campo "Seleção Automática da Natureza".

Detalharemos a seguir como o sistema procederá, conforme o tipo de Seleção Automática da Natureza definido para o tipo de movimento.

 

2.1.1.1. Seleção Automática da Natureza por Movimento

Neste caso, deverá ser encontrada obrigatoriamente uma Natureza de Operação analítica para o movimento.

Através dos dados do XML e das parametrizações e cadastros do sistema, a RSN irá encontrar as naturezas possíveis, de forma que:

  • Se a RSN encontrar apenas uma Natureza de Operação (CFOP) possível, o movimento de NF-e será incluído com o CFOP encontrado;

  • Se a RSN encontrar mais de uma Natureza de Operação (CFOP) possível, o sistema irá verificar as opções cadastradas como Natureza Inversa da CFOP extraída do XML (veja item 2.1.2) e
    • Se uma das opções selecionadas pela RSN estiver cadastrada como ‘Default’, ela será utilizada para a criação de movimento;
    • Se uma das opções selecionadas pela RSN estiver cadastrada como Natureza Inversa, mas não como ‘Default’, ela será utilizada para a criação do movimento, desde que exista apenas uma única correspondência entre os itens cadastrados e as opções retornadas pela RSN. Caso contrário, o sistema não saberá qual Natureza Inversa escolher e o movimento será criado com status ‘Inconsistente'.
    • Se nenhuma das opções retornadas pela RSN estiver no cadastro de Natureza inversa, o movimento não será criado.

2.1.1.2. Seleção Automática da Natureza por Item de Movimento