Error CFDI40119 al timbrar: el Total debe ser la suma del subtotal menos descuentos, más traslados y menos retenciones
El error CFDI40119 aparece cuando el Total no corresponde a la fórmula del comprobante: subtotal, menos descuentos, más impuestos trasladados, menos impuestos retenidos. Con un subtotal de 2,000.00, un descuento de 100.00, un IVA de 304.00 y una retención de ISR de 190.00, el total es 2,014.00. Aquí verás la fórmula paso a paso, qué nodos intervienen y cómo detectar qué sumando falta.
Resumen rápido del error
- Código: CFDI40119
- Campo: Total
- Nodo del XML:
Comprobante - Regla del SAT (Anexo 20): Atributo requerido para representar la suma del subtotal, menos los descuentos aplicables, más las contribuciones recibidas (impuestos trasladados - federales y/o locales, derechos, productos, aprovechamientos, aportaciones de seguridad social, contribuciones de mejoras) menos los impuestos retenidos y/o locales.
- Mensaje de rechazo: El campo Total no corresponde con la suma del subtotal, menos los descuentos aplicables, más las contribuciones recibidas (impuestos trasladados - federales o locales, derechos, productos, aprovechamientos, aportaciones de seguridad social, contribuciones de mejoras) menos los impuestos retenidos y/o locales.
- Cuándo aparece: al timbrar, antes de que se genere el UUID.
¿Qué significa el error CFDI40119?
El Total resume en un solo número todo el comprobante: parte del subtotal, resta el descuento, suma los impuestos trasladados y resta los retenidos. El PAC repite esa cuenta con los atributos y nodos del XML y compara el resultado con el total que enviaste.
Cuando falla, no siempre está mal el total: puede estar mal alguno de sus sumandos, como un descuento que no restó, un traslado que no se sumó o una retención que se sumó en vez de restarse. Por eso conviene reconstruir la cuenta en orden y comparar cada paso con tu XML.
Dónde se valida: el nodo Fórmula del total
La validación se aplica al atributo Total del nodo cfdi:Comprobante y se calcula con SubTotal, Descuento, TotalImpuestosTrasladados y TotalImpuestosRetenidos.
- CFDI40108: el
SubTotaldebe ser la suma redondeada de los importes de los conceptos. - CFDI40111: el
Descuentodebe ser la suma redondeada de los descuentos de los conceptos. - CFDI40119: el
Totaldebe seguir la fórmula (esta ficha). - CFDI40120: si el
Totalsupera el límite vigente, debe existirConfirmacion. - CFDI40205:
TotalImpuestosTrasladadosdebe ser la suma de los traslados.
Causas más comunes del error CFDI40119
- Falta restar el descuento. El total parte del subtotal sin aplicarlo.
- El IVA no se sumó. Los traslados no entraron en el cálculo.
- La retención se sumó. Debe restarse, no sumarse.
- Los totales de impuestos no cuadran.
TotalImpuestosTrasladadosoTotalImpuestosRetenidosestán mal. - El redondeo difiere. Se redondeó antes o después de sumar.
- El subtotal está mal. El desfase se origina en el CFDI40108.
Cómo corregir el error CFDI40119 paso a paso
- Parte del subtotal. Confirma que cuadra con los conceptos.
- Resta el descuento. Usa el atributo
Descuento, si existe. - Suma los traslados. Con
TotalImpuestosTrasladados. - Resta las retenciones. Con
TotalImpuestosRetenidos. - Compara con el
Total. Debe ser igual, con los decimales de la moneda. - Se vuelve a timbrar. Con los datos coherentes, el PAC pasa a las demás validaciones.
Ejemplo en el XML: incorrecto y correcto
Ejemplo de un comprobante con la retención sumada en vez de restada y del mismo con el total correcto; los importes son ficticios:
Incorrecto:
<cfdi:Comprobante ... SubTotal="2000.00" Descuento="100.00" Total="2394.00" ... > <!-- 2000 - 100 + 304 + 190 -->
Correcto:
<cfdi:Comprobante ... SubTotal="2000.00" Descuento="100.00" Total="2014.00" ... > <!-- 2000 - 100 + 304 - 190 -->
Los importes son ficticios. Con IVA trasladado de 304.00 y retención de 190.00 el total es 2,014.00.
Reconstruir el total sin perderse
Cuando el 40119 aparece, la ruta más rápida es reconstruir la cuenta en una tabla de cinco líneas: subtotal, descuento, traslados, retenciones y total. Llena cada línea con los atributos del XML, no con los de tu pantalla, y compara. La línea donde difiera es la causa. Si el subtotal falla, ve al 40108; si el descuento, al 40111; si los impuestos, a 40205 o 40203. Un sistema que calcula el total con una sola función, usada para armar el XML, evita casi todos estos casos. Para repasar los datos de un 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 CFDI40108 (SubTotal): el subtotal debe ser la suma redondeada de los importes de los conceptos.
- Error CFDI40111 (Descuento): el descuento debe ser la suma redondeada de los descuentos de los conceptos.
- Error CFDI40205 (TotalImpuestosTrasladados): el total trasladado debe ser la suma de los traslados.
- Error CFDI40203 (TotalImpuestosRetenidos): el total retenido debe ser la suma de las retenciones.
- Error CFDI40120 (Total): si el total supera el límite vigente, debe existir Confirmacion.
Consulta también el Centro de Soluciones con todos los errores del SAT.
Preguntas frecuentes
¿Qué significa el error 40119?
Que el total no corresponde a la fórmula del comprobante.
¿Cuál es la fórmula?
Subtotal, menos descuentos, más traslados, menos retenciones.
¿La retención se suma?
No. Se resta.
¿Y si el subtotal está mal?
Entonces corrige primero el 40108.
¿Cuántos decimales lleva?
Los que soporte la moneda del comprobante.
¿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.