Error CFDI40207 al timbrar: el Impuesto de la retención no pertenece al catálogo c_Impuesto
El error CFDI40207 indica que en el nodo de retenciones del comprobante, el atributo Impuesto trae un valor que no existe en el catálogo c_Impuesto del SAT. Normalmente se trata de escribir el nombre del impuesto (por ejemplo, “ISR”) o una clave con formato incorrecto en lugar de la clave oficial. Aquí te explicamos cuáles son las claves válidas y cómo corregirlo.
Resumen rápido del error
- Código: CFDI40207
- Campo: Impuesto
- Nodo del XML:
cfdi:Comprobante/cfdi:Impuestos/cfdi:Retenciones/cfdi:Retencion - Regla del SAT (Anexo 20): Este atributo debe contener un valor del catálogo c_Impuesto.
- Mensaje de rechazo: El campo Impuesto no contiene un valor del catálogo c_Impuesto.
- Cuándo aparece: al timbrar, antes de que se genere el UUID.
¿Qué significa el error CFDI40207?
El catálogo c_Impuesto del SAT tiene tres claves: 001 para ISR, 002 para IVA y 003 para IEPS. En una retención, el atributo Impuesto debe llevar exactamente una de ellas, escrita con tres dígitos.
Si se envía otro valor —texto, abreviaturas, un número sin ceros a la izquierda o una clave inexistente— el PAC rechaza el comprobante con CFDI40207. Esta validación se hace sobre las retenciones a nivel comprobante; las de los conceptos se revisan con sus propias reglas.
Dónde se valida: el nodo Retencion e Impuesto
Cada cfdi:Retencion bajo cfdi:Impuestos/cfdi:Retenciones tiene solo dos atributos: Impuesto e Importe. La validación CFDI40207 lee Impuesto y lo compara contra el catálogo.
Es importante que el mismo código esté bien en los conceptos y en el resumen: el importe de cada retención del comprobante se calcula agrupando las retenciones de los conceptos con el mismo impuesto (validación CFDI40211). Si el código es incorrecto en un lado, es probable que aparezcan otros errores en cadena.
Causas más comunes del error CFDI40207
- Se escribió el nombre del impuesto. Valores como
ISR,IVA,IEPSoRetención ISRno son claves del catálogo; deben ser001,002o003. - La clave perdió los ceros. Escribir
1o2en lugar de001o002ocurre cuando el sistema guarda el dato como número y lo convierte al exportar. - Se usó una clave que no existe. Por ejemplo
004o una clave local que no pertenece ac_Impuesto. - Se intentó declarar un impuesto local. Los impuestos locales no se capturan en este atributo; tienen su propio complemento.
- Espacios o caracteres ocultos. Un espacio al final (
"002 ") o un salto de línea que se coló al copiar y pegar desde una hoja de cálculo. - Mapeo incorrecto entre sistemas. El ERP o el sistema de facturación convierte las claves internas del cliente a otras que el SAT no reconoce.
Cómo corregir el error CFDI40207 paso a paso
- Localiza la retención con problema. Busca en el XML
cfdi:Impuestos/cfdi:Retenciones/cfdi:Retenciony lee el valor deImpuesto. - Compara con el catálogo. Usa solo
001(ISR),002(IVA) o003(IEPS). - Corrige el formato. Asegura tres dígitos, sin espacios ni letras. Guarda la clave como texto, no como número.
- Revisa los conceptos. Verifica que las retenciones dentro de cada concepto usen las mismas claves.
- Evita duplicados. Debe existir un solo registro por cada tipo de impuesto retenido (CFDI40208).
- Vuelve a timbrar. Si editaste el XML, regenera el sello antes de enviarlo.
Ejemplo en el XML: incorrecto y correcto
Ejemplo con una retención de ISR escrita como texto y su versión correcta:
Incorrecto:
<cfdi:Retenciones>
<cfdi:Retencion Impuesto="ISR" Importe="100.00"/>
</cfdi:Retenciones>
Correcto:
<cfdi:Retenciones>
<cfdi:Retencion Impuesto="001" Importe="100.00"/>
</cfdi:Retenciones>
Tabla de referencia: 001 = ISR, 002 = IVA, 003 = IEPS. Si dudas sobre qué impuesto retener, consúltalo con 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
- Error CFDI40208 (Impuesto): solo un registro por cada tipo de impuesto retenido.
- Error CFDI40217 (Impuesto): la misma validación del catálogo, aplicada a los traslados.
- Error CFDI40175 (Impuesto): el mismo catálogo, validado en los traslados de cada concepto.
- Error CFDI40182 (Impuesto): el mismo catálogo, validado en las retenciones de cada concepto.
- Error CFDI40211 (Importe): el importe de la retención debe igualar la suma de los conceptos.
- Error CFDI140224 (Impuesto): regla específica de retenciones de ISR a nivel concepto para ciertos emisores y receptores.
Consulta también el Centro de Soluciones con todos los errores del SAT.
Preguntas frecuentes
¿Cuáles son las claves válidas de c_Impuesto?
001 para ISR, 002 para IVA y 003 para IEPS.
¿Puedo escribir “IVA” en lugar de “002”?
No. El atributo debe contener la clave del catálogo, no el nombre del impuesto.
¿Por qué mi sistema guarda 2 en lugar de 002?
Porque trata el campo como un número. Define el campo como texto para conservar los ceros a la izquierda.
¿Cómo capturo un impuesto local?
No se registra en este atributo. Los impuestos locales tienen su propio complemento; consulta con tu contador.
¿Se genera UUID si aparece CFDI40207?
No. Corrige la clave y vuelve a 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.