---
title: "Lucro Real: Anual × Trimestral — qual apuração paga menos IRPJ/CSLL"
method: POST
path: "/api/v1/calc/lucro-real-anual-vs-trimestral"
tags: ["calc", "pj"]
---

# Lucro Real: Anual × Trimestral — qual apuração paga menos IRPJ/CSLL

`POST /api/v1/calc/lucro-real-anual-vs-trimestral`

## Request

- Base URL: `https://api.calculas.com.br`
- URL: `https://api.calculas.com.br/api/v1/calc/lucro-real-anual-vs-trimestral`
- Auth: HTTP bearer

Compare a apuração Anual (estimativa mensal + ajuste em 31/dez) com a Trimestral no Lucro Real. Veja o efeito da trava de 30% na compensação de prejuízos, o adicional de 10% do IRPJ e o fluxo de caixa mês a mês.

## Request body

- object
  - `trimestres` object[], required: Exatamente 4 trimestres (1T, 2T, 3T, 4T) do ano-calendário, EM ORDEM. Cada item tem receita, custos, despesas, adições e exclusões. Prejuízo é representado por custos+despesas maiores que a receita — é o coração da comparação (trava de 30% no Trimestral vs consolidação no Anual).
    - `receitaBrutaCents` integer, required: Receita bruta total do trimestre (vendas + serviços + outras receitas operacionais). Centavos. Ex: R$ 30M → 3000000000.
    - `custosDedutiveisCents` integer, required: CMV/CSP do trimestre (custo dos produtos/serviços vendidos), dedutível conforme RIR/2018 art. 290+. Centavos.
    - `despesasDedutiveisCents` integer, required: Despesas operacionais dedutíveis do trimestre (administrativas, comerciais, financeiras líquidas) — RIR/2018 art. 311. Centavos.
    - `adicoesCents` integer: Adições ao lucro contábil (despesas indedutíveis: multas punitivas, brindes, provisões não dedutíveis). IN RFB 1.700/2017 art. 62. Centavos. Padrão 0.
    - `exclusoesCents` integer: Exclusões do lucro contábil (dividendos recebidos, reversões de provisões, depreciação acelerada incentivada). IN RFB 1.700/2017 art. 63. Centavos. Padrão 0.
  - `prejuizoFiscalAcumuladoCents` integer: Saldo de prejuízo fiscal de exercícios ANTERIORES trazido para compensação (Lei 9.065/95 art. 15 — limite 30% da base positiva, nos dois modos). Centavos. Padrão 0.
  - `regimeAtual` 'LP' | 'Real-anual' | 'Real-trimestral' | 'novo': Regime tributário atual da empresa. "novo" = empresa em constituição ou primeira opção pelo Real. "LP" acima de R$ 78M/ano dispara alerta de obrigatoriedade (Lei 9.718/98 art. 14).
  - `distribuiLucrosTodosTrimestres` boolean: Política da empresa: distribui dividendos a cada trimestre? Não muda o tributo — afeta o caixa disponível para as estimativas mensais do Real Anual (gera nota no resultado).
  - `antecipacaoDistribuicaoCents` integer: Distribuição antecipada total no ano (centavos). Quando excede o lucro acumulado do 1º semestre, pode bloquear o balancete de suspensão/redução no Real Anual (IN RFB 1.700/17 art. 47) — gera alerta. Padrão 0.
  - `currentDate` string, date-time: ISO-8601 com offset. Default: tempo do servidor. Use pra reprodutibilidade / cache semantico.

## Response `200`

OK

- object
  - `ok` true, required
  - `data` object, required: Resultado dependente da calc — ver schema individual
  - `meta` object

## Other responses

- `422`: Input invalido (Zod parse falhou)
- `500`: Engine error

---

[API](https://skmtc.dev/calculas/apis/contai-api.md) · [All operations](https://skmtc.dev/calculas/apis/contai-api/llms.txt) · [OpenAPI document](https://skmtc.dev/calculas/apis/contai-api/revisions/26a00749292b?raw)
