TL;DR — Resumo Rápido

Erro ao calcular horas extras no Aspel NOI: taxas dupla e tripla incorretas, códigos CFDI P019/P020 errados e retenção ISR incorreta. Solução completa.

O Aspel NOI exibe a mensagem “Error al calcular percepciones” ao tentar registrar tempo extraordinário, ou o recibo de folha CFDI é carimbado com os códigos P019 e P020 zerados ou com valores incorretos. O cálculo de horas extras no México tem regras específicas que o sistema deve respeitar para cumprir a Ley Federal del Trabajo (LFT) e os requisitos do SAT para o CFDI de folha versão 1.2. Este artigo explica por que o cálculo de horas extras falha no NOI e como corrigi-lo antes que afete seu processo de carimbo.

As horas extras no México são reguladas pelos Artigos 67 e 68 da LFT: as primeiras 9 horas semanais de tempo extraordinário são pagas em dobro, e as que excedem esse limite são pagas em triplo. Além disso, para fins de ISR, existe uma isenção parcial definida na LISR. Quando o NOI não está corretamente configurado para aplicar essas regras, o resultado é um cálculo incorreto que pode gerar um CFDI inválido ou uma retenção de imposto incorreta.

O Erro

Ao tentar calcular ou carimbar a folha com horas extras, o Aspel NOI pode mostrar as seguintes mensagens:

  • “Error al calcular percepciones” — aparece ao calcular a folha quando a fórmula de horas extras está mal configurada
  • “Código de percepción no válido para CFDI de nómina” — o código SAT atribuído à percepção não corresponde aos catálogos vigentes do SAT
  • “El importe exento supera el límite permitido” — a isenção de ISR está calculada incorretamente, superando o teto de 5 UMA semanal
  • “Error de validación: la clave de percepción 019 no puede tener importe en cero” — o CFDI é gerado com horas extras mas sem valor na percepção correspondente
  • “Desbordamiento aritmético en cálculo de percepciones” — resultado fora de intervalo, geralmente por uma fórmula incorreta que multiplica o salário mais do que o esperado

Os cenários mais comuns onde este erro aparece:

  1. Primeira configuração de horas extras em uma empresa que raramente as utiliza e as percepções P019/P020 nunca foram configuradas
  2. Mudança de período de folha de semanal para quinzenal ou mensal, onde a regra de “9 horas semanais” deve ser recalculada proporcionalmente
  3. Funcionários com turno diferencial cujo salário base é diferente do salário ordinário para fins do cálculo de horas extras
  4. Atualização da UMA sem atualizar o teto de isenção de ISR nas percepções de horas extras
  5. Conflito de fórmulas quando a percepção foi copiada da prima dominical ou de outro conceito e foi modificada parcialmente

Causa do Problema

Percepções P019 e P020 não configuradas ou configuradas incorretamente

O catálogo de percepções do NOI deve ter duas entradas separadas para horas extras: uma para as primeiras 9 horas semanais (dobro, código SAT 019) e outra para as horas que excedem esse limite (triplo, código SAT 020). Muitas instalações do NOI têm apenas uma percepção genérica de “horas extra” sem distinguir entre dobro e triplo, o que gera um erro quando o CFDI tenta validar os códigos contra o catálogo do SAT.

Fórmula de cálculo incorreta

A fórmula para horas extras duplas deve calcular: (salário diário ÷ horas da jornada) × horas extras × 2. Para horas extras triplas: (salário diário ÷ horas da jornada) × horas extras × 3. Se a fórmula não está corretamente parametrizada no NOI, o resultado pode ser o dobro do esperado ou produzir um erro de estouro.

Isenção de ISR mal configurada

A LISR estabelece que as primeiras 9 horas extras semanais são isentas de ISR até o equivalente a 5 vezes o valor da UMA semanal. Se o teto de isenção no NOI não estiver atualizado com o valor da UMA do exercício em curso, o sistema pode calcular uma isenção maior que o permitido ou menor que o correto.

Conflito entre períodos de folha

A regra das 9 horas semanais se aplica independentemente do período de pagamento. Se a empresa paga quinzenalmente, o limite equivalente seria 18 horas extras duplas por quinzena (9 × 2 semanas). O NOI nem sempre realiza essa conversão automaticamente.

Código CFDI desatualizado

O SAT atualiza periodicamente seu catálogo de chaves de percepção para o CFDI de folha. Se o NOI tem um código antigo configurado na percepção de horas extras, o PAC rejeitará o carimbo por código não reconhecido.

Solução Passo a Passo

1. Fazer backup do banco de dados do NOI

Antes de modificar o catálogo de percepções:

  1. Abra o Aspel NOI
  2. Vá a Utilerías > Respaldo
  3. Selecione Respaldo completo e salve fora da pasta de instalação
  4. Aguarde a conclusão e verifique se o arquivo de backup foi criado

2. Verificar e criar as percepções de horas extras

  1. Vá a Configuración > Catálogo de percepciones
  2. Busque percepções com código SAT 019 e 020
  3. Se não existirem, crie duas novas percepções:
    • Horas Extras Duplas (P019): Tipo = Percepción, Subtipo = Horas Extra, Código SAT = 019
    • Horas Extras Triplas (P020): Tipo = Percepción, Subtipo = Horas Extra, Código SAT = 020
  4. Configure a fórmula de cada uma (veja passo 3)
  5. Ative ambas as percepções e salve as alterações

