Error CFDI40206: falta TotalImpuestosRetenidos | Solución
Folios sin caducidad · Multi-empresa · Timbrado CFDI 4.0 · Ver paquetes
Error / Problema Actualizado 28/10/2026

Error CFDI40206 al timbrar: debe existir el atributo TotalImpuestosRetenidos

El error CFDI40206 aparece cuando tu comprobante ya trae el nodo de retenciones a nivel comprobante (cfdi:Impuestos/cfdi:Retenciones), pero el nodo cfdi:Impuestos no incluye el atributo TotalImpuestosRetenidos. Aquí te explicamos cuándo se dispara por la presencia del nodo, cómo sumar las retenciones de varios conceptos y cómo dejar el XML listo para volver a timbrar.

Resumen rápido del error

  • Código: CFDI40206
  • Campo: Retenciones
  • Nodo del XML: cfdi:Comprobante/cfdi:Impuestos/cfdi:Retenciones
  • Regla del SAT (Anexo 20): Debe existir el atributo TotalImpuestosRetenidos.
  • Mensaje de rechazo: Debe existir el campo TotalImpuestosRetenidos.
  • Cuándo aparece: al timbrar, antes de que se genere el UUID.

¿Qué significa el error CFDI40206?

El CFDI 4.0 resume los impuestos en dos niveles. En cada concepto se detallan sus traslados y retenciones; al final del comprobante, el nodo cfdi:Impuestos concentra esos importes agrupados por tipo de impuesto. Cuando existen retenciones, el SAT exige que ese nodo también muestre el total retenido en el atributo TotalImpuestosRetenidos.

Si el nodo cfdi:Retenciones está presente y el atributo no existe, el PAC rechaza el comprobante con el código CFDI40206. No se genera UUID, así que puedes corregir el XML y volver a emitirlo sin que el documento quede certificado.

Dónde se valida: el nodo Impuestos y Retenciones

La validación se ejecuta sobre el nodo cfdi:Retenciones, hijo de cfdi:Impuestos a nivel comprobante. Dentro de él, cada cfdi:Retencion lleva solo dos atributos: Impuesto (001 ISR, 002 IVA o 003 IEPS) e Importe. Ahí no se repiten la base ni la tasa, porque ese detalle vive en los conceptos.

El atributo faltante, TotalImpuestosRetenidos, pertenece al elemento padre cfdi:Impuestos y se calcula a partir de las retenciones que ya resumiste en cfdi:Retenciones. Si ese resumen existe, el total también debe existir; la regla se evalúa por la presencia del nodo.

Causas más comunes del error CFDI40206

  • El total no se generó. El sistema o la plantilla construye el nodo de retenciones pero omite el atributo con el total. Es habitual en integraciones propias, hojas de cálculo o layouts donde el campo quedó vacío.
  • Se copió solo el total de traslados. Se arma TotalImpuestosTrasladados y se olvida el equivalente de retenciones al agregar una retención de ISR o IVA.
  • Varias retenciones y un total que no se recalculó. El comprobante tiene conceptos con retención en distintos renglones; el sistema crea el resumen de retenciones, pero el total que debía acompañarlo no se calcula cuando se agregan o se quitan líneas.
  • Se editó el XML a mano. Al agregar o modificar retenciones manualmente se actualizaron los nodos hijos, pero no el total del padre.

Cómo corregir el error CFDI40206 paso a paso

  1. Localiza el nodo Impuestos del comprobante. Abre el XML y busca cfdi:Impuestos directamente bajo cfdi:Comprobante (después de cfdi:Conceptos), no los que están dentro de cada concepto.
  2. Confirma que realmente hay retenciones. Revisa si los conceptos traen cfdi:Retenciones con importes. Si fue un error y no corresponde retener, elimina las retenciones de los conceptos y el nodo de retenciones del comprobante.
  3. Suma los importes retenidos. Suma los atributos Importe de las retenciones a nivel comprobante. Si hay ISR e IVA retenidos, el total es la suma de ambos.
  4. Agrega TotalImpuestosRetenidos. Escribe el resultado en cfdi:Impuestos, con la cantidad de decimales que soporta la moneda (dos para MXN).
  5. Revisa los totales relacionados. El total debe coincidir con la suma de las retenciones (CFDI40203) y el Total del comprobante debe restar lo retenido (CFDI40119).
  6. Vuelve a timbrar. Si cambiaste el XML, el sello debe generarse de nuevo; si usas un sistema de facturación, corrige los datos y emite otra vez.

Ejemplo en el XML: incorrecto y correcto

Ejemplo con dos conceptos que llevan retención de ISR (base 1,000.00 y 500.00, al 10 %) y un traslado de IVA al 16 % sobre 1,500.00:

Incorrecto:

<cfdi:Impuestos TotalImpuestosTrasladados="240.00">
  <cfdi:Retenciones>
    <cfdi:Retencion Impuesto="001" Importe="150.00"/>
  </cfdi:Retenciones>
  <cfdi:Traslados>
    <cfdi:Traslado Base="1500.00" Impuesto="002" TipoFactor="Tasa" TasaOCuota="0.160000" Importe="240.00"/>
  </cfdi:Traslados>
</cfdi:Impuestos>

Correcto:

<cfdi:Impuestos TotalImpuestosRetenidos="150.00" TotalImpuestosTrasladados="240.00">
  <cfdi:Retenciones>
    <cfdi:Retencion Impuesto="001" Importe="150.00"/>
  </cfdi:Retenciones>
  <cfdi:Traslados>
    <cfdi:Traslado Base="1500.00" Impuesto="002" TipoFactor="Tasa" TasaOCuota="0.160000" Importe="240.00"/>
  </cfdi:Traslados>
</cfdi:Impuestos>

Aquí las retenciones de los dos conceptos (100.00 y 50.00) se agrupan en una sola de 150.00, y ese es el valor de TotalImpuestosRetenidos. El Total del comprobante sería 1,590.00 (1,500.00 de subtotal más 240.00 de IVA menos 150.00 de ISR retenido). Los importes y la tasa son ilustrativos: qué retenciones aplican a tu operación debe confirmarlo tu contador.

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

Consulta también el Centro de Soluciones con todos los errores del SAT.

Preguntas frecuentes

¿Qué es TotalImpuestosRetenidos en un CFDI 4.0?

Es el atributo del nodo cfdi:Impuestos que muestra la suma de todos los impuestos retenidos del comprobante. Se usa solo cuando hay retenciones de ISR, IVA o IEPS.

¿Tengo que incluirlo si solo tengo traslados de IVA?

No. Cuando solo hay traslados, el atributo que corresponde es TotalImpuestosTrasladados (consulta el error CFDI40212). TotalImpuestosRetenidos solo se exige si existen retenciones.

¿Cuál es la diferencia entre CFDI40206 y CFDI40209?

Ambos piden el mismo atributo. El 40206 se dispara por la presencia del nodo cfdi:Retenciones y el 40209 por el atributo Importe de una retención. En la práctica, al agregar TotalImpuestosRetenidos se resuelven los dos.

¿Se genera UUID si el timbrado falla con este error?

No. El comprobante no se certifica, por lo que puedes corregir el XML y emitirlo de nuevo.

¿Cómo sé qué retenciones debo aplicar?

Depende de quién emite, quién recibe y la naturaleza de la operación. Soicont es una plataforma de facturación: confirma con tu contador qué retenciones corresponden antes de emitir.

¿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.

Regístrate