Motor de Cálculo de Impuestos
El motor de cálculo determina todos los impuestos aplicables con base en las reglas fiscales, perfil de la empresa y tipo fiscal del cliente.
Impuestos Soportados
| Impuesto | Descripción | Jurisdicción |
|---|---|---|
| ISS | Imposto sobre Serviços | Municipal |
| PIS | Programa de Integração Social | Federal |
| COFINS | Contribuição para Financiamento da Seguridade Social | Federal |
| CSLL | Contribuição Social sobre o Lucro Líquido | Federal |
| IRPJ | Imposto de Renda Pessoa Jurídica | Federal |
| IRRF | Imposto de Renda Retido na Fonte | Federal |
| CSRF | PIS + COFINS + CSLL retenidos en conjunto | Federal |
| INSS | Contribuição à Previdência Social | Federal |
| CBS | Contribuição sobre Bens e Serviços (2026+) | Federal |
| IBS | Imposto sobre Bens e Serviços (2026+) | Federal/Estadual |
Flujo de Cálculo
1. Obtener Reglas Aplicables
Consulta el TaxRuleService con el contexto de la operación. Las reglas se filtran por ámbito y prioridad.
2. Resolver Alícuotas
- Extrae alícuotas de las reglas aplicables
- Hace fallback al Perfil Fiscal de la empresa
- Aplica sobrescrituras de retención de la cuenta de cobro
3. Calcular Cada Impuesto
ISS = valor_servicio × (alícuota_iss / 100)
PIS = valor_servicio × (alícuota_pis / 100)
COFINS = valor_servicio × (alícuota_cofins / 100)
CSLL = valor_servicio × (alícuota_csll / 100)
IRRF = valor_servicio × (alícuota_irrf / 100) [siempre retenido]
CSRF = valor_servicio × (4,65 / 100) [siempre retenido]
INSS = valor_servicio × (alícuota_inss / 100) [siempre retenido]
4. Redondeo
Cada impuesto se redondea independientemente con Math.round(). Compensación de redondeo aplicada al impuesto con mayor contribución.
5. Resultado
Total de impuestos = suma de todos los impuestos
Total retenido = suma de los impuestos con flag isWithheld
Valor neto = valor del servicio - total de impuestos
CBS/IBS (Reforma Tributaria 2026+)
El sistema ya soporta los nuevos impuestos de la reforma tributaria:
| Modo | Descripción |
|---|---|
informative | Calculado pero no incluido en el total (2026) |
compositive | Incluido en el total (2027+) |
Las alícuotas de CBS e IBS son configurables en el Perfil Fiscal de la empresa.