Skip to Content
Technical Articles
Author's profile photo Renan Correa

Exclusão do ICMS da base do PIS/COFINS no SAP em 3 passos

 

 

Como sabemos no Brasil, um dos tópicos do momento é a exclusão do ICMS da base do PIS/COFINS. Há vinte anos esse assunto vem sendo discutindo e, com os dados publicados pelo governo, ainda não existe uma definição clara sobre o modo de cálculo, impossibilitando a implementação de uma solução standard no SAP ECC e S/4HANA.

Mas, como sempre, as operações das empresas não esperam por uma definição formal do governo e uma respectiva SAP Note e já estão acontecendo no dia a dia, então como lidar com esses casos?

Basicamente pode se fazer qualquer coisa nas classes da TAXBRA e de 1000 maneiras diferentes, mas aqui vai nossa sugestão de como pode se fazer isso no ECC e S/4HANA, tanto em MM/Compras como SD/Vendas.

Lembrando que, como ainda não está 100% transparente como deve ser o cálculo – com ou sem  fcp, redução de base, etc. – a regra/lógica de cálculo em si deve ser definida pelo cliente, mas ela pode facilmente ser integrada nesses mesmos lugares, o que acaba simplificando a implementação uma vez que todas as regras forem definidas junto ao negócio.

 

Passo 1 – Enhancement no método determine_additional_rate na classe CL_TAX_CALC_BR (necessário tanto para SD como para MM)

 

Aqui o parametro MV_ADDITIONAL_RATE é ajustado. Esse parâmetro é calculado para PIS e COFINS sendo multiplicado pela alíquota do ICMS, que nesse caso precisará ser desconsiderada. Uma nova lógica precisa ser incluída no enhancement, dependendo dos parâmetros a serem considerados ( mestre do cliente/fornecedor, IPI, FCP, etc… )

Passo 2 – Enhancement no método calculate_pis_cof_base na classe CL_TAX_CALC_BR ( caso de SD )

Nesse caso o parametro EV_BASE recebe o valor calculado incluindo ICMS e é preciso deduzir o valor do ICMS desse parâmetro.

Passo 3 – Enhancement no método calculate_pis_cof_base na classe CL_TAX_CALC_BR_MM ( caso de MM )

Nesse caso o parametro EV_BASE recebe o valor calculado incluindo ICMS e é preciso deduzir o valor do ICMS desse parâmetro ( e IPI também no caso de compras para consumo ).

Importante!

  • Todos enhancements que mencionamos podem ser feitos como enhancements implícitos no final de cada método ou post-method enhancements e não involvem modificações de código standard, apenas ampliações.
  • Quando a SAP lançar SAP Notes para contemplar esse cenário durante a implementação das notas individuais ( ou após um upgrade ) é preciso re-testar o cenário e remover (ou re-adequar) a implementação.
  • O exemplo de implementação acima usa o modelo TAXBRA, no caso de TAXBRJ a implementação precisa ser completamente diferente.

E ai, o que acham? Como vocês estão fazendo o desenvolvimento dessa solução?

