# SAT validations of CFDI 4.0 and Pagos 2.0 Matrices of 25 March 2026 and Pagos 2.0 rev. B

Source: https://xmlvalid.com/rules/sets/mx-cfdi40

> 163 rules by xmlvalid, after SAT's error matrices and the validations of Anexo 20 (MIT). Source: http://omawww.sat.gob.mx/tramitesyservicios/Paginas/anexo_20.htm

- [CFDI40103](https://xmlvalid.com/rules/CFDI40103.md) (error): Si existe el tipo de comprobante T, N o P el campo FormaPago no debe existir.
- [CFDI40105](https://xmlvalid.com/rules/CFDI40105.md) (error): El campo FormaPago no contiene el valor "99" (…, MetodoPago PPD).
- [CFDI40107](https://xmlvalid.com/rules/CFDI40107.md) (error): El valor de este campo SubTotal excede la cantidad de decimales que soporta la moneda (…, …: …).
- [CFDI40108](https://xmlvalid.com/rules/CFDI40108.md) (error): El TipoDeComprobante es I,E o N, el importe registrado en el campo no es igual al redondeo de la suma de los importes de los conceptos registrados (SubTotal …, conceptos …).
- [CFDI40109](https://xmlvalid.com/rules/CFDI40109.md) (error): El TipoDeComprobante es T o P y el importe no es igual a 0, o cero con decimales.
- [CFDI40110](https://xmlvalid.com/rules/CFDI40110.md) (error): El valor registrado en el campo Descuento no es menor o igual que el campo Subtotal.
- [CFDI40111](https://xmlvalid.com/rules/CFDI40111.md) (error): El TipoDeComprobante no es I,E o N, y un concepto incluye el campo descuento (Descuento …, conceptos …).
- [CFDI40112](https://xmlvalid.com/rules/CFDI40112.md) (error): El valor del campo Descuento excede la cantidad de decimales que soporta la moneda.
- [CFDI40114](https://xmlvalid.com/rules/CFDI40114.md) (error): El campo TipoCambio no tiene el valor "1" y la moneda indicada es MXN.
- [CFDI40115](https://xmlvalid.com/rules/CFDI40115.md) (error): El campo TipoCambio se debe registrar cuando el campo Moneda tiene un valor distinto de MXN y XXX.
- [CFDI40116](https://xmlvalid.com/rules/CFDI40116.md) (error): El campo TipoCambio no se debe registrar cuando el campo Moneda tiene el valor XXX.
- [CFDI40119](https://xmlvalid.com/rules/CFDI40119.md) (error): 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 (Total …, calculado …).
- [CFDI40122](https://xmlvalid.com/rules/CFDI40122.md) (error): El campo Exportacion contiene el valor "02", el CFDI debe contener el complemento para Comercio Exterior.
- [CFDI40125](https://xmlvalid.com/rules/CFDI40125.md) (error): Se debe omitir el campo MetodoPago cuando el TipoDeComprobante es T o P.
- [CFDI40130](https://xmlvalid.com/rules/CFDI40130.md) (error): Cuando el tipo de comprobante sea Ingreso y el campo Rfc del nodo receptor corresponda al valor "XAXX010101000" y el campo Nombre del nodo Receptor contenga la descripción "PUBLICO EN GENERAL", el nodo Información Global debe existir.
- [CFDI40132](https://xmlvalid.com/rules/CFDI40132.md) (error): El campo RegimenFiscal, no contiene el valor 621.
- [CFDI40134](https://xmlvalid.com/rules/CFDI40134.md) (error): El campo Meses, no contiene alguno de los valores "01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11" o "12".
- [CFDI40135](https://xmlvalid.com/rules/CFDI40135.md) (error): El campo Meses, no contiene alguno de los valores "13", "14", "15", "16", "17" o "18".
- [CFDI40136](https://xmlvalid.com/rules/CFDI40136.md) (error): El valor registrado en el campo Año, no es igual al año en curso o no contiene un valor de hasta 5 ejercicios anteriores (…, Fecha …).
- [CFDI40141](https://xmlvalid.com/rules/CFDI40141.md) (error): La clave del campo RegimenFiscal debe corresponder con el tipo de persona (fisica o moral) (…, RFC …).
- [CFDI40146](https://xmlvalid.com/rules/CFDI40146.md) (error): El campo RFC del receptor debe contener el valor "XAXX010101000".
- [CFDI40149](https://xmlvalid.com/rules/CFDI40149.md) (error): El campo DomicilioFiscalReceptor, no es igual al valor del campo LugarExpedicion (…, …).
- [CFDI40151](https://xmlvalid.com/rules/CFDI40151.md) (error): El RFC del receptor es de un RFC registrado en el SAT o un RFC genérico nacional y existe el campo ResidenciaFiscal.
- [CFDI40152](https://xmlvalid.com/rules/CFDI40152.md) (error): El valor del campo ResidenciaFiscal no puede ser MEX.
- [CFDI40153](https://xmlvalid.com/rules/CFDI40153.md) (error): Se debe registrar un valor de acuerdo al catálogo c_Pais en el campo ResidenciaFiscal, cuando en el campo NumRegIdTrib se registre información.
- [CFDI40154](https://xmlvalid.com/rules/CFDI40154.md) (error): El valor del campo es un RFC inscrito no cancelado en el SAT o un RFC genérico nacional, y se registró el campo NumRegIdTrib.
- [CFDI40155](https://xmlvalid.com/rules/CFDI40155.md) (error): Para registrar el campo NumRegIdTrib, el CFDI debe contener el complemento de comercio exterior y el RFC del receptor debe ser un RFC genérico extranjero.
- [CFDI40158](https://xmlvalid.com/rules/CFDI40158.md) (error): La clave del campo RegimenFiscalR debe corresponder con el tipo de persona (física o moral) (…, RFC …).
- [CFDI40159](https://xmlvalid.com/rules/CFDI40159.md) (error): La clave del campo RegimenFiscalR no corresponde de acuerdo al RFC del receptor (…).
- [CFDI40161](https://xmlvalid.com/rules/CFDI40161.md) (error): La clave del campo UsoCFDI debe corresponder con el tipo de persona (física o moral) y el régimen correspondiente conforme al catálogo c_UsoCFDI (…, régimen …).
- [CFDI40166](https://xmlvalid.com/rules/CFDI40166.md) (error): El valor valor del campo ValorUnitario debe ser mayor que cero (0) cuando el tipo de comprobante es Ingreso, Egreso o Nomina.
- [CFDI40167](https://xmlvalid.com/rules/CFDI40167.md) (error): El valor del campo Importe no se encuentra entre el limite inferior y superior permitido (…, … × …).
- [CFDI40168](https://xmlvalid.com/rules/CFDI40168.md) (error): El valor del campo Descuento no contiene la misma cantidad de decimales registrados en el campo Importe del concepto.
- [CFDI40169](https://xmlvalid.com/rules/CFDI40169.md) (error): El valor del campo Descuento es mayor que el campo Importe.
- [CFDI40171](https://xmlvalid.com/rules/CFDI40171.md) (error): El nodo concepto, no contiene el nodo hijo Impuestos.
- [CFDI40172](https://xmlvalid.com/rules/CFDI40172.md) (error): El nodo hijo Impuestos del nodo Concepto, no debe existir (ObjetoImp …).
- [CFDI40173](https://xmlvalid.com/rules/CFDI40173.md) (error): En caso de utilizar el nodo Impuestos en un concepto, se deben incluir impuestos de traslado y/o retenciones.
- [CFDI40174](https://xmlvalid.com/rules/CFDI40174.md) (error): El valor del campo Base que corresponde a Traslado debe ser mayor que cero.
- [CFDI40177](https://xmlvalid.com/rules/CFDI40177.md) (error): Si el valor registrado en el campo TipoFactor que corresponde a Traslado es Exento no se deben registrar los campos TasaOCuota ni Importe.
- [CFDI40178](https://xmlvalid.com/rules/CFDI40178.md) (error): Si el valor registrado en el campo TipoFactor que corresponde a Traslado es Tasa o Cuota, se deben registrar los campos TasaOCuota e Importe.
- [CFDI40179](https://xmlvalid.com/rules/CFDI40179.md) (error): El valor del campo TasaOCuota que corresponde a Traslado no contiene un valor del catálogo c_TasaOcuota o se encuentra fuera de rango (…, …, …).
- [CFDI40180](https://xmlvalid.com/rules/CFDI40180.md) (error): El valor del campo Importe o que corresponde a Traslado no se encuentra entre el limite inferior y superior permitido (…, … × …).
- [CFDI40181](https://xmlvalid.com/rules/CFDI40181.md) (error): El valor del campo Base que corresponde a Retención debe ser mayor que cero.
- [CFDI40184](https://xmlvalid.com/rules/CFDI40184.md) (error): Si el valor registrado en el campo TipoFactor que corresponde a Retención debe ser distinto de Exento.
- [CFDI40185](https://xmlvalid.com/rules/CFDI40185.md) (error): El valor del campo TasaOCuota que corresponde a Retención, no contiene un valor del catálogo c_TasaOcuota o se encuentra fuera de rango (…, …, …).
- [CFDI40186](https://xmlvalid.com/rules/CFDI40186.md) (error): El valor del campo Importe que corresponde a Retención no se encuentra entre el limite inferior y superior permitido (…, … × …).
- [CFDI40188](https://xmlvalid.com/rules/CFDI40188.md) (error): El valor del campo RfcACuentaTerceros, debe ser diferente de los valores de los campos Rfc del Emisor y Receptor.
- [CFDI40189](https://xmlvalid.com/rules/CFDI40189.md) (error): El valor registrado debe encontrarse en la lista de RFC inscritos no cancelados en el SAT, en otro caso debe contener la descripción "EXPEDICIÓN DE CFDI POR RESIDENTES EN MÉXICO QUE PRESTAN SERVICIOS DE INTERMEDIACIÓN ENTRE TERCEROS A OFERENTES DE BIENES Y SERVICIOS RESIDENTES EN EL EXTRANJERO".
- [CFDI40193](https://xmlvalid.com/rules/CFDI40193.md) (error): El valor registrado en el atributo DomicilioFiscalACuentaTerceros, debe pertenecer al nombre asociado al RFC registrado en el campo Rfc del tercero, o debe ser igual al valor del atributo "LugarExpedicion".
- [CFDI40197](https://xmlvalid.com/rules/CFDI40197.md) (error): El valor del campo ValorUnitario debe ser mayor que cero (0).
- [CFDI40198](https://xmlvalid.com/rules/CFDI40198.md) (error): El valor del campo Importe no se encuentra entre el limite inferior y superior permitido (…, … × …).
- [CFDI40201](https://xmlvalid.com/rules/CFDI40201.md) (error): Cuando el TipoDeComprobante sea T o P, el elemento Impuestos no debe existir.
- [CFDI40202](https://xmlvalid.com/rules/CFDI40202.md) (error): El valor del campo TotalImpuestosRetenidos debe tener hasta la cantidad de decimales que soporte la moneda.
- [CFDI40203](https://xmlvalid.com/rules/CFDI40203.md) (error): El valor del campo TotalImpuestosRetenidos debe ser igual a la suma de los importes registrados en el elemento hijo Retencion (…, …).
- [CFDI40204](https://xmlvalid.com/rules/CFDI40204.md) (error): El valor del campo TotalImpuestosTrasladados debe tener hasta la cantidad de decimales que soporte la moneda.
- [CFDI40205](https://xmlvalid.com/rules/CFDI40205.md) (error): El valor del campo TotalImpuestosTrasladados no es igual a la suma de los importes registrados en el elemento hijo Traslado (…, …).
- [CFDI40206](https://xmlvalid.com/rules/CFDI40206.md) (error): Debe existir el campo TotalImpuestosRetenidos.
- [CFDI40208](https://xmlvalid.com/rules/CFDI40208.md) (error): Debe haber sólo un registro por cada tipo de impuesto retenido (…).
- [CFDI40210](https://xmlvalid.com/rules/CFDI40210.md) (error): El valor del campo Importe correspondiente a Retención debe tener hasta la cantidad de decimales que soporte la moneda.
- [CFDI40211](https://xmlvalid.com/rules/CFDI40211.md) (error): El campo Importe correspondiente a Retención no es igual al redondeo de la suma de los importes de los impuestos retenidos registrados en los conceptos donde el impuesto sea igual al campo impuesto de este elemento (falta la Retención del impuesto … en el resumen).
- [CFDI40212](https://xmlvalid.com/rules/CFDI40212.md) (error): Debe existir el campo TotalImpuestosTrasladados.
- [CFDI40213](https://xmlvalid.com/rules/CFDI40213.md) (error): Deben exitir los campos Base, Impuesto y TipoFactor.
- [CFDI40214](https://xmlvalid.com/rules/CFDI40214.md) (error): El valor del campo Importe correspondiente a Traslado debe tener hasta la cantidad de decimales que soporte la moneda (Base …).
- [CFDI40215](https://xmlvalid.com/rules/CFDI40215.md) (error): El campo Importe correspondiente a Traslado no es igual al redondeo de la suma de los importes de las bases trasladados registrados en los conceptos donde el impuesto del concepto sea igual al campo impuesto de este elemento y la TasaOCuota del concepto sea igual al campo TasaOCuota de este elemento (falta un Traslado en el resumen de impuestos).
- [CFDI40216](https://xmlvalid.com/rules/CFDI40216.md) (error): El importe del campo Base correspondiente a Traslado no es igual al redondeo de la suma de los importes de las bases trasladados registrados en los conceptos (Base …, conceptos …).
- [CFDI40218](https://xmlvalid.com/rules/CFDI40218.md) (error): Debe haber sólo un registro con la misma combinación de impuesto, factor y tasa por cada traslado.
- [CFDI40219](https://xmlvalid.com/rules/CFDI40219.md) (error): El valor seleccionado debe corresponder a un valor del catalogo donde la columna impuesto corresponda con el campo impuesto y la columna factor corresponda con el campo TipoFactor.
- [CFDI40220](https://xmlvalid.com/rules/CFDI40220.md) (error): El valor del campo Importe correspondiente a Traslado debe tener hasta la cantidad de decimales que soporte la moneda.
- [CFDI40221](https://xmlvalid.com/rules/CFDI40221.md) (error): El campo Importe correspondiente a Traslado no es igual al redondeo de la suma de los importes de los impuestos trasladados registrados en los conceptos donde el impuesto del concepto sea igual al campo impuesto de este elemento y la TasaOCuota del concepto sea igual al campo TasaOCuota de este elemento (…, conceptos …).
- [CFDI40222](https://xmlvalid.com/rules/CFDI40222.md) (error): El complemento de Comercio Exterior no debe existir cuando el campo Exportacion contenga un valor igual a "01" o "03" del catálogo de CFDI c_Exportacion.
- [CFDI140223](https://xmlvalid.com/rules/CFDI140223.md) (error): El valor registrado en el atributo RegimenFiscalACuentaTerceros es distinto a "616".
- [CFDI140226](https://xmlvalid.com/rules/CFDI140226.md) (error): Cuando en el campo ObjetoImp se registre el valor "06" o "08", los valores "002" (IVA) y/o "003" (IEPS) en el campo "Impuesto" de los nodo hijos "Retencion" y/o "Traslado" del elemento "Retenciones" y/o "Traslados" a nivel Concepto no deben existir.
- [CFDI140227](https://xmlvalid.com/rules/CFDI140227.md) (error): Cuando en el campo ObjetoImp se registre el valor "07", el valor "002" (IVA) en el campo "Impuesto" de los nodos hijo "Retencion" y/o "Traslado" del elemento "Retenciones" y/o "Traslados" a nivel Concepto no debe existir; debe existir el valor "003" (IEPS) en el campo "Impuesto" del nodo hijo "Traslado" del elemento "Traslados" a nivel Concepto.
- [CRP20101](https://xmlvalid.com/rules/CRP20101.md) (error): El valor del campo TipoDeComprobante debe ser "P".
- [CRP20102](https://xmlvalid.com/rules/CRP20102.md) (error): El valor del campo Exportacion debe ser "01".
- [CRP20103](https://xmlvalid.com/rules/CRP20103.md) (error): El valor del campo SubTotal debe ser cero "0".
- [CRP20104](https://xmlvalid.com/rules/CRP20104.md) (error): El valor del campo Moneda debe ser "XXX".
- [CRP20105](https://xmlvalid.com/rules/CRP20105.md) (error): El campo FormaPago no se debe registrar en el CFDI.
- [CRP20106](https://xmlvalid.com/rules/CRP20106.md) (error): El campo MetodoPago no se debe registrar en el CFDI.
- [CRP20107](https://xmlvalid.com/rules/CRP20107.md) (error): El campo CondicionesDePago no se debe registrar en el CFDI.
- [CRP20108](https://xmlvalid.com/rules/CRP20108.md) (error): El campo Descuento no se debe registrar en el CFDI.
- [CRP20109](https://xmlvalid.com/rules/CRP20109.md) (error): El campo TipoCambio no se debe registrar en el CFDI.
- [CRP20110](https://xmlvalid.com/rules/CRP20110.md) (error): El valor del campo Total debe ser cero "0".
- [CRP20111](https://xmlvalid.com/rules/CRP20111.md) (error): Solo debe existir un Concepto en el CFDI.
- [CRP20112](https://xmlvalid.com/rules/CRP20112.md) (error): Si no existe el nodo AcuentaTerceros, no se deben registrar apartados dentro de Conceptos.
- [CRP20113](https://xmlvalid.com/rules/CRP20113.md) (error): El valor del campo ClaveProdServ debe ser "84111506".
- [CRP20114](https://xmlvalid.com/rules/CRP20114.md) (error): El campo NoIdentificacion no se debe registrar en el CFDI.
- [CRP20115](https://xmlvalid.com/rules/CRP20115.md) (error): El valor del campo Cantidad debe ser "1".
- [CRP20116](https://xmlvalid.com/rules/CRP20116.md) (error): El valor del campo ClaveUnidad debe ser "ACT".
- [CRP20117](https://xmlvalid.com/rules/CRP20117.md) (error): El campo Unidad no se debe registrar en el CFDI.
- [CRP20118](https://xmlvalid.com/rules/CRP20118.md) (error): El valor del campo Descripcion debe ser "Pago".
- [CRP20119](https://xmlvalid.com/rules/CRP20119.md) (error): El valor del campo ValorUnitario debe ser cero "0".
- [CRP20120](https://xmlvalid.com/rules/CRP20120.md) (error): El valor del campo Importe debe ser cero "0".
- [CRP20121](https://xmlvalid.com/rules/CRP20121.md) (error): El campo Descuento no se debe registrar en el CFDI.
- [CRP20122](https://xmlvalid.com/rules/CRP20122.md) (error): El valor del campo ObjetoImp debe ser "01".
- [CRP20123](https://xmlvalid.com/rules/CRP20123.md) (error): No se debe registrar el apartado de Impuestos en el CFDI.
- [CRP20201](https://xmlvalid.com/rules/CRP20201.md) (error): El valor del campo TotalRetencionesIVA no es igual al redondeo de la suma del resultado de multiplicar cada uno de los importes de los atributos ImporteP de los impuestos retenidos registrados en el elemento RetencionP donde el atributo ImpuestoP contenga el valor IVA por el valor registrado en el atributo TipoCambioP de cada nodo Pago (…, …).
- [CRP20202](https://xmlvalid.com/rules/CRP20202.md) (error): El valor del campo TotalRetencionesISR no es igual al redondeo de la suma del resultado de multiplicar cada uno de los importes de los atributos ImporteP de los impuestos retenidos registrados en el elemento RetencionP donde el atributo ImpuestoP contenga el valor ISR por el valor registrado en el atributo TipoCambioP de cada nodo Pago (…, …).
- [CRP20203](https://xmlvalid.com/rules/CRP20203.md) (error): El valor del campo TotalRetencionesIEPS no es igual al redondeo de la suma del resultado de multiplicar cada uno de los importes de los atributos ImporteP de los impuestos retenidos registrados en el elemento RetencionP donde el atributo ImpuestoP contenga el valor IEPS por el valor registrado en el atributo TipoCambioP de cada nodo Pago (…, …).
- [CRP20204](https://xmlvalid.com/rules/CRP20204.md) (error): El valor del campo TotalTrasladosBaseIVA16 no es igual al redondeo de la suma del resultado de multiplicar cada uno de los importes de los atributos BaseP de los impuestos trasladados registrados en el elemento TrasladoP donde los atributos contengan en ImpuestoP el valor IVA, en TipoFactorP el valor Tasa y en TasaOCuotaP el valor 0.160000, por el valor registrado en el atributo TipoCambioP de cada nodo Pago (…, …).
- [CRP20205](https://xmlvalid.com/rules/CRP20205.md) (error): El valor del campo TotalTrasladosImpuestoIVA16 no es igual al redondeo de la suma del resultado de multiplicar cada uno de los importes de los atributos ImporteP de los impuestos trasladados registrados en el elemento TrasladoP donde los atributos contengan en ImpuestoP el valor IVA, en TipoFactorP el valor Tasa y en TasaOCuotaP el valor 0.160000, por el valor registrado en el atributo TipoCambioP de cada nodo Pago (…, …).
- [CRP20206](https://xmlvalid.com/rules/CRP20206.md) (error): El valor del campo TotalTrasladosBaseIVA8 no es igual al redondeo de la suma del resultado de multiplicar cada uno de los importes de los atributos BaseP de los impuestos trasladados registrados en el elemento TrasladoP donde los atributos contengan en ImpuestoP el valor IVA, en TipoFactorP el valor Tasa y en TasaOCuotaP el valor 0.080000, por el valor registrado en el atributo TipoCambioP de cada nodo Pago (…, …).
- [CRP20207](https://xmlvalid.com/rules/CRP20207.md) (error): El valor del campo TotalTrasladosImpuestoIVA8 no es igual al redondeo de la suma del resultado de multiplicar cada uno de los importes de los atributos ImporteP de los impuestos trasladados registrados en el elemento TrasladoP donde los atributos contengan en ImpuestoP el valor IVA, en TipoFactorP el valor Tasa y TasaOCuotaP el valor 0.080000, por el valor registrado en el atributo TipoCambioP de cada nodo Pago (…, …).
- [CRP20208](https://xmlvalid.com/rules/CRP20208.md) (error): El valor del campo TotalTrasladosBaseIVA0 no es igual al redondeo de la suma del resultado de multiplicar cada uno de los importes de los atributos BaseP de los impuestos trasladados registrados en el elemento TrasladoP donde los atributos contengan en ImpuestoP el valor IVA, en TipoFactorP el valor Tasa y en TasaOCuotaP el valor 0.000000, por el valor registrado en el atributo TipoCambioP de cada nodo Pago (…, …).
- [CRP20209](https://xmlvalid.com/rules/CRP20209.md) (error): El valor del campo TotalTrasladosImpuestoIVA0 no es igual al redondeo de la suma del resultado de multiplicar cada uno de los importes de los atributos ImporteP de los impuestos trasladados registrados en el elemento TrasladoP donde los atributos contengan en ImpuestoP el valor IVA, en TipoFactorP el valor Tasa y en TasaOCuotaP el valor 0.000000, por el valor registrado en el atributo TipoCambioP de cada nodo Pago (…, …).
- [CRP20210](https://xmlvalid.com/rules/CRP20210.md) (error): El valor del campo TotalTrasladosBaseExento no es igual al redondeo de la suma del resultado de multiplicar cada uno de los importes de los atributos BaseP de los impuestos trasladados registrados en el elemento TrasladoP donde los atributos contengan en ImpuestoP el valor IVA y en TipoFactorP el valor Exento, por el valor registrado en el atributo TipoCambioP de cada nodo Pago (…, …).
- [CRP20211](https://xmlvalid.com/rules/CRP20211.md) (error): El valor del campo MontoTotalPagos no es igual al redondeo de la suma del resultado de multiplicar cada uno de los atributos Monto por el valor registrado en el atributo TipoCambioP de cada nodo Pago (…, …).
- [CRP20212](https://xmlvalid.com/rules/CRP20212.md) (error): El valor del campo FormaDePagoP debe ser distinto de "99".
- [CRP20213](https://xmlvalid.com/rules/CRP20213.md) (error): El campo MonedaP debe ser distinto de "XXX".
- [CRP20214](https://xmlvalid.com/rules/CRP20214.md) (error): El campo TipoCambioP se debe registrar.
- [CRP20215](https://xmlvalid.com/rules/CRP20215.md) (error): El campo TipoCambioP debe contener el valor "1".
- [CRP20217](https://xmlvalid.com/rules/CRP20217.md) (error): La suma de los valores registrados en el campo ImpPagado de los apartados DoctoRelacionado no es menor o igual que el valor del campo Monto (…, Monto …).
- [CRP20218](https://xmlvalid.com/rules/CRP20218.md) (error): El valor del campo Monto no es mayor que cero "0".
- [CRP20219](https://xmlvalid.com/rules/CRP20219.md) (error): El valor del campo Monto debe tener hasta la cantidad de decimales que soporte la moneda registrada en el campo MonedaP (…, …: …).
- [CRP20221](https://xmlvalid.com/rules/CRP20221.md) (error): El campo RfcEmisorCtaOrd no se debe registrar.
- [CRP20223](https://xmlvalid.com/rules/CRP20223.md) (error): El campo NomBancoOrdExt se debe registrar.
- [CRP20224](https://xmlvalid.com/rules/CRP20224.md) (error): El campo CtaOrdenante no se debe registrar.
- [CRP20225](https://xmlvalid.com/rules/CRP20225.md) (error): El campo CtaOrdenante no cumple con el patrón requerido (…, FormaDePagoP …).
- [CRP20226](https://xmlvalid.com/rules/CRP20226.md) (error): El campo CtaBeneficiario no cumple con el patrón requerido (…, FormaDePagoP …).
- [CRP20227](https://xmlvalid.com/rules/CRP20227.md) (error): El campo RfcEmisorCtaBen no se debe registrar.
- [CRP20228](https://xmlvalid.com/rules/CRP20228.md) (error): El campo CtaBeneficiario no se debe registrar.
- [CRP20229](https://xmlvalid.com/rules/CRP20229.md) (error): El campo TipoCadPago no se debe registrar.
- [CRP20230](https://xmlvalid.com/rules/CRP20230.md) (error): El campo CertPago se debe registrar.
- [CRP20231](https://xmlvalid.com/rules/CRP20231.md) (error): El campo CertPago no se debe registrar.
- [CRP20232](https://xmlvalid.com/rules/CRP20232.md) (error): El campo CadPago se debe registrar.
- [CRP20233](https://xmlvalid.com/rules/CRP20233.md) (error): El campo CadPago no se debe registrar.
- [CRP20234](https://xmlvalid.com/rules/CRP20234.md) (error): El campo SelloPago se debe registrar.
- [CRP20235](https://xmlvalid.com/rules/CRP20235.md) (error): El campo SelloPago no se debe registrar.
- [CRP20236](https://xmlvalid.com/rules/CRP20236.md) (error): El valor del campo MonedaDR debe ser distinto de "XXX".
- [CRP20237](https://xmlvalid.com/rules/CRP20237.md) (error): El campo EquivalenciaDR se debe registrar.
- [CRP20238](https://xmlvalid.com/rules/CRP20238.md) (error): El campo EquivalenciaDR debe contener el valor "1".
- [CRP20239](https://xmlvalid.com/rules/CRP20239.md) (error): El campo ImpSaldoAnt debe mayor a cero.
- [CRP20240](https://xmlvalid.com/rules/CRP20240.md) (error): El valor del campo ImpSaldoAnt debe tener hasta la cantidad de decimales que soporte la moneda registrada en el campo MonedaDR.
- [CRP20241](https://xmlvalid.com/rules/CRP20241.md) (error): El campo ImpPagado debe mayor a cero.
- [CRP20242](https://xmlvalid.com/rules/CRP20242.md) (error): El valor del campo ImpPagado debe tener hasta la cantidad de decimales que soporte la moneda registrada en el campo MonedaDR.
- [CRP20243](https://xmlvalid.com/rules/CRP20243.md) (error): El valor del campo ImpSaldoInsoluto debe tener hasta la cantidad de decimales que soporte la moneda registrada en el campo MonedaDR.
- [CRP20244](https://xmlvalid.com/rules/CRP20244.md) (error): El campo ImpSaldoInsoluto debe ser mayor o igual a cero y calcularse con la suma de los campos ImpSaldoAnt menos el ImpPagado (… - …, …).
- [CRP20246](https://xmlvalid.com/rules/CRP20246.md) (error): El nodo hijo ImpuestosDR del nodo DoctoRelacionado debe existir.
- [CRP20247](https://xmlvalid.com/rules/CRP20247.md) (error): El nodo hijo de ImpuestosDR del nodo DoctoRelacionado, no debe existir.
- [CRP20248](https://xmlvalid.com/rules/CRP20248.md) (error): En caso de utilizar el nodo Impuestos en un documento relacionado, se deben incluir impuestos de traslados y/o retenciones.
- [CRP20249](https://xmlvalid.com/rules/CRP20249.md) (error): El valor del campo BaseDR que corresponde a Retención debe ser mayor que cero.
- [CRP20252](https://xmlvalid.com/rules/CRP20252.md) (error): El valor registrado en el campo TipoFactorDR que corresponde a Retención debe ser distinto de Exento.
- [CRP20253](https://xmlvalid.com/rules/CRP20253.md) (error): El valor del campo TasaOCuotaDR que corresponde a Retención, no contiene un valor del catálogo c_TasaOcuota o se encuentra fuera de rango (…, …, …).
- [CRP20254](https://xmlvalid.com/rules/CRP20254.md) (error): El valor del campo ImporteDR que corresponde a Retención no se encuentra entre el limite inferior y superior permitido (…, … × …).
- [CRP20255](https://xmlvalid.com/rules/CRP20255.md) (error): El valor del campo BaseDR que corresponde a Traslado debe ser mayor que cero.
- [CRP20258](https://xmlvalid.com/rules/CRP20258.md) (error): Si el valor registrado en el campo TipoFactorDR es Exento no se deben registrar los campos TasaOCuotaDR ni ImporteDR.
- [CRP20259](https://xmlvalid.com/rules/CRP20259.md) (error): Si el valor registrado en el campo TipoFactorDR que corresponde a Traslado es Tasa o Cuota, se deben registrar los campos TasaOCuotaDR e ImporteDR.
- [CRP20260](https://xmlvalid.com/rules/CRP20260.md) (error): El valor del campo TasaOCuotaDR que corresponde a Traslado no contiene un valor del catálogo c_TasaOcuota o se encuentra fuera de rango (…, …, …).
- [CRP20261](https://xmlvalid.com/rules/CRP20261.md) (error): El valor del campo ImporteDR o que corresponde a Traslado no se encuentra entre el limite inferior y superior permitido (…, … × …).
- [CRP20263](https://xmlvalid.com/rules/CRP20263.md) (error): Debe haber sólo un registro por cada tipo de impuesto retenido (…).
- [CRP20264](https://xmlvalid.com/rules/CRP20264.md) (error): Debe existir al menos uno de los campos TotalRetencionesIVA, TotalRetencionesISR, TotalRetencionesIEPS.
- [CRP20265](https://xmlvalid.com/rules/CRP20265.md) (error): El campo ImporteP que corresponde a Retención, no es igual a la suma de los importes de los impuestos retenidos registrados en el documento relacionado donde el impuesto sea igual al campo ImpuestoP de este elemento (falta la RetencionP del impuesto …).
- [CRP20266](https://xmlvalid.com/rules/CRP20266.md) (error): Deben existir los campos BaseP, ImpuestoP y TipoFactorP.
- [CRP20267](https://xmlvalid.com/rules/CRP20267.md) (error): Debe existir al menos uno de los campos TotalTrasladosBaseIVA16 y/o TotalTrasladosBaseIVA8 y/o TotalTrasladosBaseIVA0 y/o TotalTrasladosBaseIVAExento.
- [CRP20268](https://xmlvalid.com/rules/CRP20268.md) (error): El campo BaseP que corresponde a Traslado, no es igual a la suma de los importes de las bases registrados en los documentos relacionados donde el impuesto del documento relacionado sea igual al campo ImpuestoP de este elemento y la TasaOCuotaDR del documento relacionado sea igual al campo TasaOCuotaP de este elemento (falta un TrasladoP).
- [CRP20269](https://xmlvalid.com/rules/CRP20269.md) (error): El importe del campo BaseP que corresponde a Traslado, no es igual a la suma de los importes de las bases registrados en los documentos relacionados (…, documentos …).
- [CRP20271](https://xmlvalid.com/rules/CRP20271.md) (error): Debe haber sólo un registro con la misma combinación de impuesto, factor y tasa por cada traslado.
- [CRP20272](https://xmlvalid.com/rules/CRP20272.md) (error): El valor seleccionado debe corresponder a un valor del catálogo Tasa O Cuota donde la columna impuesto corresponda con el campo ImpuestoP y la columna factor corresponda con el campo TipoFactorP.
- [CRP20273](https://xmlvalid.com/rules/CRP20273.md) (error): Deben existir al menos uno de los campos TotalTrasladosImpuestoIVA16, TotalTrasladosImpuestoIVA8, TotalTrasladosImpuestoIVA0 cuando existan conceptos con un TipoFactor distinto a Exento.
- [CRP20274](https://xmlvalid.com/rules/CRP20274.md) (error): El campo ImporteP que corresponde a Traslado, no es igual a la suma de los importes de los impuestos registrados en el documento relacionado donde el impuesto del documento relacionado sea igual al campo ImpuestoP de este elemento y la TasaOCuotaP del documento relacionado sea igual al campo TasaOCuotaP de este elemento (…, documentos …).
- [CRP20276](https://xmlvalid.com/rules/CRP20276.md) (error): El valor del campo Monto no se encuentra entre el límite inferior y superior permitido (…, … a …).
- [CRP20278](https://xmlvalid.com/rules/CRP20278.md) (error): Cuando se registre el valor "06" o "08" en el campo ObjetoImpDR, el valor del campo ImpuestoDR de los nodos hijo RetencionDR y/o TrasladoDR del nodo DoctoRelacionado debe ser distinto de los valores "002" (IVA) y/o "003" (IEPS).
- [CRP20279](https://xmlvalid.com/rules/CRP20279.md) (error): Cuando se registre el valor "07" en el campo ObjetoImpDR, el valor del campo ImpuestoDR de los nodos hijo RetencionDR y/o TrasladoDR del nodo DoctoRelacionado debe ser distinto del valor "002" (IVA); debe existir al menos un nodo hijo TrasladoDR con el valor "003" (IEPS).
