l10n-brazil icon indicating copy to clipboard operation
l10n-brazil copied to clipboard

[12.0][REF] Cálculo da alíquota efetiva para empresas do Simples Nacional.

Open antoniospneto opened this issue 2 years ago • 8 comments

Atualmente o módulo fiscal não suporta que uma empresa do regime Simples Nacional possa exercer mais de um tipo de atividade ao mesmo tempo, como por exemplo ser uma indústria e comércio. Com a alteração dessa PR o módulo fiscal passa a calcular todos os impostos efetivos, para cada anexo do simples nacional existente.

Antes da PR: image

Depois da PR: sn

Antes da PR, caso fosse emitido um nota fiscal que contivesse um item que fosse venda ( produção própria) e também um outro como ( revenda ) o valor da alíquota do "ICMS permitido para aproveitamento de credito" ficava errado, o mesmo valor era aplicado para os dois itens, porém é preciso diferenciar, os itens de produção própria devem ser calculados com base no ANEXO 2 do Simples Nacional (Indústria) e os itens de revenda com base no ANEXO 1 (Comércio)

Depois da PR: Peek 2022-03-08 19-29

Também arrumei a informação que é impressa na nota fiscal do simples nacional para comportar os dois tipos ao mesmo tempo: image

Essa PR era pra ser apenas um pequeno FIX, mas no fim ficou um pouco maior que o esperado rss.

antoniospneto avatar Mar 08 '22 22:03 antoniospneto

Coloquei a pr em rascunho, preciso corrigir uns erro que bateu no trevis e tbm o conflito com o código que entrou na branch principal recentemente.

antoniospneto avatar Mar 09 '22 14:03 antoniospneto

Oq rolou com o runboat ?

marcelsavegnago avatar Mar 10 '22 01:03 marcelsavegnago

Oq rolou com o runboat ?

