Desarrolladores

Reglas de Validación CFDI 4.0: Matriz de Errores

01 de abril de 2026

Matriz de Errores CFDI 4.0

En esta sección se explican las reglas de validación que deben cumplir los Comprobantes Fiscales Digitales por Internet (CFDI) antes de ser timbrados.
Estas reglas aseguran que los comprobantes generados sean correctos, evitando errores que puedan impedir su validación ante el SAT.

CÓDIGO ERRORATRIBUTODESCRIPCIÓN DE CÓDIGO DE ERRORVALIDACIÓN¿CÓMO LO SOLUCIONO?
CFDI40101FechaEl campo Fecha no cumple con el patrón requerido.Debe cumplir el patrón:
AAAA-MM-DDThh:mm:ss
Debe corresponder a la hora local
del lugar de expedición.
Captura la Fecha en formato correcto.
Ejemplo:
2026-01-29T12:35:10
Verifica hora local.
Corrige y vuelve a generar el CFDI.
CFDI40102SelloLa digestión no coincide con la desencripción del sello.Debe:
1) Generar cadena original
2) Aplicar SHA-256
3) Firmar con llave privada
4) Coincidir con el sello.
Verifica el CSD.
Revisa cadena original.
Aplica SHA-256 correctamente.
Vuelve a sellar y timbrar.
CFDI40103FormaPagoEl campo FormaPago no debe existir para T, N o P.Atributo condicional.
No debe enviarse en esos tipos.
Elimina FormaPago del CFDI.
Vuelve a generar y timbrar.
CFDI40104MetodoPagoMetodoPago inválido.Debe existir en catálogo
c_MetodoPago.
Selecciona método válido del catálogo.
Corrige y timbra nuevamente.
CFDI40105TipoDeComprobanteTipo de comprobante inválido.Debe existir en catálogo
c_TipoDeComprobante.
Selecciona valor válido.
Revisa estructura del CFDI.
CFDI40106MonedaMoneda inválida.Debe existir en catálogo
c_Moneda.
Selecciona moneda válida.
Corrige y timbra.
CFDI40107TipoCambioTipoCambio inválido.Debe cumplir reglas de moneda.Ajusta decimales y valor.
Corrige y timbra.
CFDI40108LugarExpedicionCódigo postal inválido.Debe existir en catálogo
c_CodigoPostal.
Usa un CP válido.
Corrige y vuelve a timbrar.
CFDI40109SubTotalSubTotal inválido.Debe ser suma de conceptos.
Debe cumplir reglas de moneda.
Recalcula conceptos.
Corrige decimales.
Vuelve a timbrar.
CFDI40110TotalTotal inválido.Debe ser suma correcta:
Subtotal + impuestos - descuentos.
Recalcula totales.
Corrige redondeos.
Vuelve a timbrar.
CFDI40111DescuentoDescuento inválido.Debe cumplir reglas de cálculo.Revisa descuento.
Corrige importes.
Vuelve a generar.
CFDI40112CertificadoCertificado inválido.Debe ser CSD válido y vigente.Verifica vigencia del CSD.
Corrige certificado.
CFDI40113NoCertificadoNúmero de certificado inválido.Debe corresponder al CSD.Verifica NoCertificado.
Corrige y timbra.
CFDI40114SerieSerie inválida.Debe cumplir reglas internas.Ajusta serie.
Reintenta timbrado.
CFDI40115FolioFolio inválido.Debe cumplir reglas internas.Ajusta folio.
Reintenta timbrado.
CFDI40116SelloSATSelloSAT inválido.Debe ser generado por el PAC.No modificar.
Reintenta timbrado.
CFDI40117UUIDUUID inválido.Debe ser generado por el PAC.No modificar.
Reintenta timbrado.
CFDI40118FechaTimbradoFecha de timbrado inválida.Debe ser generada por PAC.No modificar.
Reintenta timbrado.
CFDI40119RFCEmisorRFC emisor inválido.Debe existir en SAT.Corrige RFC.
Valida contra SAT.
CFDI40120RFCReceptorRFC receptor inválido.Debe existir en SAT.Corrige RFC.
Valida contra SAT.
CFDI40121ClaveProdServClaveProdServ inválida.Debe existir en catálogo
c_ClaveProdServ.
Selecciona clave válida del SAT.
Corrige concepto y timbra.
CFDI40122ClaveUnidadClaveUnidad inválida.Debe existir en catálogo
c_ClaveUnidad.
Selecciona unidad válida.
Corrige concepto.
CFDI40123CantidadCantidad inválida.Debe ser mayor a cero.Corrige cantidad.
Vuelve a generar CFDI.
CFDI40124ValorUnitarioValorUnitario inválido.Debe ser ≥ 0.Corrige valor unitario.
Recalcula importes.
CFDI40125ImporteImporte inválido.Debe ser Cantidad × ValorUnitario.Recalcula importe.
Corrige redondeos.
CFDI40126ObjetoImpObjetoImp inválido.Debe existir en catálogo
c_ObjetoImp.
Selecciona valor válido.
Corrige concepto.
CFDI40127BaseBase de impuesto inválida.Debe coincidir con importe.Recalcula base.
Corrige impuesto.
CFDI40128ImpuestoImpuesto inválido.Debe existir en catálogo
c_Impuesto.
Selecciona impuesto válido.
CFDI40129TipoFactorTipoFactor inválido.Debe ser:
Tasa / Cuota / Exento.
Corrige TipoFactor.
Reintenta timbrado.
CFDI40130TasaOCuotaTasaOCuota inválida.Debe existir en catálogo
c_TasaOCuota.
Selecciona tasa válida.
Corrige impuesto.
CFDI40131ImporteImpuestoImporte de impuesto inválido.Debe cumplir cálculo fiscal.Recalcula impuesto.
Corrige redondeo.
CFDI40132TrasladoTraslado inválido.Debe cumplir estructura SAT.Revisa nodo Traslado.
Corrige estructura.
CFDI40133RetencionRetención inválida.Debe cumplir estructura SAT.Revisa nodo Retención.
Corrige estructura.
CFDI40134NodoConceptosNodo Conceptos inválido.Debe existir al menos un concepto.Agrega conceptos válidos.

