Ir para o conteúdo principal

Alteração da Formação da Alíquota no Método de Cálculo do Imposto de Renda

Data de elaboração 17/04/2023
Responsável pelo estudo

Jônatas Neves Legal (Técnico em Tecnologia da Informação e Comunicação) (Assessor)

Diego Gonçalves de Almeida (Assessor)
Ádrian Rabelo Mendes (Assessor)

Equipe do estudo Caos
Alvo

Produto: GOVERNA

Funcionalidade: Cálculo do Imposto de Renda

Origem

Implementação: novas implementações

Objetivo Mapear o processo de formação da alíquota utilizada no cálculo do imposto de renda, para realizar as alterações necessárias a fim de atender a  Instrução Normativa Nº 80/2022/SEFIN-COTES, capítulo 8, itens I e II.
Documentação correlata
Observações Sem observações.
Glossário
  • IRRF - Imposto de Renda Retido na Fonte;
  • DETRAN - Departamento Estadual de Transito de Rondônia;
  • IPERON - Instituto de Previdência dos Servidores Públicos de Rondônia;
  • SQL - Linguagem de Consulta Estruturada (do inglês Structured Query Language)
1. Introdução

Após publicação da instrução normativa que regulamenta a retenção de Imposto de Renda para pagamentos realizados pelo estado de Rondônia, se faz necessária a alteração do cálculo da folha de pagamento no sistema GOVERNA, no que tange ao IRRF, conforme os itens I e II, referentes ao Imposto de Renda retido de rendimentos do trabalho assalariado, citado no capítulo 8 da instrução normativa:

O Imposto de Renda retido de rendimentos do trabalho assalariado deve ser realizado da seguinte forma:

I – o imposto deve ser calculado sobre os rendimentos efetivamente recebidos em cada mês;
II – se o mesmo CPF receber mais de um rendimento da mesma fonte pagadora, aplicar-se-á a
alíquota de Imposto de Renda correspondente à soma dos rendimentos pagos ou creditados à pessoa física no
mês, a qualquer título;

Para atender esse requisito, uma alteração no método de obtenção da alíquota dos proventos do servidor é necessária pois atualmente é formada unicamente por matrícula, e por ventura há servidores com mais de um contrato ativo, na mesma fonte pagadora, com lotação e matrículas distintas. Dessa forma é necessário agrupar as lotações do servidor, da mesma fonte pagadora, e realizar a soma de seus proventos e obter a alíquota com base nesta soma.

Também é necessária uma alteração no cadastro de Administração no sistema para que seja possível o agrupamento de matrículas, adicionando um campo a ser informado a fonte pagadora da administração, pois em caso de fontes pagadoras distintas o cálculo da alíquota será realizado individualmente por matrícula em cada fonte pagadora.

A instrução normativa, no que tange ao "[...] efeito de determinação da base de cálculo sujeita à incidência do imposto na fonte [...]", previstas no item II do capítulo 8, também modifica as regras sobre dependentes dos servidores:

II  -  quantia  de  R$  189,59  por  dependente,  mediante  comprovação  de  que  apenas  um  dos responsáveis tenha o benefício;

Dessa forma, em uma fonte pagadora, o dependente poderá incidir imposto de renda a apenas um servidor, sendo necessária a implementação desta regra de negócio ao cadastro de dependentes nas informações mensais do servidor.

2. Desenvolvimento

Neste capítulo serão explicados a forma atual da obtenção da alíquota utilizada para o cálculo de IRRF presente no código fonte do Governa, as alterações necessárias para a alíquota estar em conformidade com a instrução normativa, e ainda, os possíveis impactos que esta mudança poderá acarretar nas demais funcionalidades do sistema.

Após análise do estudo técnico do método de cálculo da folha de pagamento, foram identificados alguns pré-requisitos para realizar as mudanças que a obtenção da alíquota necessita. Devido a complexidade do método de cálculo, a execução dessas mudanças foram divididas em etapas conforme o roteiro a seguir:


roadmap.jpg

Na primeira etapa duas funcionalidades deverão sofrer alterações, a primeira para que seja possível realizar o agrupamento de matrículas (a ser realizado na segunda etapa), e a segunda necessária para atender o item II do capítulo 8 da instrução normativa, respectivamente, sendo elas:
  • Adicionar campo de fonte pagadora no cadastro e edição de Administração;
  • Adicionar validação no cadastro e edição de dependentes nas informações mensais do servidor;
Com a propriedade "Fonte Pagadora" presente na entidade "Administração" será realizado o agrupamento das matrículas e posteriormente o salário base de cada matrícula a fim de somá-los para obter a nova alíquota. Por fim, o método de cálculo do IRRF será atualizado passando a utilizando a nova alíquota.

2.1 Desconto de IRRF

Para exemplificar o cenário atual de como é calculado o desconto de IRRF mensalmente, a tabela a seguir demonstra este cálculo com alíquota obtida por cada matrícula do servidor fictício chamado João, estando ele vinculado a fonte pagadora Estado de Rondônia:

SERVIDOR: JOÃO | ESTADO DE RONDÔNIA
Matrícula Base Alíquota Resultado Proporcional Dedução Desconto de IRRF
3000123 R$ 3.000,00 7,5% 225 - 142,8 82,2
3000147 R$ 1.800,00 isento - - - -

Neste exemplo, a matrícula 3000147 com rendimento base de R$1.800,00 encontra-se na faixa de isenção do imposto de renda e apenas na matrícula 3000123, com rendimento de R$3.000,00, é considerada a alíquota de 7,5% para o desconto do IRRF estando na primeira faixa de base de cálculo com dedução.

Após alterações previstas, a formação da alíquota e o cálculo do desconto de imposto de renda será realizado na forma como apresentado na tabela a seguir:

SERVIDOR: JOÃO | ESTADO DE RONDÔNIA
Matrícula Base Alíquota Resultado Proporcional Dedução Desconto de IRRF
3000123 R$ 3.000,00 22,5% 675 62,5 397,58125 277,41875
3000147 R$ 1.800,00 22,5% 405 37,5 238,54875 166,45125





636,13 443,87

R$ 4.800,00 22,5% 1080
636,13 443,87

Neste caso, é realizado a soma dos rendimentos das duas matrículas do servidor, resultando em R$4.800,00 de rendimento mensal, logo a alíquota de 22,5% da terceira faixa de imposto de renda com dedução, será considerada no cálculo. 

2.2 Mudanças Cadastrais

A fim de possibilitar o agrupamento das matrículas do servidor por fonte pagadora, é preciso alterar a entidade Administração no sistema inserindo uma nova propriedade chamada fonte pagadora. Três fontes pagadoras foram definidas para serem selecionadas no cadastro de novas administrações ou edição das já existentes, sendo elas: Governo de Rondônia, DETRAN e IPERON.

Além disso, para estar em conformidade com a instrução normativa, uma validação deve ser acrescentada no cadastro de novos dependentes do servidor ou edição dos já presentes. Essa validação visa bloquear o cadastro de um dependente com incidência de imposto de renda em mais de uma matrícula na mesma fonte pagadora.

2.2.1 Fonte Pagadora em Administração

No módulo Gestão do Governa, navegando por Empresa e posteriormente em Administração encontramos as funcionalidades de cadastro e edição das Administrações presentes no sistema. Na tela de cadastro ou edição de Administração, deve ser inserido um novo campo chamado "Fonte Pagadora" sendo obrigatória sua informação, como por exemplo na imagem a seguir:

administração.png

A fonte pagadora servirá de delimitador ao agrupar as matrículas do servidor, sendo cada matrícula do servidor vinculada a uma administração e esta possuindo a informação da fonte pagadora. Isto pois as matrículas do servidor que forem de fontes pagadoras distintas não devem ser agrupadas e a execução do cálculo do imposto de renda deve permanecer separado para estas matrículas da maneira como é atualmente.

2.2.2 Dependente com Incidência de IRRF no Servidor

Outra funcionalidade a ser alterada é o cadastro de dependentes nas informações mensais do servidor no módulo de Recursos Humanos do sistema. A imagem a seguir demonstra a tela de cadastro de dependentes do servidor (localizada em Servidor > Cadastro do servidor > Editar > Editar Informações Mensais > Dependentes) :

dependente.png

Ao marcar o campo <Imposto de Renda> nesta funcionalidade, uma validação deve ser feita antes que o cadastro ou edição seja efetivado. Caso o dependente já tenha sido cadastrado em outra matrícula (tanto do mesmo servidor quanto para outro), sendo as matrículas pertencentes a mesma fonte pagadora, esse dependente não poderá ser cadastrado ao servidor com o <Imposto de Renda> marcado, e a devida mensagem de aviso deve ser exibida ao usuário.

2.3 Agrupamento de Matrículas

Estando a entidade administração atualizada com a propriedade fonte pagadora, torna-se viável o agrupamento de matrículas do servidor por meio de uma consulta SQL no banco de dados do sistema, como podemos observar no relacionamento de servidor até administração no diagrama a seguir extraído do banco de dados.

servidor-admin.jpg

Através do CPF podemos criar uma listagem dos registros da tabela servidor (que contém as matrículas) por pessoa física e ainda filtrar esta listagem com a fonte pagadora presente em administração (que pode ser acessada navegando pelas tabelas pessoa e lotação mensal).

Essa consulta deverá então ser mapeada e tratada na aplicação para posteriormente ser utilizada no cálculo do IRRF. Como o método de cálculo da folha de pagamento já possui uma listagem com todas as matrículas e seus devidos salários base, bastará interligar as matrículas agrupadas com os salários base e então somá-los a fim de se obter a nova alíquota.

2.4 Atualização do Cálculo de IRRF

