Error CFDI40110 al timbrar: el Descuento del comprobante es mayor que el Subtotal
El error CFDI40110 aparece cuando el atributo Descuento del nodo cfdi:Comprobante tiene un valor mayor que el SubTotal. Es una comparación entre dos montos del mismo comprobante: el descuento total no puede superar lo que se vendió antes de descontar. Aquí verás cómo se relacionan ambos campos, por qué suele fallar cuando el descuento se captura a mano y cómo dejar el XML correcto.
Resumen rápido del error
- Código: CFDI40110
- Campo: Descuento
- Nodo del XML:
cfdi:Comprobante - Regla del SAT (Anexo 20): El valor registrado debe ser menor o igual que el atributo Subtotal.
- Mensaje de rechazo: El valor registrado en el campo Descuento no es menor o igual que el campo Subtotal.
- Cuándo aparece: al timbrar, antes de que se genere el UUID.
¿Qué significa el error CFDI40110?
En CFDI 4.0 el SubTotal es la suma de los importes de los conceptos antes de descuentos e impuestos. El Descuento del comprobante es el monto total que se descuenta de esa suma. Como no se puede descontar más de lo que se vendió, la regla CFDI40110 exige que Descuento sea menor o igual que SubTotal.
Esta regla trabaja a nivel de comprobante. Si cada concepto cumple que su descuento no excede su importe, la suma de descuentos nunca supera al subtotal, así que el error casi siempre indica que el descuento global se capturó, calculó o arrastró por separado.
Dónde se valida: el nodo Comprobante y Descuento
La validación se aplica al atributo Descuento del nodo raíz cfdi:Comprobante, y lo compara con el atributo SubTotal del mismo nodo. No revisa los conceptos uno por uno; eso lo hace otra regla.
- CFDI40110: el descuento del comprobante no debe ser mayor que el subtotal (esta ficha).
- CFDI40111: el descuento global debe existir y coincidir con la suma de los descuentos de los conceptos cuando el comprobante es I, E o N.
- CFDI40112: el descuento del comprobante respeta los decimales de la moneda.
- CFDI40169: el descuento de un concepto no debe ser mayor que su importe.
- CFDI40168: el descuento de un concepto debe tener los mismos decimales que el importe.
Causas más comunes del error CFDI40110
- El descuento incluye el IVA. Se restó del subtotal un monto calculado sobre el precio con impuesto, y el resultado supera la base.
- El descuento se capturó dos veces. Una vez en cada concepto y otra en el campo global, de modo que la suma duplica el monto real.
- Se capturó un porcentaje como si fuera un monto. Un descuento del 15 por ciento se escribió como
15.00o como1500.00por un cálculo equivocado. - El subtotal ya viene neto. El sistema restó el descuento al subtotal y luego volvió a declararlo, con lo cual
Descuentoqueda por encima de unSubTotalya reducido. - Se editó el subtotal pero no el descuento. Se quitó un concepto del comprobante y el descuento global quedó con el valor anterior.
- El comprobante tiene un descuento en moneda distinta. Se tomó un monto en dólares para un comprobante en pesos, sin convertirlo con el tipo de cambio.
Cómo corregir el error CFDI40110 paso a paso
- Anota el SubTotal del comprobante. Revisa que sea la suma de los importes de los conceptos antes de descuentos.
- Suma los descuentos de los conceptos. Ese total debe coincidir con el
Descuentoglobal (CFDI40111). - Compara ambos montos.
Descuentodebe ser menor o igual queSubTotal; si no, localiza el origen de la diferencia. - Corrige el descuento duplicado o con IVA. Calcula el descuento sobre la base antes de impuestos.
- Revisa el Total. Después del ajuste, comprueba que el total siga la fórmula del comprobante.
- Vuelve a timbrar. Con los montos coherentes, el PAC pasa a las siguientes validaciones.
Ejemplo en el XML: incorrecto y correcto
Ejemplo del encabezado de un comprobante con tres conceptos y un descuento global; los importes son ficticios:
Incorrecto:
<cfdi:Comprobante Moneda="MXN" SubTotal="2500.00" Descuento="2800.00" Total="..." ... >
Correcto:
<cfdi:Comprobante Moneda="MXN" SubTotal="2500.00" Descuento="250.00" Total="2610.00" ... >
En el ejemplo correcto el descuento es el diez por ciento del subtotal y el total resulta de 2,500.00 menos 250.00 más 360.00 de IVA al 16 por ciento. Los importes son ficticios.
Subtotal, Descuento y Total: cómo se relacionan
Muchos errores de montos nacen de mezclar tres campos que se calculan en orden. Primero se suman los importes de los conceptos para obtener el SubTotal. Después se suman los descuentos de los conceptos para obtener el Descuento. La base de cada impuesto se calcula sobre el importe menos el descuento del concepto, y solo al final se obtiene el Total. Si el descuento se captura de forma independiente, es muy fácil que quede desfasado cuando cambia una línea. Por eso conviene trabajar el descuento desde cada concepto y dejar que el sistema genere el total global. Si quieres ver la estructura general del comprobante, consulta la guía de facturación electrónica CFDI 4.0.
Cómo evitar este error con Soicont
Soicont es una plataforma de facturación electrónica CFDI 4.0 con PAC autorizado. Antes de enviar el comprobante a timbrar, valida los datos del receptor, los catálogos del SAT y los cálculos de impuestos, y si algo no cuadra te muestra el error con una explicación clara para que lo corrijas y vuelvas a emitir. Además, tus folios no caducan y puedes facturar para varias empresas (multi-RFC) desde una sola cuenta.
Conoce la facturación electrónica CFDI 4.0, la plataforma y los paquetes de folios.
Errores relacionados
- Error CFDI40111 (Descuento): el descuento global debe coincidir con la suma de los descuentos de los conceptos.
- Error CFDI40112 (Descuento): el descuento global debe respetar los decimales de la moneda.
- Error CFDI40169 (Descuento): el descuento de un concepto no debe ser mayor que su importe.
- Error CFDI40168 (Descuento): el descuento de un concepto debe tener los decimales del importe.
- Error CFDI40119 (Total): el total debe coincidir con la fórmula del comprobante.
Consulta también el Centro de Soluciones con todos los errores del SAT.
Preguntas frecuentes
¿Qué significa el error 40110?
Que el descuento del comprobante es mayor que su subtotal.
¿El subtotal incluye el descuento?
No. El subtotal es la suma de importes antes de descuentos e impuestos.
¿Es lo mismo que el 40169?
No. El 40169 compara el descuento de un concepto con su importe; el 40110 compara el descuento global con el subtotal.
¿Puede el descuento ser igual al subtotal?
La regla permite menor o igual; si es igual, revisa el caso con tu contador.
¿Debo declarar el descuento si es cero?
Consulta con tu contador cuándo corresponde omitirlo o declararlo en cero.
¿Se genera UUID con este error?
No. El comprobante se rechaza antes del timbrado.
¿Todavía no se resuelve?
Si después de revisar estos puntos el error continúa, escríbenos desde la página de contacto con el código del error y el XML que intentaste timbrar (nunca envíes contraseñas ni la llave privada del CSD). Si aún no tienes cuenta, crea la tuya y empieza a facturar con validaciones previas.