Sistema de Cálculo para Reforma Tributária
Integração com ACBrNFe • IBS • CBS • Imposto Seletivo • Governo
MAIS DE 75 DESENVOLVEDORES USANDO A uFuncoesAdicionaisRT
✅ 3 (três grupos) formados com acesso a classe emitindo em HOMOLOGAÇÃO e PRODUÇÃO
Classe para Reforma Tributária
A classe TFuncoesAdicionaisRT é uma solução prática e inicial para a implementação da Reforma Tributária dentro de sistemas desenvolvidos em pascal(Lazarus/Delphi).
Importante destacar que a classe ainda não contempla 100% das conformidades da Reforma Tributária, uma vez que a própria Secretaria da Fazenda está em constante atualização e ajustes quanto às regras, layouts e especificações técnicas. O ano de 2026 será considerado um período de testes, onde as notas fiscais continuarão sendo emitidas em ambiente oficial de autorização, mas com as regras da Reforma Tributária operando em ambiente de simulação. Nesse período, os valores calculados **não terão efeito fiscal real**, mas servirão para validações e ajustes necessários ao novo modelo tributário.
Sabemos que o tempo até a entrada em vigor da nova legislação é curto, e implementar todas as regras de cálculo, validação, criação de telas, ajustes e remodelagem do banco de dados demanda um grande esforço técnico. Pensando nisso, esta classe foi desenvolvida para agilizar esse processo, oferecendo uma base sólida e funcional que pode ser facilmente integrada ao seu projeto.
Ao utilizar a TFuncoesAdicionaisRT, basta adicioná-la ao seu sistema e criar uma procedure de integração que executará automaticamente as validações e cálculos tributários conforme a nova estrutura de impostos (IBS, CBS e Imposto Seletivo).
A configuração é simples: são necessários apenas dois campos no cadastro de produtos — CST e CClasstrib — sendo obrigatório apenas o CClasstrib. Com isso, você já terá a classe realizará os cálculo automaticamente dos novos tributos de forma padronizada e conforme as diretrizes da Reforma Tributária , e com suas constantens e variáveis informado pelo seu sistema.
Desenvolvida em pascal(Lazarus/Delphi) e totalmente integrada ao componente ACBrNFe, a classe TFuncoesAdicionaisRT é um passo paralelo para adequar seu sistema ao novo modelo fiscal, garantindo agilidade, conformidade e redução no tempo de desenvolvimento.
A partir de 2026, os desenvolvedores e empresas terão um prazo maior para realizar todas as remodelagens necessárias em seus projetos — incluindo ajustes em telas, formulários, relatórios, estrutura de banco de dados e demais rotinas internas — de modo a consolidar definitivamente a nova arquitetura tributária. Com esta classe, você já estará preparado para essa transição, começando com uma base funcional e extensível.
Adquira agora e antecipe sua adequação à Reforma Tributária! Comece a validar seus cálculos e processos fiscais com a TFuncoesAdicionaisRT e garanta vantagem técnica e competitiva.
Implementa automaticamente o cálculo de IBS, CBS e Imposto Seletivo conforme a Reforma Tributária de 2026.
Baseada nas normas técnicas e layouts oficiais da SEFAZ, com arredondamentos e validações padronizadas para Finalidade da NF-e (1 - NFe - Normal)
Permite validação e leitura direta de classificações tributárias em qualquer banco de dados Firebird, MySQL , entre outros.
Consulta e valida tabelas oficiais utilizando TFDQuery, TZQuery ou qualquer componente TDataSet.
Preenche automaticamente as tags da Reforma Tributária diretamente nos objetos do ACBrNFe.
Inclui exemplos práticos, instruções detalhadas e orientações de integração com o seu projeto pascal.
Projetada para a fase de testes e transição e da Reforma Tributária, antecipando ajustes e adequações obrigatórias.
Necessita apenas de dois campos no cadastro de produtos: CST e CClasstrib — sendo este último obrigatório.
Disponibilizada em formato pascal .pas, permitindo personalização e evolução conforme a necessidade do seu sistema.
Receba versões revisadas no grupo VIP Premium Mensal conforme as novas NTs e manuais da SEFAZ forem publicados durante o período de transição.
Acesso ao grupo VIP Premium Mensal exclusivo de desenvolvedores pascal para dúvidas, testes e melhorias da classe.
Ideal para escritórios contábeis, ERPs e sistemas fiscais que desejam antecipar a adequação ao novo modelo tributário.
Assista passo a passo como implementar a classe TFuncoesAdicionaisRT v2.1 para Reforma Tributária no demo do ACBrDemo(componente Opensource) revisão ACBr: 43289
Assistir no YouTube📺 Descubra como integrar com ACBrNFe, validar com banco de dados e emitir notas fiscais com a Reforma Tributária automática.
💡 Estrutura da procedure Nota_Produto_RT_v2 — organizada por etapas da Reforma Tributária.
O fluxo mostra todas as etapas internas de cálculo da TFuncoesAdicionaisRT, desde a inicialização e leitura de variáveis até a totalização de itens, aplicação de créditos presumidos, diferimento, monofásicos e cálculo de IBS, CBS e IS.
Esse processo é modular e automatizado, permitindo que cada rotina (UF, Município, Nacional) seja validada e consolidada conforme o tipo de operação definido pelo CClasstrib do produto ou operação.
{ Verificar se Reforma Tributária está ativa }
if not TFuncoesAdicionaisRT.LerINI then
begin
ShowMessage('Reforma Tributária não está ativa');
Exit;
end;
Esta é a procedure responsável por processar cada item da nota fiscal com a Reforma Tributária:
{ Dentro de um loop sobre os produtos da NFe }
for i := 0 to ACBrNFe1.NotasFiscais[0].Det.Count - 1 do
begin
Produto := ACBrNFe1.NotasFiscais[0].Det.Items[i];
{ Chamar procedure que processa cada produto }
Nota_Produto_RT;
end;
Após processar todos os produtos, consolidar os totais:
{ Após processar todos os itens, chamar: }
Nota_TotalRT;
{ Esta procedure realiza:
- Soma de todas as bases de cálculo
- Total de IBS (UF + Município)
- Total de CBS
- Total de Imposto Seletivo
- Consolidação de diferenciais e créditos
- Atualização do valor total da NFe
}
{ A NFe está pronta com toda a Reforma Tributária }
ACBrNFe1.Assinar;
ACBrNFe1.Validar;
ACBrNFe1.Enviar (lote, imprimir, sincrono, compactar);
A classe consulta uma tabela no banco de dados contendo todas as configurações de classificação tributária:
| Campo | Descrição | Tipo |
|---|---|---|
| CLASSTRIB | Código da classificação tributária (ex: '000001', '410013') | String(6) |
| REDUCAO_ALIQUOTA | Flag: se permite redução de alíquota (S/N) | Char(1) |
| DIFERIMENTO | Flag: se permite diferimento (S/N) | Char(1) |
| TRIBUTACAO_REGULAR | Flag: se permite tributação regular (S/N) | Char(1) |
| MONOFASICA | Flag: se é monofásica (S/N) | Char(1) |
| PERCENTUAL_REDUCAO_IBS | Percentual de redução IBS (0-100) | Numeric(5,2) |
| PERCENTUAL_REDUCAO_CBS | Percentual de redução CBS (0-100) | Numeric(5,2) |
| NFE | Flag: válido para NFe (S/N) | Char(1) |
{ A classe utiliza a função: }
Q := TDados.BuscarClassTrib(LClasse);
{ Que retorna um TFDQuery com:
- REDUCAO_ALIQUOTA: Se aplica redução
- DIFERIMENTO: Se permite diferimento
- TRIBUTACAO_REGULAR: Se permite tributação normal
- MONOFASICA: Se é regime monofásico
- PERCENTUAL_REDUCAO_IBS: Percentual de redução
- PERCENTUAL_REDUCAO_CBS: Percentual de redução
- NFE: Se é válido para emissão de NFe
}
R: A classe busca no banco de dados na tabela DFE_CLASSTRIB_RT, consultando flags como REDUCAO_ALIQUOTA, DIFERIMENTO, TRIBUTACAO_REGULAR, etc. Se a classificação não existir, retorna mensagem informando a divergência.
R: Não. A classe suporta qualquer tipo de query (TFDQuery, TZQuery, TIBQuery) através de RTTI genérico. Use a mesma conexão do seu sistema.
R: A classe oferece duas funções: uma padrão que inclui todos os componentes do ACBrNFe, e outra com parâmetros permitindo definir quais componentes incluir/excluir no cálculo da base.
R: A classe exibe uma mensagem informando a divergência e oferece opção de usar tributação padrão (CST 000, cClassTrib 000001) ou cancelar a operação.
R: A classe verifica os critérios de acordo com a tabela do banco de dados. Se qualquer um indicar diferimento, este é aplicado automaticamente.
R: Sim. Todos os cálculos utilizam as funções ArredondaSefaz e ArredondaValorParaSefaz que garantem 2 casas decimais e piso mínimo de R$0,01.
R: A classe oferece métodos de validação isolados que funcionam sem banco. Porém, para máxima conformidade, recomendamos usar a tabela oficial de classificações.
R: Sim. Como as configurações estão no banco de dados, basta atualizar a tabela DFE_CLASSTRIB_RT conforme novas Notas Técnicas. A classe usará os novos valores automaticamente.
procedure ProcessarProdutoRT;
var
Produto: TDetCollectionItem;
vBC, vIBS, vCBS: Double;
begin
{ Obter produto }
Produto := ACBrNFe1.NotasFiscais[0].Det.Items[0];
{ 1. Validar ativação }
if not TFuncoesAdicionaisRT.LerINI then
Exit;
{ 2. Calcular base }
vBC := TFuncoesAdicionaisRT.CalcularBaseCalculo(Produto);
{ 3. Validar e buscar classificação no banco }
{ (A procedure Nota_Produto_RT faz isso automaticamente) }
{ 4. Após processamento, acessar os valores calculados }
vIBS := Produto.Imposto.IBSCBS.gIBSCBS.gIBSUF.vIBSUF +
Produto.Imposto.IBSCBS.gIBSCBS.gIBSMun.vIBSMun;
vCBS := Produto.Imposto.IBSCBS.gIBSCBS.gCBS.vCBS;
ShowMessage(Format('Base: %.2f | IBS: %.2f | CBS: %.2f',
[vBC, vIBS, vCBS]));
end;
procedure EmitirNFeComReformaTributaria;
var
i: Integer;
begin
try
{ ===== ETAPA 1: VALIDAÇÃO ===== }
if not TFuncoesAdicionaisRT.LerINI then
begin
ShowMessage('Reforma Tributária não ativa');
Exit;
end;
{ ===== ETAPA 2: PREENCHER CABEÇALHO ===== }
PreencherIdentificacao;
PreencherEmitente;
PreencherDestinatario;
// ... demais procedimentos padrão ...
{ ===== ETAPA 3: PROCESSAR PRODUTOS COM RT ===== }
if not queryItem.Active then
queryItem.Open;
queryItem.First;
while not queryItem.Eof do
begin
with ACBrNFe1.NotasFiscais.Items[0].NFe.Det.Add do
begin
// =========================
// PRODUTO / SERVIÇO
// =========================
Prod.nItem := queryItem.RecNo; // número sequencial do item
Prod.cProd := queryItem.FieldByName('CODIGO').AsString;
Prod.cEAN := queryItem.FieldByName('EAN').AsString;
Prod.xProd := queryItem.FieldByName('DESCRICAO').AsString;
// =========================
// IMPOSTOS PADRÃO (antes da RT)
// =========================
Imposto.vTotTrib := queryItem.FieldByName('VLR_TRIBUTOS').AsFloat;
with Imposto.ICMS do
begin
///
end;
with Imposto.PIS do
begin
///
end;
with Imposto.COFINS do
begin
///
end;
// =========================
// PROCESSAR REFORMA TRIBUTÁRIA
// =========================
Nota_Produto_RT;
end;
// Avança para o próximo item
queryItem.Next;
end;
{ ===== ETAPA 4: CONSOLIDAR TOTAIS ===== }
Nota_TotalRT;
{ ===== ETAPA 5: CONTINUAR COM NFe PADRÃO ===== }
PreencherTransporte;
PreencherCobranca;
// ... demais procedimentos ...
{ ===== ETAPA 6: ASSINAR E TRANSMITIR ===== }
ACBrNFe1.Assinar;
ACBrNFe1.Validar;
ACBrNFe1.Enviar(lote, imprimir, sincrono, compactar);
ShowMessage('NFe emitida com sucesso!');
except
on E: Exception do
ShowMessage('Erro na emissão: ' + E.Message);
end;
end;
| Grupo ACBrNFe | Campo | Origem |
|---|---|---|
| Imposto.IBSCBS | CST, cClassTrib | Banco de dados / Cadastro do produto |
| gIBSCBS | vBC | Cálculo automático dos componentes |
| gIBSUF | pIBSUF, vIBSUF, gRed, gDif | Cálculo com validações e reduções |
| gIBSMun | pIBSMun, vIBSMun, gRed, gDif | Cálculo municipal |
| gCBS | pCBS, vCBS, gRed, gDif | Cálculo nacional |
| gIBSCredPres | cCredPres, pCredPres, vCredPres | A partir de 2027 (data configurável) |
| gCBSCredPres | cCredPres, pCredPres, vCredPres | Crédito presumido CBS |
| ISel | CSTIS, vBCIS, pIS, vIS | Imposto Seletivo (se ativo) |
| Campo | Descrição |
|---|---|
| Total.ISTot.vIS | Total de Imposto Seletivo |
| Total.IBSCBSTot.vBCIBSCBS | Base de cálculo total |
| Total.IBSCBSTot.gIBS.vIBS | IBS total (UF + Município) |
| Total.IBSCBSTot.gIBS.gIBSUFTot.vIBSUF | IBS Estadual consolidado |
| Total.IBSCBSTot.gIBS.gIBSMunTot.vIBSMun | IBS Municipal consolidado |
| Total.IBSCBSTot.gCBS.vCBS | CBS total consolidado |
| Total.IBSCBSTot.gMono.* | Totais de regime monofásico |
| Total.vNFTot | Valor total da NFe com RT |
Automatiza todos os cálculos complexos da Reforma Tributária em poucas linhas de código.
Todos os cálculos seguem rigorosamente as especificações e normas oficiais.
Atualize a tabela da reforma sem alterar o código-fonte.
Funciona transparentemente com ACBrNFe, sem necessidade de integrações complexas.
Detecta e avisa sobre divergências antes de qualquer transmissão.
Código comentado e exemplos práticos inclusos para rápida implementação.
Compra em Grupo - Mínimo de 20 Pessoas
Assim que houver 20 pagamentos confirmados, a classe será disponibilizada a todos os que efetuaram o pagamento.
R$ 575,90
Aproveite a oferta e garanta sua vaga 🔥
Adquirir Agora no PIXRecomendado para quem não quer ficar esperando no grupo coletivo.
Preço anterior R$ 3.800,00*
R$ 3.200,00
Acesso imediato após confirmação
ADQUIRIR VERSÃO FULLImplementar de uma forma rápida para emissão da nota.
👥 Mínimo de 20 Pessoas
Assim que 20 pessoas confirmarem o pagamento, a classe será entregue para todos do grupo.
📦 Entrega da Classe
Você receberá o fonte da TFuncoesAdicionaisRT v2.1 quando o grupo fechar.
💳 Formas de Pagamento
Cartão de Crédito*, PIX**
🔄 Atualizações Mensais
GRUPO VIP de atualizações conforme demandas dos usuários e notas técnicas. Contratação individual. Consulte valor.
🎯 Não perca! Faça parte deste grupo exclusivo para tirar dúvidas agora mesmo!
SABER MAIS SOBRE O GRUPO TIRA DUVIDASIntegre a classe TFuncoesAdicionaisRT ao seu sistema pascal(Lazarus/Delphi) e automatize o cálculo da Reforma Tributária de forma completa, prática e conforme os novos padrões fiscais.
⚙️ A versão v2.1 traz validações de banco de dados, flexibilidade de conexão e conformidade com as especificações da SEFAZ. Ideal para empresas e desenvolvedores que desejam antecipar a adequação à Reforma Tributária de 2026.
⚠️ Atenção: A classe TFuncoesAdicionaisRT é uma ferramenta de apoio técnico e não substitui a análise contábil ou fiscal individual de cada empresa. O comprador e usuário da classe é o único responsável por aplicar eventuais modificações, atualizações e ajustes necessários conforme novas Notas Técnicas, layouts oficiais ou determinações da Secretaria da Fazenda. É altamente recomendada a consultoria do contador responsável para validação dos cálculos e regras fiscais implementadas.