3. Configurar a fórmula de cálculo correta

Para Horas Extras Duplas (P019):

  • Fórmula sugerida: (SDIARIO / HORAS_JORNADA) * HORAS_EXTRA_DOBLE * 2

Para Horas Extras Triplas (P020):

  • Fórmula sugerida: (SDIARIO / HORAS_JORNADA) * HORAS_EXTRA_TRIPLE * 3

Nota importante: No NOI, as variáveis exatas dependem da versão instalada. Consulte o manual de fórmulas do NOI ou entre em contato com o suporte da Aspel para confirmar os nomes de variáveis corretos na sua versão.

4. Configurar a isenção de ISR

  1. Na percepção P019 (Horas Extras Duplas), configure:
    • Isenção: Sim, até o teto de 5 UMA semanal
    • O valor da UMA 2026 é $108,57 diários → UMA semanal = $760,00 (7 dias) → Teto isento = $760,00 × 5 = $3.800,00 semanais
  2. Na percepção P020 (Horas Extras Triplas), configure:
    • Isenção: Não (0% isento — tributável 100%)

5. Capturar as horas extras corretamente na folha

  1. Abra o recibo de folha do funcionário
  2. Nas percepções, adicione P019 e insira as horas que não superam 9 por semana
  3. Se o funcionário trabalhou mais de 9 horas extras na semana, adicione P020 com as horas excedentes
  4. Verifique se o sistema calcula o valor correto antes de fechar o recibo
  5. Gere o CFDI de teste e verifique se ambos os códigos aparecem com seus respectivos valores isentos e tributáveis

6. Carimbar e validar o CFDI

  1. Após verificar os valores, prossiga com o carimbo
  2. Se o PAC rejeitar o CFDI, baixe o XML gerado antes da rejeição
  3. Revise os nós <Percepcion> com chave 019 e 020 e verifique se ImporteExento e ImporteGravado somam corretamente ao TotalImporte
  4. Corrija a configuração da percepção no NOI e recarimbe

Solução Alternativa

Se precisar carimbar com urgência e não puder corrigir a configuração de percepções imediatamente:

Inserção manual de valores

  1. Calcule manualmente os valores de horas extras duplas e triplas:
    • Horas extras duplas: (Salário diário ÷ horas da jornada) × horas extras duplas × 2
    • Horas extras triplas: (Salário diário ÷ horas da jornada) × horas extras triplas × 3
  2. No NOI, edite diretamente o valor da percepção (se a sua versão permitir em modo manual)
  3. Verifique se o valor isento não supera o teto de 5 UMA semanal

Aviso: Esta solução alternativa é temporária. Você deve corrigir a configuração do catálogo de percepções antes do próximo período para evitar que o erro se repita.

Prevenção

Para evitar erros no cálculo de horas extras no Aspel NOI:

  • Configure P019 e P020 desde a instalação inicial do NOI, mesmo que a empresa não use horas extras regularmente
  • Atualize o valor da UMA todo janeiro no início do exercício fiscal, ajustando o teto de isenção de ISR em P019
  • Documente o limite semanal por período de folha: 9 horas/semana = 18 horas/quinzena = 36 horas/mês
  • Verifique as fórmulas sempre que atualizar o Aspel NOI para uma nova versão
  • Realize um cálculo de teste com um funcionário piloto antes de aplicar horas extras a toda a folha
  • Mantenha o catálogo SAT atualizado: baixe periodicamente o catálogo de chaves de percepção do SAT
  • Capacite a equipe de folha na distinção entre horas extras duplas e triplas

Problemas Relacionados

Erro ao carimbar: “O valor da percepção 019 não pode ser maior que o salário”

Este erro do PAC aparece quando a isenção calculada supera o valor total da percepção. Revise a fórmula de isenção na percepção P019 — o valor isento nunca pode exceder o valor total da percepção nem o teto de 5 UMA semanal.

Horas extras que não aparecem no cálculo do IMSS

As horas extras fazem parte do salário variável para fins do IMSS. Se as percepções P019 e P020 não estiverem marcadas como “integráveis ao SBC” no NOI, as horas extras não serão incluídas no Salário Base de Contribuição.

ISR retido incorreto por horas extras

Se o ISR calculado não coincide com a retenção esperada, verifique se: (a) o valor isento de P019 está correto e não supera o teto de 5 UMA semanal, e (b) a tarifa mensal de ISR aplicada ao acumulado do período está correta para o nível salarial do funcionário.

Resumo

  • O erro ao calcular horas extras no Aspel NOI quase sempre se deve a percepções P019/P020 não configuradas, fórmulas incorretas ou isenção de ISR desatualizada
  • As primeiras 9 horas extras semanais são pagas em dobro (P019); as adicionais em triplo (P020)
  • A isenção de ISR para horas extras duplas aplica até 5 UMA semanal — atualize este teto todo janeiro
  • Capture as horas extras em duas percepções separadas (P019 e P020) — o NOI não separa automaticamente o bloco duplo do triplo
  • Verifique se os códigos 019 e 020 estão no catálogo SAT vigente e que o CFDI inclui ImporteExento e ImporteGravado corretamente calculados
  • As horas extras integram o SBC do IMSS — certifique-se de que as percepções estejam marcadas como integráveis
  • Sempre faça backup antes de modificar o catálogo de percepções do NOI

Artigos Relacionados