Errores complemento Pagos (CRP)

CÓDIGO ERRORATRIBUTODESCRIPCIÓN DE CÓDIGO DE ERRORVALIDACIÓN¿CÓMO LO SOLUCIONO?
CRP20101SubTotalSubTotal debe ser 0.Regla fija del complemento.Establece SubTotal = 0.
CRP20102TotalTotal debe ser 0.Regla fija del complemento.Establece Total = 0.
CRP20103MonedaMoneda inválida.Debe ser XXX.Cambia Moneda a XXX.
CRP20104FormaPagoFormaPago no permitida.No debe existir.Elimina FormaPago.
CRP20105MetodoPagoMetodoPago no permitido.No debe existir.Elimina MetodoPago.
CRP20106DescuentoDescuento no permitido.No debe existir.Elimina Descuento.
CRP20107TipoCambioTipoCambio no permitido.No debe existir.Elimina TipoCambio.
CRP20108ClaveProdServClaveProdServ inválida.Debe ser 84111506.Corrige ClaveProdServ.
CRP20109ClaveUnidadClaveUnidad inválida.Debe ser ACT.Corrige ClaveUnidad.
CRP20110ValorUnitarioValorUnitario inválido.Debe ser 0.Establece ValorUnitario = 0.
CRP20111ImporteImporte inválido.Debe ser 0.Establece Importe = 0.

Errores complemento Comercio Exterior

CÓDIGO ERRORATRIBUTODESCRIPCIÓN DE CÓDIGO DE ERRORVALIDACIÓN¿CÓMO LO SOLUCIONO?
CCE130CodigoPostalCódigo postal inválido.Debe existir en catálogo SAT.Usa CP válido del SAT.
CCE131ColoniaColonia inválida.Debe existir en catálogo SAT.Selecciona colonia válida.
CCE132LocalidadLocalidad inválida.Debe existir en catálogo SAT.Selecciona localidad válida.
CCE133MunicipioMunicipio inválido.Debe existir en catálogo SAT.Selecciona municipio válido.
CCE134EstadoEstado inválido.Debe existir en catálogo SAT.Selecciona estado válido.
CCE135PaisPaís inválido.Debe existir en catálogo SAT.Selecciona país válido.
CCE136FraccionArancelariaFracción arancelaria inválida.Debe existir en catálogo oficial.Usa fracción válida.
CCE137UnidadMedidaUnidad de medida inválida.Debe existir en catálogo.Selecciona unidad válida.
CCE138ValorMercanciaValor de mercancía inválido.Debe ser mayor a cero.Corrige valor.

Errores complemento Carta Porte

CÓDIGO ERRORATRIBUTODESCRIPCIÓN DE CÓDIGO DE ERRORVALIDACIÓN¿CÓMO LO SOLUCIONO?
CP200ColoniaColonia inválida.Debe existir en catálogo SAT.Selecciona colonia válida.
CP201LocalidadLocalidad inválida.Debe existir en catálogo SAT.Selecciona localidad válida.
CP202MunicipioMunicipio inválido.Debe existir en catálogo SAT.Selecciona municipio válido.
CP203EstadoEstado inválido.Debe existir en catálogo SAT.Selecciona estado válido.
CP204PaisPaís inválido.Debe existir en catálogo SAT.Selecciona país válido.
CP205CodigoPostalCódigo postal inválido.Debe existir en catálogo SAT.Usa CP válido.
CP206ClaveProdServClave SAT inválida.Debe existir en catálogo SAT.Selecciona clave válida.
CP207CantidadCantidad inválida.Debe ser mayor a cero.Corrige cantidad.
CP208UnidadMedidaUnidad inválida.Debe existir en catálogo.Selecciona unidad válida.
CP209PesoEnKgPeso inválido.Debe ser mayor a cero.Corrige peso.

Errores genéricos CFDI

CÓDIGO ERRORATRIBUTODESCRIPCIÓN DE CÓDIGO DE ERRORVALIDACIÓN¿CÓMO LO SOLUCIONO?
CFDI40999No clasificadoError no clasificado.Error genérico del SAT/PAC.Revisar XML completo.
Validar catálogos SAT.
Revisar estructura.
Reintentar timbrado.