---
title: "Calculadora de Margem de Contribuição e CMV"
method: POST
path: "/api/v1/calc/margem-contribuicao"
tags: ["calc", "pj"]
---

# Calculadora de Margem de Contribuição e CMV

`POST /api/v1/calc/margem-contribuicao`

## Request

- Base URL: `https://api.calculas.com.br`
- URL: `https://api.calculas.com.br/api/v1/calc/margem-contribuicao`
- Auth: HTTP bearer

Calcule a Margem de Contribuição do seu negócio a partir do faturamento bruto, custos variáveis e custos fixos. Descubra o resultado operacional, o ponto de equilíbrio em receita e a folga financeira do mês.

## Request body

- object
  - `receitaBrutaCents` integer, required: Receita bruta total do período (faturamento bruto antes de deduções). Valor em centavos. Ex: R$ 50.000 → 5000000.
  - `custosVariaveisCents` integer, required: Total agregado de custos variáveis do período: CMV/CPV (custo de mercadoria ou serviço vendido), comissões, impostos sobre faturamento (PIS, COFINS, ISS, ICMS), embalagem, frete de entrega, taxa de maquininha. Valor em centavos. Ex: R$ 20.000 → 2000000. Quando "custosVariaveisDetalhados" tem itens, este campo é IGNORADO e o engine usa a soma das categorias.
  - `custosVariaveisDetalhados` object[]: Custos variáveis detalhados por categoria (materia_prima, frete_logistica, marketing, mao_de_obra, software_assinaturas, outro). Cada item: { categoria, valorCents, descricao? }. Padrão []. Quando o array tem itens, SUBSTITUI `custosVariaveisCents` para o cálculo. Use "outro" + descrição (ex: "PIS/COFINS", "taxa maquininha") para tributos sobre venda.
    - `categoria` 'aluguel_espaco' | 'mao_de_obra' | 'materia_prima' | 'marketing' | 'software_assinaturas' | 'contador_juridico' | 'utilidades' | 'frete_logistica' | 'manutencao_equipamentos' | 'plano_saude_individual' | 'seguro_vida' | 'equipamento' | 'cursos_capacitacao' | 'outro', required
    - `valorCents` integer, required: Valor em centavos. Ex: R$ 200 → 20000.
    - `descricao` string: Descrição livre do item (opcional, especialmente útil quando categoria = "outro"). Máx. 60 caracteres.
  - `custosFixosCents` integer: Total de custos fixos do período (aluguel, salários, contador, energia, seguros, pró-labore). Valor em centavos. Ex: R$ 10.000 → 1000000. Opcional: se informado, calcula o resultado operacional e o ponto de equilíbrio em receita.
  - `deducoesCents` integer: Deduções da receita bruta: devoluções de mercadorias, cancelamentos, descontos incondicionais na nota fiscal e abatimentos. Valor em centavos. Ex: R$ 1.000 → 100000. Opcional: se informado, a base de cálculo da margem é a receita líquida (receita bruta − deduções).
  - `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)