Como o método de cálculo da folha de pagamento já possui uma variável contendo a lista de todos os servidores (provenientes do método buscarServidoresCalculoFolhaPagamento()) e cujo salário base está presente, é possível realizar a junção destes salários base com o agrupamento de matrículas e então realizar a soma para obtenção da nova alíquota.

Tendo a soma dos salários base do servidor disponível o método de obtenção da alíquota, presente no trecho de código a seguir, poderá ser atualizado.

Fracao parcelaDeducao = zeroFracao;  
Fracao aliquota = zeroFracao;  
for (IndiceIrrf itemIrrf : listaIndiceIrrf) {  
   if (baseCalculoIrrf.doubleValor() >= itemIrrf.getBaseCalculo()) {  
      parcelaDeducao = new Fracao(itemIrrf.getParcelaDeducao());  
      aliquota = new Fracao(itemIrrf.getAliquota());  
      aliquota = aliquota.dividirPor(100);  
      } else {  
      break;  
   }  
}  
deducaoTotal = deducaoTotal.somarCom(parcelaDeducao);  
Fracao valorIrrf = baseCalculoIrrf.multiplicarPor(aliquota);  
valorIrrf = valorIrrf.subtrairPor(parcelaDeducao);  
valorIrrf = valorIrrf.subtrairPor(new Fracao(valorIrrfOutraRotina));

Consequentemente, o valor da parcela de IRRF a ser deduzida será calculado logo em seguida com o valor da alíquota já atualizado nos novos parâmetros.

3. Conclusão

Sendo implantadas as alterações previstas no método de cálculo de IRRF, poderá haver impacto negativo na performance no processamento da folha de pagamento devido à consulta extra para agrupar as matrículas dos servidores e vinculo do salário base a essas matrículas, no entanto não é esperado afetar outras funcionalidades posteriormente visto que os tipos de valores resultantes do processamento da folha de pagamento permanecerão os mesmos.

Algumas histórias foram previamente elaboradas para a execução sendo expostas a seguir.

3.1 Histórias para Mudanças Cadastrais

História

O quê: Eu, dev, preciso adicionar a coluna fonte pagadora na tabela de administração

Por quê: Para armazenar as informações das fontes pagadoras

Regras e Validações Criar coluna na tabela de administração
História

O quê: Eu, dev, preciso criar o campo de fonte pagadora na entidade administração

Por quê: Para possibilitar o armazenamento de fonte pagadora em administração.

Regras e Validações Criar o campo do tipo selecionável
História

O quê: Eu, dev, preciso criar um campo select list para fonte pagadora na tela de cadastro/edição de administração

Por quê: Para possibilitar o armazenamento de fonte pagadora em administração.

Regras e Validações Se fonte pagadora for de mesmo nome não deve permitir selecionar
História

O quê: Eu, dev, preciso adicionar validação no cadastro de dependente com IRRF

Por quê:  Para que o dependente, com incidência de IRRF, não seja adicionado em mais de uma matrícula em fontes pagadoras distintas

Regras e Validações permitir adicionar o mesmo dependente, com incidência de IRRF, a servidores em fonte pagadoras distintas

3.2 Histórias para Agrupamento de Matrícula

História

O quê: Eu, dev, preciso criar uma consulta que retorne todos os servidores ativos com duas ou mais matriculas em um mesmo CPF dentro da mesma fonte pagadora.

Por quê: Para possibilitar a soma dos salários base dos servidores com mais de uma matricula ativa na mesma fonte pagadora

Regras e Validações Criar visualização no banco de dados a ser mapeada pela aplicação
História

O quê: Eu, dev, mapear a consulta de agrupamento de matrículas na aplicação.

Por quê: Para utilizar a consulta de agrupamento no método de cálculo de IRRF.

Regras e Validações Criar visualização no banco de dados a ser mapeada pela aplicação
História

O quê: Eu, dev, preciso listar todas as fontes pagadoras com todos os servidores com duas ou mais matriculas ativas de um mesmo CPF

Por quê: Para realizar a soma do salário base e formação da alíquota

Regras e Validações Vincular salário base às suas respectivas matrículas no agrupamento de matrículas

3.3 Histórias para Atualização do Cálculo de IRRF

História

O quê: Eu, dev, preciso adaptar o calculo mensal da lista de servidores com mais de 1 contrato

Por quê: Para que o cálculo de IRRF seja realizado com a nova alíquota

Regras e Validações

Verificar se os cálculos são feitos por fonte pagadora (Detran, IPERON e Estado);

Refletir a nova alíquota em todos os contra cheque;

A dedução de imposto de renda deve ser calculada com a nova alíquota.

História

O quê: Eu, segep, preciso visualizar o servidor ativo com dois ou mais contratos na mesma fonte pagadora, identificando a alíquota de IRRF, no cálculo mensal

Por quê: Para identificar os servidores com mais de um contrato para calcular a nova base e alíquota de IRRF

Regras e Validações

guardar o novo valor de base de IRRF;

mostrar a alíquota IRRF no contracheque e todas as telas necessárias;

guardar o resultado do IRRF a ser descontado;