IR de PF com desconto simplicado na MIRO
A Medida Provisória nº 1.171, de 30 de abril de 2023 alterou a fórmula de cálculo do IR para pessoas físicas e instituiu novo cálculo de IR para faturas de pessoa física com desconto simplicado e novas faixas de IR.
A SAP lançou uma nota correção para essa mudança legal e eu quis testar como está funcionando.
Implementação técnica
Peguei um S/4HANA 2022 pra fazer a implementação das notas e fiz do jeito mais simples. Como o release é atualizado simplesmente peguei a nota de alvo e inseri no SNOTE.
Olhando a nota vi que tinha alguns passos manuais. Abri o PDF e já vi que o primeiro passo manual é na SE11 pra meter um append na Wi_ITHTEM e pra minha surpresa fala em COLOMBIA, o passo manda usar um append structure de colombia, já vi gambiarra antes mas reusar de campos de outra localização com Brasil é novidade pra mim.
O Append Structure é esse FIWTCO_CONTRIBUTIONS e o campo especificamente que vai ser usado depois pelo código novo é o FIWTCO_PEN_VOL_DEDO.
Para minha sorte no sistema que eu estava implementando a nota isso já existia, até porque foi entregue pela Localização da Colômbia e o sistema já tinha isso atualizado. Achei muito estranho reaproveitar campos da localização colombia para usar o imposto retido do BR, mas OK, desde que funcione tudo bem, cada doido com suas manias.
Voltei pro snote pra implementar a nota.
Mandei ver um “next next next” e rolou a implementação de boas:
Configuração funcional – Novas Categorias de retenção
Agora na próxima etapa existem novas configurações funcionais para serem feitas, abri o PDF com os passos das configurações e vi que são basicamente 6 coisas (tem passos pra fazer no ambiente como alterar dados mestres tbm):
Honestamente sempre acho que fazer essas configurações baseado em screenshots num PDF é uma porcaria, seria decente ter um BCset ou então pelo menos como fazer CTRL C+ CTRL V.
Mas OK, quem não tem cão caça com gato, configurei o bagulho de acordo com os 6 passos e segui pra transportar/testar.
Testando a solução – Erros
Fui lá no QAS e troquei a categoria de retenção em um fornecedor e fiz um teste que falhou miseravelmente. Dá pra ver na imagem abaixo que não calculou nada de retenção na fatura.
Porquê falhou?
Porque esqueci um pedaço, precisa ativar a categoria de retenção e atribuir para a empresa. Isso não estava no PDF e não pensei na hora que configurei, falha minha, acreditei cegamente no PDF e não rolou lega. Fiz isso, voltei lá no QAS e fui testar o meu cenário de novo.
BANG, não funciona outra vez.
Sabe porquê?
Porque segui o manual e não pensei. O screenshot do manual PDF de configuração, que eu já mencionei elogiosamente antes nesse post, tem essa imagem abaixo:
Sabe o que falta nessa imagem?
Falta definir a alíquota de cada faixa na fórmula, esse detalhe ficou de fora do screenshot e como segui o passo a passo a risca falhei. Voltei no dev e adicionei as faixas com as alíquotas.
Pra facilitar a vida coloquei as faixas aqui em baixo.
To | Rate | Reduc. Base | Dec. Red.Base |
2.112,00 | |||
2.826,65 | 7,5 | 2.112,00 | 158,40 |
3.751,05 | 15,0 | 2.826,65 | 370,40 |
4.664,68 | 22,5 | 3.751,05 | 651,73 |
9.999.999.999,00 | 27,5 | 4.664,68 | 884,96 |
Bom, agora eu acho que vai funcionar. Fiz novo teste e adivinha? Continuou falhando.
Tive que partir para o /H e vi que o código da solução tinha um problema, busquei por notas e encontrei a 3353376, implementei no DEV e fiz novo teste, e agora sim bombou.
Testando a solução – Funcionando
Para saber qual dos dois usar em teoria precisa manualmente com as duas opções (IR geral e IR simplificado) e ver qual deles vale mais a pena, para isso precisa colocar no dado mestre do fornecedor ambos os tipos de IR e na hora de lançar a MIRO precisaria simular e ver qual deles é vantajoso.
Abaixo o exemplo usando 4.000 BRL e o desconto simplificado:
Abaixo o exemplo usando 4.000 BRL e apenas a nova faixa sem o desconto simplificado:
Em suma, funciona a solução depois de configurar direitinho e implementar as correções.
Como funciona a parte técnica
A nota entrega uma nova implementação para a BADI abaixo que é usada para calcular Withholding tax em alguns scenarios de fornecedores:
A implementação entregue pela nota traz alguns métodos para ler os dados das fórmulas/chaves de retenção e preencher (ou não) o campo novo na tabela WITH_ITEM.
O cálculo em si varia conforme os dados que são inseridos na MIRO no momento de lançar a fatura do fornecedor, a decisão é manual se deve se lançar como desconto simplificado ou com IR/INSS de maneira mais ou menos normal.
Olhando o código da implementação tem um check “hard-coded” pelo código da chave oficial do Imposto Retido e dependendo se for desconto simplificado, branco ou INSS tem uma lógica específica na implementação.
O código é chamado dentro da função FI_WT_FB01_CALCULATE_WT que é onde o código da interface de FI calcula as retenções. Aqui embaixo tem o exemplo da stack completa sendo chamada:
O valor do desconto simplificado é armazenado no campo da localização da Colômbia dentro da tabela WITH_ITEM.
E aqui tem a tabela with_item mostrando o valor do desconto simplificado já calculado e utilizado naquele documento:
Valeu, Gurizada!
Att,
Renan
Quer ficar ligado nas novidades de localização? Entra no grupo da S4CN no Telegram e segue a gente no canal do Youtube, no Linkedin e/ou no instagram/twitter @s4cn_br.
Mais infos sobre a localização Brasil no ERP, direto da sap, vocês podem conferir no SAP community na tag de S/4HANA logistics for Brazil.
Outros posts sobre Localização você pode conferir filtrando pela categoria NFE/CTE ou Localização BR Geral.
Outros posts sobre TDF você pode conferir filtrando pela categoria TDF/ACR.
Coehh! Os passos manuais tão sempre errados, consultor não pode confiar nesses PDF’s das notas.