Assigned Tags

      53 Comments
      You must be Logged on to comment or reply to a post.
      Author's profile photo Eduardo Noronha
      Eduardo Noronha

      Bom dia Renan!!

      Obrigado por compartilhar este tema que é tão importante.

      Atualmente onde trabalho utilizamos TAXBRJ.

      Neste cenário como poderíamos proceder? Pode me dar um help, por favor?

      Muito obrigado e um grande abraço!!!

      Author's profile photo Renan Correa
      Renan Correa

      Oi Eduardo,

      Como proceder? 1- Migrar para TAXBRA, 2- Implementar a solução acima. ;D

      Brincadeiras à parte, na TAXBRJ eu não estudei a solução, mas com certeza é mais complicado de fazer.

      Tem que olhar a função J_1BCALCULATE_TAXES e como está tudo espalhado em vários forms dentro da mesma função e com nomes de variáveis que não fazem muito sentido precisaria analisar bem mais a fundo antes de criar uma solução. Sorry não poder ajudar.

      att,

      Renan Correa

      Author's profile photo Eduardo Noronha
      Eduardo Noronha

      Bom dia Renan!!

      Obrigado por compartilhar este conhecimento:

      No caso da TAXBRJ o ideal seria um desenvolvimento na função J_1BCALCULATE_TAXES usando enhancements ( já que não tem ainda BAdI que sirva para esse propósito ) nos FORMS determine_additional_rate e provavelmente calculate_pis e calculate_cofins para retirar o ICMS das alíquotas/bases do pis/cofins. Nesses pontos precisaria reduzir  Mas teria que ser bem testado, pode ser que tenha efeitos colaterais depende de como for feito.

      Author's profile photo Jisseléa de Carli
      Jisseléa de Carli

      Renan,

      Parabéns pela publicação!

      Implementamos aqui na empresa e está funcionando a Exclusão.

      Apenas não encontramos na biblioteca do nosso sistema SAP o ms_tx_data-calcasset do passo 1, if da linha 36,  pode dar um help por favor?

      Obrigada!

      Author's profile photo Renan Correa
      Renan Correa

      Oi Jisseléa,

      Obrigado pleo retorno, mas não tenho nem idéia da diferença no código, nesse ponto do método só tenho comentários da nota 1755461 ( que inseriu esse parametro ) e da nota 2259725 ( que alterou o resuldo do else ).

      E ambas as notas são mais velhas do que andar pra frente, já devem estar implementada por Support Package há anos.

      Olhando a versão do objeto você pode ter uma idéia se esse contexto foi removido ou alterado no seu sistema, fora isso não tenho muitas sugestões.

      att,

      Renan Correa

      Author's profile photo Jisseléa de Carli
      Jisseléa de Carli

      Oi,

      Obrigada pelo retorno, nosso sistema está bem desatualizado mesmo.

      As notas responderam a pergunta.

       

      Abraço e sucesso!

       

      Author's profile photo Ramon Roque
      Ramon Roque

      Boa tarde Renan.

      A área fiscal da empresa que atuo informou que além de reduzir o valor do ICMS da base do PIS e COFINS, é necessário informar o valor subtraído  como "Montante base excluído". Segundo eles para demonstração no SPED por exemplo.

      Já houve tal questionamento?

      Obrigado.

      Author's profile photo Renan Correa
      Renan Correa

      Oi Ramon,

      Nos projetos que participei não tive esse requisito ainda. Em teoria deve dar pra fazer, mas adiciona mais trabalho.

      regards,

      Renan Correa

      Author's profile photo Andreia de Souza
      Andreia de Souza

      Ola Renan,

      Obrigada por compartilhar seus conhecimentos.

      Encontramos a nota 2456984 - Exclui ICMS da base PIS / COFINS disponível para fazer a exclusão do ICMS... Você recomenda também? pois ela não foi mencionada aqui como uma solução para estes casos.

       

      Obrigada

       

       

      Author's profile photo Renan Correa
      Renan Correa

      Oi Andreia,

      Essa nota aparece como indisponível no Launchpad. Não vi o conteúdo dela.

      att,

      Renan Correa

      Author's profile photo Adriana Castro
      Adriana Castro

      Bom dia!

      Também não consegui consultar esta nota.

      Att,

      Adriana

      Author's profile photo Andreia de Souza
      Andreia de Souza

      Boa tarde,

      Desculpe, realmente consultei aqui e a nota foi liberada na epoca (2017) somente para alguns clientes. Está como piloto e por isso eu consigo aplicar ou consultar.

      Talvez você tenha acesso a ela de outra forma.

      Obrigada

       

      Author's profile photo Renan Correa
      Renan Correa

      Oi Andreia,

      Ahhhh, agora eu sei que nota é essa.

      Eu já vi ela anos atrás, mas nunca implementei então são sei o resultado está correto

      Eu lembro que tinha uma condição nova pra dizer que o ICMS tinha que ser excluído ou não e uma lógica da SAP que alterava o cálculo.

      Eu não recomendaria aplicar essa nota agora, como ela nunca foi adicionada no standard em qualquer upgrade ela vai precisar de ajustes adicionais.

      att,

      Renan Correa

      Author's profile photo Rodrigo Siqueira
      Rodrigo Siqueira

      Caros, boa tarde! vocês tem a confirmação que haverá SAP Note para a exclusão do ICMS da base do PIS/COFINS sairá 17/09?

       

      Obrigado, Rodrigo

       

      Author's profile photo Jarlei Nascimento Gonçalves
      Jarlei Nascimento Gonçalves

      Eh o que esta na nota 2545409

      Author's profile photo Denise Azevedo - Support Letnis
      Denise Azevedo - Support Letnis

      Olá  Renan bom dia  tudo bem , parabéns  pela dica.. mas  juro que não consegui entender , visto que o meu parâmetro no final do method na variavel mv_additional_rate já sai com o valor de 0.0925000 , não estaria correto ? alguém pode me ajudar com um pedaço da logica implementada para saber se realmente estou no caminho certo ?

      Author's profile photo Andreia de Souza
      Andreia de Souza

      Olá Denise,

      Aqui seguimos a recomendação do Renan, fazendo um enhancement para excluir o valor do ICMS, assim:

      EV_BASE = IV_ VAL_INCL_ICMS – IV_ICMS_AMOUNT

      Author's profile photo Denise Azevedo - Support Letnis
      Denise Azevedo - Support Letnis

      Olá  Andreia grato pelo retorno, mas então o  que não ficou claro para mim é  aonde esta a origem do IV_ VAL_INCL_ICMS  que não encontro em ponto alguma das classes sabe me dizer em que ponto você trabalharam esta variável  e, sabe me dizer em que ponto influenciaram no ev_base ? grato pela ajuda

      Author's profile photo Andreia de Souza
      Andreia de Souza

      Não modificamos nada mais, somente o EV_BASE no mesmo metodo que o Renan informou.

      Author's profile photo Denise Azevedo - Support Letnis
      Denise Azevedo - Support Letnis

      Olá Andreia obrigado , mas o estranho que não tem este campo ou variável nos methodos da classe,  de qualquer forma grato pela informação

      Author's profile photo Ana Cecilia Amaral Bresolin
      Ana Cecilia Amaral Bresolin

      Bom dia, Renan.

       

      Na semana passada, houve uma atualização da SAP no Legal Change Notifications para os itens referentes a esta mudança, informando como Planned Date 17.09.2021, mas não há nenhum detalhe se será entregue alguma solução ou se ainda precisaremos aguardar a publicação da IN. Por favor, você sabe se será liberada OSS Note nesta data e o que será entregue?

      Federal Supreme Court Decision on Exclusion of ICMS From PIS/COFINS Tax Base (SD - ECC and S4H OP)

      Federal Supreme Court Decision on Exclusion of ICMS From PIS/COFINS Tax Base (MM - ECC and S4H OP)

       

      Obrigada,

      Ana.

      Author's profile photo Renan Correa
      Renan Correa

      Oi Ana,

      Vi essa notificação e pelo texto dela parece que a SAP vai disponbilizar BAdI's no ERP para realizar o cálculo ( sem precisar de enhancements ). Por enquanto é uma data planejada, isso pode ser alterado ainda, mas é um bom sinal.

      att,

      Renan Correa

      Author's profile photo Braulio José Alves Correa
      Braulio José Alves Correa

      Boa tarde Renan,

      quando você fala da classe CL_TAX_CALC_BR e método determine_additional_rate, que serve tanto para MM e SD gostaria de entender um ponto.

      Na linha 37 da imagem fornecida, não há adição do ICMS, então para essa situação não teria que ter tratamento . correto ?

      Somente no ELSE onde temos as linhas 42 e 48 ?

       

      Obrigado por compartilhar.

      Author's profile photo Renan Correa
      Renan Correa

      Oi,

      Entendo que sim, não precisaria o mesmo tratamando no caso da linha 37 que só acontece se a flag de venda de ativo da ms_tax_data está marcada, eu especificamente não testei esse cenário. Nos casos que testeis sempre cai no cenário da linha 41.

      Author's profile photo Braulio José Alves Correa
      Braulio José Alves Correa

      Maravilha ! Obrigado.

      Author's profile photo Emanoel Silva
      Emanoel Silva

      Boa tarde Bráulio e Renan,

      Também fiquei com dúvidas em relação ao método DETERMINE_ADDITIONAL_RATE.

      No cenário que testei, sempre cai na linha 37 pois o flag de venda de ativo está desmarcado.

      Mas diferente do que vocês falaram, eu entendo justamente o contrário em relação ao ajuste que temos que fazer no método.

      Nas linhas 41 e 48, pelo que entendo, está havendo na verdade uma redução de ICMS e não uma adição, o que não ocorre na linha 37.

      Portanto, caso o cenário da linha 37 ocorra, temos que fazer a exclusão do ICMS senão haverá diferença na base do montante.

      Dessa forma, entendo que o cálculo teria que ser esse na verdade:

      MV_ADDITIONAL_RATE = MV_ADDITIONAL_RATE + (PIS * (1 - ICMS)) + (COFINS * (1 - ICMS)))

      Quando alterei somente a base de PIS e COFINS no método CALCULATE_PIS_COF_BASE, a base de montante dos impostos ficou divergente e a diferença foi jogada no preço final. Quando ajustei o parâmetro MV_ADDITIONAL_RATE, não teve diferença.

      Poderiam corroborar se o raciocínio está correto por gentileza?

      Author's profile photo Lyster Willian Cinegaglia Machado
      Lyster Willian Cinegaglia Machado

      Boa tarde Renan, tudo bem?

      Para CTE, você tem alguma sugestão? Fizemos a implementação na classe CL_TAX_CALC_BR_SD para os processos de vendas mais comuns e atendeu corretamente, mas para um cenário específico de transporte acaba não reduzindo a base do impostos na pricing.

      Obrigado.

      Author's profile photo Renan Correa
      Renan Correa
      Blog Post Author

      Oie Lyster,

      Não cheguei a fazer em nenhuma empresa com emissão de CT-e, desconheço o cenário. Mas agora a SAP está lançando a nota com a solução oficial deles, talvez já funcione para CT-e também.

      Assim que eu conseguir baixar, implementar e avaliar vou postar sobre isso no S4CN.COM .

      Author's profile photo Ricardo Veloso
      Ricardo Veloso

      Boa tarde,

       

      Renan ,

       

      Apenas para confirmar a SAP esta para lançar uma solução oficial sobre esse tema ? , caso sim , qual seria a previsão ?

       

      Muito obrigado,

       

      Ricardo Veloso

      Author's profile photo Renan Correa
      Renan Correa

      Oi Ricardo,

      Eu não posso falar em nome da SAP, mas sim eles anunciaram que vão lançar a solução e a data esperada para a parte de SD TAXBRA é nessa semana. Assim que as notas forem lançadas vou fazer um post sobre o assunto testando a implementação das notas e o escopo da solução.

      att,

      Renan Correa

      Author's profile photo Ricardo Veloso
      Ricardo Veloso

      Boa tarde,

      Renan,

      Muito obrigado pela informação .

       

      Abraços

      Ricardo Veloso

       

      Author's profile photo Braulio José Alves Correa
      Braulio José Alves Correa

      Boa tarde, parece que a SAP soltou hoje a nota de SD, porém não consegui acessar ainda.

      https://launchpad.support.sap.com/#/notes/3085964

       

       

      Author's profile photo Renan Correa
      Renan Correa

      Oi Pessoal,

      São 3 notas, porém apenas 2 estão liberadas. 3097613, 3088195 e 3085964. A 3085964 ainda não está liberada.

      Assim que conseguir baixar e implementar as notas vou fazer um post no S4CN sobre isso.

      att,

      Renan Correa

      Author's profile photo Renan Correa
      Renan Correa

      A 3085964 agora está liberada!

      Author's profile photo Braulio José Alves Correa
      Braulio José Alves Correa

      Bom dia, nota 3085964 liberada.

      Author's profile photo Renan Correa
      Renan Correa

      Conforme mencionado, implementei as notas e já fiz um teste.

      Author's profile photo Samantha Scassiotti
      Samantha Scassiotti

      Acho que seria esta a Nota 3097613 https://launchpad.support.sap.com/services/pdf/notes/3097613/E

      Author's profile photo Renan Correa
      Renan Correa

      PESSOAL,

      ESSA solução aqui ( para vendas ) pode ser implementada agora via SAP NOTES 3097613, 3088195 e 3085964.

      A solução com enhancement continua válida apenas para os casos de MM, esse processo ainda não tem uma solução standard da SAP.

      att,

      Renan Correa

      Author's profile photo Renan Correa
      Renan Correa

      A solução de MM já saiu também, fiz um blog post .

      A solução via enhancement não é mais necessária.

      Author's profile photo Tarcisio Gouveia
      Tarcisio Gouveia

      Pelo que entendi:

      A nota principal é a 2545409 - ICMS exclusion from PIS and COFINS Base
       
      A qual separa o assunto em 3 partes:

      Solução para SD

          - 3085964 - ICMS Exclusion from PIS and COFINS Base Amount (TAXBRA)

          - parece que ainda tem mais algo para ser liberado em 24/09/2021.

      Solução para EFD Contribuições

          - 3088195 - Prerequisite objects for SAP Note 3097613

          - 3097613 - ICMS Exclusion from PIS and COFINS Base Amount Changes for SPED Contribuições

      Solução para MM

          - planejado para ser liberado em 24/09/2021.
      Author's profile photo Renan Correa
      Renan Correa

      Oi Tarcisio,

      A nota " 2545409 - ICMS exclusion from PIS and COFINS Base" não tem nenhuma alteração de código, ela só lista as alterações sendo desenvolvidas.

      Para SD TAXBRA a solução já saiu, está na 3085964. Junto com as notas 3088195 e 3097613 para salvar o valor do ICMS excluído para EFD - Solução TAXBRJ e IS/OIL não saíram (provavelmente no 24/09 de acordo com o app de mudanças legais).

      Para MM também não saiu ainda, mesma data que você mencionou.

      att,

      Renan Correa

       

      Author's profile photo Tarcisio Gouveia
      Tarcisio Gouveia

      Bom dia, Renan, acho que falei o mesmo que voce de outra forma. Decidi só aplicar as notas no dia 11/10 pois estamos com outras atividades, se for iniciar a implementação, vai comunicando o efeito. Abraço.

      Author's profile photo Renan Correa
      Renan Correa

      Eu acho que sim, só salientei que a nota 2545409 ñ tem correções pq já vi outros consultores tentando aplicar notas assim achando que tinha alteração de código!

      Já até implementei e testei, fiz um post aqui sobre isso. Tá funcionando bem legal por enquanto, não achei nenhum bug e foi fácil de implementar as notas.

      To esperando a parte de MM agora.

      Author's profile photo Tarcisio Gouveia
      Tarcisio Gouveia

      Validou com seu setor fiscal ? Gerou a EFD Contribuições ? Como está pensando a entrada em produção, só para os clientes que exigirem ? A OV será do mesmo tipo para a forma atual e a futura(com exclusão) ? Vou dar uma olhada no seu post detalhando.

      Author's profile photo Renan Correa
      Renan Correa

      Oi Tarcisio,

      Eu implementei primeiro em um sandbox, o seguro morreu de velho ;D . Primeiros testes foram OK, agora já comecei a implementar em alguns clientes, mas cada um tem uma definição diferente.

      Em geral para vendas tem sido para todos os cenários/clientes, para compras estamos habilitando via um parâmetro de master data no fornecedor, para definir se calcula ou não dependendo de quem vai enviar a mercadoria.

      att,

      Renan Correa

      Author's profile photo Yuri Michelon
      Yuri Michelon

      Olá Renan.

      Para remover o ICMS da base de cálculo do PIS/COFINS nos cenários de MM, eu acabei adotando outra solução, sem necessidade de enhancements, alguns meses antes da SAP se posicionar sobre o assunto.

      1. Utilizando a view J_1BPISCOF_CBTV, aplicar a configuração abaixo, para cada IVA desejado, a fim de determinar que a base de PIS/COFINS é composta pelas bases de ICMS, subtraído pelo valor de ICMS.

      2. Ativar condição ICOR no IVA.

      Por fim, o último requisito para funcionar a exclusão de ICMS da base de PIS/COFINS é indicar um preço líquido no item do pedido de compra descontando ICMS e PIS/COFINS sobre a base normal, não a base flexível. OBS: Caso, o cliente utilize pricing Z, deverá ser criado uma condição para calcular a diferença e acertar o líquido.

      Exemplo:

      Preço bruto = 100,00
      Base ICMS = 100,00
      ICMS = 12,00
      Base normal de PIS/COFINS = 100,00
      PIS sobre base normal = 1,65
      COFINS sobre base normal = 7,60
      Base flexível de PIS/COFINS = 100,00 – 12,00 = 82,00
      PIS sobre base correta/flexível = 1,35
      COFINS sobre base correta/flexível = 6,23
      Valor líquido item do pedido = Preço bruto – ICMS – PIS s/base normal – COFINS s/base normal = 78,75

       

      Resultado final:

      Pedido de compra com pricing Z, no meu caso.

      MIRO

      Nota fiscal

       

      Abraço,

      Yuri Michelon

      Author's profile photo Renan Correa
      Renan Correa

      Legal Yuri,

      Interessante essa solução, foi bem engenhosa... eu já implementei a própria solução da SAP para substituir os enhancements e está funcionando bem por enquanto.

      Renan

      Author's profile photo Ricardo Veloso
      Ricardo Veloso

      Boa tarde,

      Pessoal ,

       

      Voces sabem me dizer se já saíram as notas SAP da solução para MM  ?

       

      Obrigado, !

       

      Author's profile photo Renan Correa
      Renan Correa

      Oi Ricardo,

      Já saiu, até fim post sobre isso.

      att,

      Renan Correa

      Author's profile photo Ricardo Veloso
      Ricardo Veloso

      Mais uma vez muito obrigado !

       

      Abraços !

      Author's profile photo Marcio Santos
      Marcio Santos

      Olá pessoal.

      Mais alguém está discutindo a solução proposta pela SAP quanto ao ICMI da nota 3085964?

       

       

      No exemplo acima vemos claramente que irá afetar o ICMI e consequentemente o valor do ICMS e possivelmente o IPI. Nosso tributário entende que a decisão somente deverá afetar os valores das contribuições para o PIS e a COFINS.

      Author's profile photo Fellipe Nery
      Fellipe Nery

      Olá pessoal, Alguém teria uma dica para implementar essa solução no ECC 5.0?

      Author's profile photo Maria Sanches
      Maria Sanches

      Prezados, boa noite!

      Estamos iniciando a implantação no final do mês e gostaria de saber como ficam as devoluções de vendas. Temos um "price schema" única por conta do nosso template e me preocupa como a solução vai lidar com devoluções de vendas anteriores à implantação.

      Agradeço a atenção.