La versión de su navegador no está debidamente actualizada. Le recomendamos actualizarla a la versión más reciente.

SOLUCIONAR EL ERROR CFDI40180 - El valor del campo Importe o que corresponde a Traslado no se encuentra entre el limite inferior y superior permitido

Publicado 08/05/2025

 El error CFDI40180 del SAT se refiere a un problema con el valor del campo "Importe" en un nodo de traslado de impuestos dentro de un CFDI. Este error ocurre cuando el importe del traslado no está dentro del rango permitido con base en la tasa/cuota e importe base del impuesto.

???? Causa del error CFDI40180

Este error ocurre cuando el valor del campo:

 

<cfdi:Traslado Importe="..." TasaOCuota="..." Base="..." />

 

no se encuentra dentro del rango calculado de forma automática por el SAT para ese impuesto, según esta fórmula:

 

 Importe = Base × TasaOCuota 

 

Solución

 

Asegúrate de que el campo Importe sea igual al resultado de:

 

Importe = Base × TasaOCuota

 

 Y redondeado a dos decimales. Se permite una tolerancia mínima (normalmente ±0.000002), pero para evitar errores se recomienda usar exactamente el resultado redondeado.

 

???? Ejemplo con error

 

<cfdi:Concepto Importe="100.00" ValorUnitario="100.00" Cantidad="1">
  <cfdi:Impuestos>
    <cfdi:Traslados>
      <cfdi:Traslado Base="100.00" Impuesto="002" TipoFactor="Tasa" TasaOCuota="0.160000" Importe="15.99"/>
    </cfdi:Traslados>
  </cfdi:Impuestos>
</cfdi:Concepto>

 

 

 

Aquí el cálculo correcto sería:

 

100.00 × 0.160000 = 16.0000

 

Pero se está usando 15.99, lo cual está fuera del rango permitido.

 

 

 

Ejemplo corregido

 

<cfdi:Concepto Importe="100.00" ValorUnitario="100.00" Cantidad="1">
  <cfdi:Impuestos>
    <cfdi:Traslados>
      <cfdi:Traslado Base="100.00" Impuesto="002" TipoFactor="Tasa" TasaOCuota="0.160000" Importe="16.00"/>
    </cfdi:Traslados>
  </cfdi:Impuestos>
</cfdi:Concepto>

 

 

 

Ahora Importe="16.00" coincide con el resultado correcto y se evita el error CFDI40180.

 

Recomendaciones adicionales

 

  • Usa siempre 6 decimales en TasaOCuota (ej. 0.160000).

  • Calcula Importe como Base * TasaOCuota y redondea a 2 decimales.

  • Verifica que no estés redondeando antes de multiplicar.