Ele não tá conseguindo baixar essa lib :(

  • apt-get -yqq install rsync E: Failed to fetch http://archive.ubuntu.com/ubuntu/pool/main/r/rsync/rsync_3.1.3-8ubuntu0.1_amd64.deb 404 Not Found [IP: 91.189.88.152 80]

antoniospneto avatar Mar 10 '22 02:03 antoniospneto

Apesar do runboat está com defeito, não está relacionado a esse PR, ver https://github.com/sbidoul/runboat/issues/48. Pra quem desejar, a PR está pronto para revisão. trevis verdinho 👍🏻

antoniospneto avatar Mar 10 '22 20:03 antoniospneto

Pessoal, eu dei uma olhada no código e tenho algumas explicações sobre a implementação desse PR mas hoje eu estou voltando de uma viagem de consultoria em um projeto e não vou conseguir escrever, mas na segunda eu reviso

renatonlima avatar Mar 12 '22 00:03 renatonlima

This PR has the approved label and has been created more than 5 days ago. It should therefore be ready to merge by a maintainer (or a PSC member if the concerned addon has no declared maintainer). 🤖

OCA-git-bot avatar Mar 13 '22 23:03 OCA-git-bot

@netosjb,

Fazendo o review do PR dois pontos que vejo importante:

  1. Foi implementado na linha dos documentos fiscais o campo icmssn_range_id A ideia desse campo é que além de armazenar a faixa do simples para pegar o percentual de crédito do ICMS, também é que futuramente na apuração para geração da guia do simples seja apurado as operações por anexo do simples.
  2. O campos implifed_tax_range_id no res.company pode ser um m2m calculado que quando alterado os campos: annual_revenue, payroll_amount, main_cnae_id, cnae_secondary_ids, profit_calculation, is_industry
  3. O percentual efetivo do simples nacional poderia ser um campo calculado no l10n_br_fiscal.simplified.tax.range ao invés de ser criado outro objeto.
  4. A definição da faixa do simples nacional deveria estar no mapeamento da l10n_br_fiscal.operation.line pois lá é possível ler os dados da empresa, parceiro, produto e deduzir a faixa dependendo do regime da empresa, operação e tipo de produto (Produto Acabado, Mercadoria para Revenda)

renatonlima avatar Mar 15 '22 18:03 renatonlima

@renatonlima obrigado pela revisão!

segue o meu ponto de vista em relação as duvidas:

Foi implementado na linha dos documentos fiscais o campo icmssn_range_id A ideia desse campo é que além de armazenar a faixa do simples para pegar o percentual de crédito do ICMS, também é que futuramente na apuração para geração da guia do simples seja apurado as operações por anexo do simples.

Agora você pode pegar essas informações que já vão estar previamente calculados de dentro do effective_tax, acaba ficando mais simples também, tanto pra alíquota do ICMS que já tem implementado essa busca, tanto para geração da guia que ainda tem que ser implementado, mas é só buscar a informação de dentro do effective_tax.

O campos implifed_tax_range_id no res.company pode ser um m2m calculado que quando alterado os campos: annual_revenue, payroll_amount, main_cnae_id, cnae_secondary_ids, profit_calculation, is_industry

para cada empresa do simples nacional e cada tabela do simplifed_tax é um calculo de imposto diferente, por isso criei um objeto especifico para guardar essas informações, se eu não fizesse dessa forma eu teria que usar o property ( company_dependent) porém o seu uso é limitado, não consegui manipular a criação desses campos dentro do compute. talvez na 14.0 seja mais simples de fazer dessa forma.

O percentual efetivo do simples nacional poderia ser um campo calculado no l10n_br_fiscal.simplified.tax.range ao invés de ser criado outro objeto.

A mesma coisa acontece aqui, para cada empresa, para cada tabela do simplified.tax, vai existir um "percentual efetivo do simples nacional" por isso a criação do modelo effective.tax, pois não consigo utilizar o company_dependent.

A definição da faixa do simples nacional deveria estar no mapeamento da l10n_br_fiscal.operation.line pois lá é possível ler os dados da empresa, parceiro, produto e deduzir a faixa dependendo do regime da empresa, operação e tipo de produto (Produto Acabado, Mercadoria para Revenda)

Agora você pode pegar essas informações direto do effective_tax, você pode buscar elas a partir da company. se for produto acabado você pega o effective_tax do anexo 2, se for revenda você pega o effective_tax do anexo 1.

Dessa forma dá até uma limpada nos outros modelos, a logica do simples nacional não fica um pouco em cada modelo, e sim tudo no effective_tax.

antoniospneto avatar Mar 15 '22 19:03 antoniospneto

@antoniospneto vc conseguiria refazer o PR na 14.0? @renatonlima vc acha que vale a pena?

rvalyi avatar Jul 09 '23 21:07 rvalyi

@antoniospneto vc conseguiria refazer o PR na 14.0?

@renatonlima vc acha que vale a pena?

Consigo sim, em breve abro a PR.

antoniospneto avatar Jul 10 '23 03:07 antoniospneto

@antoniospneto vc conseguiria refazer o PR na 14.0? @renatonlima vc acha que vale a pena?

Consigo sim, em breve abro a PR.

@antoniospneto isso já foi incluído na v14?

mileo avatar Oct 02 '23 19:10 mileo

@mileo ainda não, mas pretendo fazer sim, é que ainda não iniciei a migração do meu cliente que faz o uso deste para a 14.0 mas será em breve

antoniospneto avatar Oct 02 '23 19:10 antoniospneto

@mileo ainda não, mas pretendo fazer sim, é que ainda não iniciei a migração do meu cliente que faz o uso deste para a 14.0 mas será em breve

Joia, se precisar de uma mão me avise que puxamos isso.

mileo avatar Oct 02 '23 20:10 mileo

Estou fechando esta pr pois não há mais o interesse da implementação desta funcionalidade na versão 12.0, para versão 14 existe a PR #2822.

antoniospneto avatar Feb 23 '24 19:02 antoniospneto