Errores Pagos 2.0
Esta guía describe cómo se clasifican los errores de la API y lista los errores de nivel 2 del complemento de Pagos 2.0, con su código, la validación que los produce y su descripción.
Antes de contactar a soporte, ten en cuenta que el 99% de los casos reportados corresponden a errores de integración. Revisa a fondo tu implementación antes de pedir ayuda.
Tipos de errores
Los errores se clasifican en dos niveles. Si falla alguna validación de nivel 1, la API detiene la solicitud y responde 400 (Bad Request) con el detalle de las fallas, sin ejecutar las validaciones de nivel 2.
1. Errores de nivel 1
Son las fallas de validación de la solicitud, que la API revisa antes de procesarla. Cada falla indica la propiedad que falló (propertyName) y un mensaje que depende de la regla aplicada. Usa la propiedad, y no el texto del mensaje, para identificar la falla en tu código (ver ValidationFailure).
Los mensajes están en español; por ejemplo, 'transpInternacId' no debe estar vacío. Algunos mensajes propios de reglas (ver Mensajes de validación del timbrado) y los errores de lectura del JSON, como un JSON mal formado o un valor de otro tipo, están en inglés.
2. Errores de nivel 2
Son las revisiones que el SAT exige para cumplir con el complemento de Pagos 2.0. Sus mensajes están en español y explican la causa según las especificaciones del SAT.
Códigos de estado
La categoría del código de estado indica si la solicitud tuvo éxito. El cuerpo de la respuesta sigue el modelo de respuesta de FiscalAPI.
- Name
2xx- Description
La solicitud tuvo éxito.
- Name
4xx- Description
Error del cliente: hay un problema en la solicitud.
- Name
5xx- Description
Error del servidor. Es poco común; consulta Errores del servidor.
Errores Pagos 2.0
Los errores de Pagos 2.0 son el segundo nivel de validación. Si la respuesta trae un error de otro tipo, la solicitud no superó las validaciones de nivel 1: consulta ValidationFailure para interpretarlo. Esta es la matriz completa de errores de Pagos 2.0, con sus códigos, validaciones y descripciones:
| Núm | Elemento | Atributo | Validación | Código error | Descripción de código de error |
|---|---|---|---|---|---|
| 1 | Comprobante | TipoDeComprobante | El valor registrado debe ser P | CRP20101 | El valor del campo TipoDeComprobante debe ser "P" |
| 2 | Comprobante | Exportacion | El valor registrado debe ser "01" | CRP20102 | El valor del campo Exportacion debe ser "01" |
| 3 | Comprobante | SubTotal | El atributo SubTotal debe tener el valor "0". | CRP20103 | El valor del campo SubTotal debe ser cero "0". |
| 4 | Comprobante | Moneda | El atributo Moneda debe tener el valor "XXX". | CRP20104 | El valor del campo Moneda debe ser "XXX". |
| 5 | Comprobante | FormaPago | El atributo FormaPago no debe existir. | CRP20105 | El campo FormaPago no se debe registrar en el CFDI. |
| 6 | Comprobante | MetodoPago | El atributo MetodoPago no debe existir. | CRP20106 | El campo MetodoPago no se debe registrar en el CFDI. |
| 7 | Comprobante | CondicionesDePago | El atributo CondicionesDePago no debe existir. | CRP20107 | El campo CondicionesDePago no se debe registrar en el CFDI. |
| 8 | Comprobante | Descuento | El atributo Descuento no debe existir. | CRP20108 | El campo Descuento no se debe registrar en el CFDI. |
| 9 | Comprobante | TipoCambio | El atributo TipoCambio no debe existir. | CRP20109 | El campo TipoCambio no se debe registrar en el CFDI. |
| 10 | Comprobante | Total | El atributo Total debe tener el valor "0". | CRP20110 | El valor del campo Total debe ser cero "0". |
| 11 | cfdi:Conceptos/Concepto | El nodo Conceptos debe tener un solo concepto. | CRP20111 | Solo debe existir un Concepto en el CFDI. | |
| 12 | cfdi:Conceptos/Concepto | El nodo Conceptos no debe tener nodos hijo, solo cuando se trate del nodo AcuentaTerceros | CRP20112 | Si no existe el nodo AcuentaTerceros, no se deben registrar apartados dentro de Conceptos | |
| 13 | cfdi:Conceptos/Concepto | ClaveProdServ | El atributo ClaveProdServ correspondiente a concepto debe tener el valor "84111506". | CRP20113 | El valor del campo ClaveProdServ debe ser "84111506". |
| 14 | cfdi:Conceptos/Concepto | NoIdentificacion | El atributo NoIdentificacion no debe existir. | CRP20114 | El campo NoIdentificacion no se debe registrar en el CFDI. |
| 15 | cfdi:Conceptos/Concepto | Cantidad | El atributo Cantidad debe tener el valor "1". | CRP20115 | El valor del campo Cantidad debe ser "1". |
| 16 | cfdi:Conceptos/Concepto | ClaveUnidad | El atributo ClaveUnidad debe tener el valor "ACT". | CRP20116 | El valor del campo ClaveUnidad debe ser "ACT". |
| 17 | cfdi:Conceptos/Concepto | Unidad | El atributo Unidad no debe existir. | CRP20117 | El campo Unidad no se debe registrar en el CFDI. |
| 18 | cfdi:Conceptos/Concepto | Descripcion | El atributo Descripcion debe tener el valor "Pago". | CRP20118 | El valor del campo Descripcion debe ser "Pago". |
| 19 | cfdi:Conceptos/Concepto | ValorUnitario | El atributo ValorUnitario debe tener el valor "0". | CRP20119 | El valor del campo ValorUnitario debe ser cero "0". |
| 20 | cfdi:Conceptos/Concepto | Importe | El atributo Importe debe tener el valor "0". | CRP20120 | El valor del campo Importe debe ser cero "0". |
| 21 | cfdi:Conceptos/Concepto | Descuento | El atributo Unidad no debe existir. | CRP20121 | El campo Descuento no se debe registrar en el CFDI. |
| 22 | cfdi:Conceptos/Concepto | ObjetoImp | El atributo ObjetoImp debe tener el valor "01" | CRP20122 | El valor del campo ObjetoImp debe ser "01". |
| 23 | cfdi:Conceptos/Concepto:Impuestos | El nodo Impuestos no se debe registrar en el CFDI. | CRP20123 | No se debe registrar el apartado de Impuestos en el CFDI. | |
| 1 | Pagos | TotalRetencionesIVA | Debe ser 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. | CRP20201 | 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. |
| 2 | Pagos | TotalRetencionesISR | Debe ser 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. | CRP20202 | 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. |
| 3 | Pagos | TotalRetencionesIEPS | Debe ser 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. | CRP20203 | 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. |
| 4 | Pagos | TotalTrasladosBaseIVA16 | Debe ser 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. | CRP20204 | 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. |
| 5 | Pagos | TotalTrasladosImpuestoIVA16 | Debe ser 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. | CRP20205 | 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. |
| 6 | Pagos | TotalTrasladosBaseIVA8 | Debe ser 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. | CRP20206 | 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. |
| 7 | Pagos | TotalTrasladosImpuestoIVA8 | Debe ser 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. | CRP20207 | 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. |
| 8 | Pagos | TotalTrasladosBaseIVA0 | Debe ser 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. | CRP20208 | 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. |
| 9 | Pagos | TotalTrasladosImpuestoIVA0 | Debe ser 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. | CRP20209 | 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. |
| 10 | Pagos | TotalTrasladosBaseExento | Debe ser 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. | CRP20210 | 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. |
| 11 | Pagos | MontoTotalPagos | El valor de este atributo debe ser 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. | CRP20211 | 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. |
| 12 | Pagos/pago10:Pago | FormaDePagoP | El valor registrado debe ser diferente de 99. | CRP20212 | El valor del campo FormaDePagoP debe ser distinto de "99". |
| 13 | Pagos/pago10:Pago | MonedaP | El atributo MonedaP debe ser diferente de "XXX". | CRP20213 | El campo MonedaP debe ser distinto de "XXX" |
| 14 | Pagos/pago10:Pago | MonedaP | Si el atributo MonedaP es diferente de MXN, debe existir información en el atributo TipoCambioP. | CRP20214 | El campo TipoCambioP se debe registrar. |
| 15 | Pagos/pago10:Pago | MonedaP | Si el atributo MonedaP es MXN, se debe registrar el valor "1" en el atributo TipoCambioP. | CRP20215 | El campo TipoCambioP debe contener el valor "1". |
| 16 | Pagos/pago10:Pago | TipoCambioP | Cuando el valor de este atributo se encuentre fuera de los límites establecidos, el emisor debe obtener de manera no automática una clave de confirmación para ratificar que el valor es correcto e integrarla al CFDI en el atributo CFDI:Confirmacion. | CRP20216 | Cuando el valor del campo TipoCambioP se encuentre fuera de los límites establecidos, debe existir el campo Confirmacion |
| 17 | Pagos/pago10:Pago | Monto | Cuando la moneda registrada en el Documento Relacionado sea igual a la del Pago, la suma de los valores registrados en el nodo DoctoRelacionado, atributo ImpPagado, debe ser menor o igual que el valor de este atributo. Al ser mismas monedas, no se calculan los márgenes de variación (límites inferior y superior) por efecto de redondeo. | CRP20217 | 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. |
| 18 | Pagos/pago10:Pago | Monto | Debe ser mayor a 0. | CRP20218 | El valor del campo Monto no es mayor que cero "0". |
| 19 | Pagos/pago10:Pago | Monto | Considerar que para el monto, se debe registrar el número de decimales de acuerdo al tipo de moneda expresado en el atributo MonedaP, esto de acuerdo con la publicación del catálogo que se encuentra en la página de internet del SAT, en su caso, las cantidades deben ser redondeadas para cumplir con el número de decimales establecidos. | CRP20219 | El valor del campo Monto debe tener hasta la cantidad de decimales que soporte la moneda registrada en el campo MonedaP. |
| 20 | Pagos/pago10:Pago | Monto | Cuando el valor equivalente en MXN de este atributo exceda el límite establecido, el emisor debe obtener de manera no automática una clave de confirmación para ratificar que el importe es correcto e integrarla al CFDI en el atributo CFDI:Confirmacion. La clave de confirmación la asigna el PAC. | CRP20220 | Cuando el valor del campo Monto se encuentre fuera de los límites establecidos, debe existir el campo Confirmacion |
| 21 | Pagos/pago10:Pago | RfcEmisorCtaOrd | Cuando el valor del campo FormaDePagoP sea diferente a la clave 02, 03, 04, 05, 06, 28 y 29, entonces este atributo no debe existir. | CRP20221 | El campo RfcEmisorCtaOrd no se debe registrar. |
| 22 | Pagos/pago10:Pago | RfcEmisorCtaOrd | Cuando no se utilice el RFC genérico XEXX010101000, el RFC debe estar en la lista de RFC inscritos en el SAT. | CRP20222 | El RFC del campo RfcEmisorCtaOrd no se encuentra en la lista de RFC. |
| 23 | Pagos/pago10:Pago | NomBancoOrdExt | Cuando se utilice el RFC genérico XEXX010101000 en el campo RfcEmisorCtaOrd, entonces el campo NomBancoOrdExt debe ser requerido. | CRP20223 | El campo NomBancoOrdExt se debe registrar. |
| 24 | Pagos/pago10:Pago | CtaOrdenante | Cuando el valor del campo FormaDePagoP sea diferente a la clave 02, 03, 04, 05, 06, 28 y 29, entonces este atributo no debe existir. | CRP20224 | El campo CtaOrdenante no se debe registrar. |
| 25 | Pagos/pago10:Pago | CtaOrdenante | Si existe el atributo CtaOrdenante debe cumplir con el patrón especificado en el catálogo c_FormaPago | CRP20225 | El campo CtaOrdenante no cumple con el patrón requerido. |
| 26 | Pagos/pago10:Pago | CtaBeneficiario | Si existe el atributo CtaBeneficiario debe cumplir con el patrón especificado en el catálogo c_FormaPago | CRP20226 | El campo CtaBeneficiario no cumple con el patrón requerido. |
| 27 | Pagos/pago10:Pago | RfcEmisorCtaBen | Cuando el valor del campo FormaDePagoP sea diferente a la clave 02, 03, 04, 05, 28 y 29, entonces este atributo no debe existir. | CRP20227 | El campo RfcEmisorCtaBen no se debe registrar. |
| 28 | Pagos/pago10:Pago | CtaBeneficiario | Cuando el valor del campo FormaDePagoP sea diferente a la clave 02, 03, 04, 05, 28 y 29, entonces este atributo no debe existir. | CRP20228 | El campo CtaBeneficiario no se debe registrar. |
| 29 | Pagos/pago10:Pago | TipoCadPago | SI el valor del atributo FormaDePagoP es diferente a la clave 03, el atributo TipoCadPago no debe existir. | CRP20229 | El campo TipoCadPago no se debe registrar. |
| 30 | Pagos/pago10:Pago | CertPago | Si existe el campo TipoCadPago es obligatorio registrar los campos "CertPago", "CadPago" y “SelloPago”. | CRP20230 | El campo CertPago se debe registrar. |
| 31 | Pagos/pago10:Pago | CertPago | Si no existe el campo TipoCadPago no se deben registrar los campos "CertPago", "CadPago" y “SelloPago”. | CRP20231 | El campo CertPago no se debe registrar. |
| 32 | Pagos/pago10:Pago | CadPago | Si existe el campo TipoCadPago es obligatorio registrar los campos "CertPago", "CadPago" y “SelloPago”. | CRP20232 | El campo CadPago se debe registrar. |
| 33 | Pagos/pago10:Pago | CadPago | Si no existe el campo TipoCadPago no se deben registrar los campos "CertPago", "CadPago" y “SelloPago”. | CRP20233 | El campo CadPago no se debe registrar. |
| 34 | Pagos/pago10:Pago | SelloPago | Si existe el campo TipoCadPago es obligatorio registrar los campos "CertPago", "CadPago" y “SelloPago”. | CRP20234 | El campo SelloPago se debe registrar. |
| 35 | Pagos/pago10:Pago | SelloPago | Si no existe el campo TipoCadPago no se deben registrar los campos "CertPago", "CadPago" y “SelloPago”. | CRP20235 | El campo SelloPago no se debe registrar. |
| 36 | Pagos/pago10:Pago/pago10:DoctoRelacionado | MonedaDR | El atributo MonedaP debe ser diferente de "XXX". | CRP20236 | El valor del campo MonedaDR debe ser distinto de "XXX" |
| 37 | Pagos/pago10:Pago/pago10:DoctoRelacionado | EquivalenciaDR | Si el valor del atributo MonedaDR es diferente al valor registrado en el atributo MonedaP, se debe registrar información en el atributo EquivalenciaDR. | CRP20237 | El campo EquivalenciaDR se debe registrar. |
| 38 | Pagos/pago10:Pago/pago10:DoctoRelacionado | EquivalenciaDR | Si el valor del atributo MonedaDR es igual al valor registrado en el atributo MonedaP en cada Documento Relacionado, se debe registrar el valor "1" en el atributo EquivalenciaDR. | CRP20238 | El campo EquivalenciaDR debe contener el valor "1". |
| 39 | Pagos/pago10:Pago/pago10:DoctoRelacionado | ImpSaldoAnt | Debe ser mayor a cero | CRP20239 | El campo ImpSaldoAnt debe mayor a cero. |
| 40 | Pagos/pago10:Pago/pago10:DoctoRelacionado | ImpSaldoAnt | Considerar que para los importes registrados en los atributos “ImpSaldoAnt”, “ImpPagado” e “ImpSaldoInsoluto” de éste nodo, deben corresponder a la moneda registrada en el campo MonedaDR y ser redondeados hasta la cantidad de decimales que soporte. | CRP20240 | El valor del campo ImpSaldoAnt debe tener hasta la cantidad de decimales que soporte la moneda registrada en el campo MonedaDR. |
| 41 | Pagos/pago10:Pago/pago10:DoctoRelacionado | ImpPagado | Debe ser mayor a cero | CRP20241 | El campo ImpPagado debe mayor a cero. |
| 42 | Pagos/pago10:Pago/pago10:DoctoRelacionado | ImpPagado | Considerar que para los importes registrados en los atributos “ImpSaldoAnt”, “ImpPagado” e “ImpSaldoInsoluto” de éste nodo, deben corresponder a la moneda registrada en el campo MonedaDR y ser redondeados hasta la cantidad de decimales que soporte. | CRP20242 | El valor del campo ImpPagado debe tener hasta la cantidad de decimales que soporte la moneda registrada en el campo MonedaDR. |
| 43 | Pagos/pago10:Pago/pago10:DoctoRelacionado | ImpSaldoInsoluto | Considerar que para los importes registrados en los atributos “ImpSaldoAnt”, “ImpPagado” e “ImpSaldoInsoluto” de éste nodo, deben corresponder a la moneda registrada en el campo MonedaDR y ser redondeados hasta la cantidad de decimales que soporte. | CRP20243 | El valor del campo ImpSaldoInsoluto debe tener hasta la cantidad de decimales que soporte la moneda registrada en el campo MonedaDR. |
| 44 | Pagos/pago10:Pago/pago10:DoctoRelacionado | ImpSaldoInsoluto | Debe ser mayor o igual a 0 y debe calcularse de los atributos: ImpSaldoAnt menos el ImpPagado, | CRP20244 | El campo ImpSaldoInsoluto debe ser mayor o igual a cero y calcularse con la suma de los campos ImpSaldoAnt menos el ImpPagado. |
| 45 | Pagos/pago10:Pago/pago10:DoctoRelacionado | ObjetoImpDR | El atributo ObjetoImpDR debe tener un valor del catálogo c_ObjetoImp. | CRP20245 | El campo ObjetoImpDR, debe tener un valor del catálogo c_ObjetoImp. |
| 46 | Pagos/pago10:Pago/pago10:DoctoRelacionado | ObjetoImpDR | Si el valor del atributo ObjetoImpDR es “02” el nodo hijo ImpuestosDR del nodo DoctoRelacionado debe existir. | CRP20246 | El nodo hijo ImpuestosDR del nodo DoctoRelacionado debe existir. |
| 47 | Pagos/pago10:Pago/pago10:DoctoRelacionado | ObjetoImpDR | Si este atributo contiene el valor "01", "03","04" o "05", el nodo hijo ImpuestosDR del nodo DoctoRelacionado, no debe existir. | CRP20247 | El nodo hijo de ImpuestosDR del nodo DoctoRelacionado, no debe existir. |
| 48 | Pagos/pago10:Pago/pago10:DoctoRelacionado/ImpuestosDR | En caso de utilizar el nodo Impuestos en un DoctoRelacionado, se deben incluir impuestos de traslados y/o retenciones. | CRP20248 | En caso de utilizar el nodo Impuestos en un documento relacionado, se deben incluir impuestos de traslados y/o retenciones. | |
| 49 | Pagos/pago10:Pago/pago10:DoctoRelacionado/ImpuestosDR:RetencionesDR/RetencionDR | BaseDR | Debe ser mayor que cero. | CRP20249 | El valor del campo BaseDR que corresponde a Retención debe ser mayor que cero. |
| 50 | Pagos/pago10:Pago/pago10:DoctoRelacionado/ImpuestosDR:RetencionesDR/RetencionDR | ImpuestoDR | El atributo ImpuestoDR debe contener un valor del catálogo c_Impuesto. | CRP20250 | El valor del campo ImpuestoDR que corresponde a Retención no contiene un valor del catálogo c_Impuesto. |
| 51 | Pagos/pago10:Pago/pago10:DoctoRelacionado/ImpuestosDR:RetencionesDR/RetencionDR | TipoFactorDR | El atributo TipoFactorDR debe contener un valor del catálogo c_TipoFactor. | CRP20251 | El valor del campo TipoFactorDR que corresponde a Retención no contiene un valor del catálogo c_TipoFactor. |
| 52 | Pagos/pago10:Pago/pago10:DoctoRelacionado/ImpuestosDR:RetencionesDR/RetencionDR | TipoFactorDR | El valor registrado debe ser distinto de Exento. | CRP20252 | El valor registrado en el campo TipoFactorDR que corresponde a Retención debe ser distinto de Exento. |
| 53 | Pagos/pago10:Pago/pago10:DoctoRelacionado/ImpuestosDR:RetencionesDR/RetencionDR | TasaOCuotaDR | Si el valor registrado es fijo debe corresponder a un valor del catálogo c_TasaOCuota, coincidir con el tipo de impuesto registrado en el atributo ImpuestoDR y el factor debe corresponder con el atributo TipoFactorDR. | CRP20253 | 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. |
| 54 | Pagos/pago10:Pago/pago10:DoctoRelacionado/ImpuestosDR:RetencionesDR/RetencionDR | ImporteDR | El valor de este atributo debe ser mayor o igual que el límite inferior y menor o igual que el límite superior. | CRP20254 | El valor del campo ImporteDR que corresponde a Retención no se encuentra entre el limite inferior y superior permitido. |
| 55 | Pagos/pago10:Pago/pago10:DoctoRelacionado/ImpuestosDR:TrasladosDR/TrasladoDR | BaseDR | El valor debe ser mayor que cero. | CRP20255 | El valor del campo BaseDR que corresponde a Traslado debe ser mayor que cero |
| 56 | Pagos/pago10:Pago/pago10:DoctoRelacionado/ImpuestosDR:TrasladosDR/TrasladoDR | ImpuestoDR | El atributo ImpuestoDR debe contener un valor del catálogo c_Impuesto. | CRP20256 | El valor del campo ImpuestoDR que corresponde a Traslado no contiene un valor del catálogo c_Impuesto. |
| 57 | Pagos/pago10:Pago/pago10:DoctoRelacionado/ImpuestosDR:TrasladosDR/TrasladoDR | TipoFactorDR | El atributo TipoFactorDR debe contener un valor del catálogo c_TipoFactor. | CRP20257 | El valor del campo TipoFactorDR que corresponde a Traslado no contiene un valor del catálogo c_TipoFactor. |
| 58 | Pagos/pago10:Pago/pago10:DoctoRelacionado/ImpuestosDR:TrasladosDR/TrasladoDR | TipoFactorDR | Si el valor registrado es Exento no se deben registrar los atributos TasaOCuotaDR ni ImporteDR. | CRP20258 | Si el valor registrado en el campo TipoFactorDR es Exento no se deben registrar los campos TasaOCuotaDR ni ImporteDR. |
| 59 | Pagos/pago10:Pago/pago10:DoctoRelacionado/ImpuestosDR:TrasladosDR/TrasladoDR | TipoFactorDR | Si el valor registrado es Tasa o Cuota, se deben registrar los atributos TasaOCuotaDR e ImporteDR. | CRP20259 | Si el valor registrado en el campo TipoFactorDR que corresponde a Traslado es Tasa o Cuota, se deben registrar los campos TasaOCuotaDR e ImporteDR. |
| 60 | Pagos/pago10:Pago/pago10:DoctoRelacionado/ImpuestosDR:TrasladosDR/TrasladoDR | TasaOCuotaDR | Si el valor registrado es fijo debe corresponder a un valor del catálogo c_TasaOCuota, coincidir con el tipo de impuesto registrado en el atributo ImpuestoDR y el factor debe corresponder con el atributo TipoFactorDR. | CRP20260 | El valor del campo TasaOCuotaDR que corresponde a Traslado no contiene un valor del catálogo c_TasaOcuota o se encuentra fuera de rango. |
| 61 | Pagos/pago10:Pago/pago10:DoctoRelacionado/ImpuestosDR:TrasladosDR/TrasladoDR | ImporteDR | El valor de este atributo debe ser mayor o igual que el límite inferior y menor o igual que el límite superior. | CRP20261 | El valor del campo ImporteDR o que corresponde a Traslado no se encuentra entre el limite inferior y superior permitido. |
| 62 | Pagos/pago10:Pago/pago10:ImpuestosP:RetencionesP/RetencionP | ImpuestoP | El atributo ImpuestoP debe contener un valor del catálogo c_Impuesto. | CRP20262 | El campo ImpuestoP no contiene un valor del catálogo c_Impuesto. |
| 63 | Pagos/pago10:Pago/pago10:ImpuestosP:RetencionesP/RetencionP | ImpuestoP | Debe haber sólo un registro por cada tipo de impuesto retenido. | CRP20263 | Debe haber sólo un registro por cada tipo de impuesto retenido. |
| 64 | Pagos/pago10:Pago/pago10:ImpuestosP:RetencionesP/RetencionP | ImporteP | Deben existir al menos uno de los atributos TotalRetencionesIVA, TotalRetencionesISR, TotalRetencionesIEPS. | CRP20264 | Debe existir al menos uno de los campos TotalRetencionesIVA, TotalRetencionesISR, TotalRetencionesIEPS. |
| 65 | Pagos/pago10:Pago/pago10:ImpuestosP:RetencionesP/RetencionP | ImporteP | Debe ser igual a la suma de los importes de los impuestos retenidos registrados en los documentos relacionados donde el impuesto sea igual al atributo ImpuestoP de este elemento. | CRP20265 | 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. |
| 66 | Pagos/pago10:Pago/pago10:ImpuestosP:TrasladosP/TrasladoP | TrasladoP | En el caso de que sólo existan conceptos con TipoFactorDR Exento, en este nodo solo deben existir los atributos BaseP, ImpuestoP y TipoFactorP. | CRP20266 | Deben existir los campos BaseP, ImpuestoP y TipoFactorP |
| 67 | Pagos/pago10:Pago/pago10:ImpuestosP:TrasladosP/TrasladoP | BaseP | Cuando en el atributo ImpuestoP del nodo TrasladoP se registre la clave 002 - IVA debe existir al menos uno de los atributos TotalTrasladosBaseIVA16, TotalTrasladosBaseIVA8, TotalTrasladosBaseIVA0, TotalTrasladosBaseIVAExento. | CRP20267 | Debe existir al menos uno de los campos TotalTrasladosBaseIVA16 y/o TotalTrasladosBaseIVA8 y/o TotalTrasladosBaseIVA0 y/o TotalTrasladosBaseIVAExento. |
| 68 | Pagos/pago10:Pago/pago10:ImpuestosP:TrasladosP/TrasladoP | BaseP | El valor de este atributo debe ser igual a la suma de los importes de los atributos BaseDR registrados en los documentos relacionados donde el impuesto del documento relacionado sea igual al atributo ImpuestoP de este elemento y la TasaOCuotaDR del documento relacionado sea igual al atributo TasaOCuotaP de este elemento. | CRP20268 | 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. |
| 69 | Pagos/pago10:Pago/pago10:ImpuestosP:TrasladosP/TrasladoP | BaseP | En caso de que solo existan documentos relacionados con TipoFactorDR Exento, la suma de este atributo debe ser igual a la suma de los importes de los atributos BaseDR registrados en los documentos relacionados. | CRP20269 | 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. |
| 70 | Pagos/pago10:Pago/pago10:ImpuestosP:TrasladosP/TrasladoP | ImpuestoP | El atributo ImpuestoP debe contener un valor del catálogo c_Impuesto. | CRP20270 | El campo ImpuestoP que corresponde a Traslado no contiene un valor del catálogo c_Impuesto. |
| 71 | Pagos/pago10:Pago/pago10:ImpuestosP:TrasladosP/TrasladoP | ImpuestoP | Debe haber sólo un registro con la misma combinación de impuesto, factor y tasa por cada traslado. | CRP20271 | Debe haber sólo un registro con la misma combinación de impuesto, factor y tasa por cada traslado. |
| 72 | Pagos/pago10:Pago/pago10:ImpuestosP:TrasladosP/TrasladoP | TasaOCuotaP | El valor seleccionado debe corresponder a un valor del catálogo c_TasaOCuota donde la columna impuesto corresponda con el atributo ImpuestoP y la columna factor corresponda con el atributo TipoFactorP. | CRP20272 | 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. |
| 73 | Pagos/pago10:Pago/pago10:ImpuestosP:TrasladosP/TrasladoP | ImporteP | Cuando en el atributo ImpuestoP del nodo TrasladoP se registre la clave 002 - IVA deben existir al menos uno de los atributos TotalTrasladosImpuestoIVA16, TotalTrasladosImpuestoIVA8, TotalTrasladosImpuestoIVA0 cuando existan conceptos con un TipoFactor distinto a Exento. | CRP20273 | Deben existir al menos uno de los campos TotalTrasladosImpuestoIVA16, TotalTrasladosImpuestoIVA8, TotalTrasladosImpuestoIVA0 cuando existan conceptos con un TipoFactor distinto a Exento. |
| 74 | Pagos/pago10:Pago/pago10:ImpuestosP:TrasladosP/TrasladoP | ImporteP | El valor de este atributo debe ser igual a la suma de los importes de los atributos ImporteDR registrados en el documento relacionado donde el impuesto del documento relacionado sea igual al atributo ImpuestoP de este elemento y la TasaOCuotaDR del documento relacionado sea igual al atributo TasaOCuotaP de este elemento. | CRP20274 | 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. |
| 75 | Pagos/pago10:Pago/pago10:DoctoRelacionado | ImpPagado | Cuando la moneda registrada en el Documento Relacionado sea diferente a la del Pago, primero se debe calcular el margen de variación, es decir, el cálculo de los limites inferior y superior de cada importe pagado. El límite inferior se debe truncar y el límite superior se debe redondear, al número de decimales que soporte la moneda. Los límites inferior y superior se calculan de manera individual para cada importe pagado, y son cada uno de los importes pagados los que deben estar entre sus límites respectivos. | CRP20275 | El valor del campo ImpPagado del nodo DoctoRelacionado no se encuentra entre el limite inferior y superior permitido. |
| 76 | Pagos/pago10:Pago | Monto | En el caso donde la suma de los atributos ImpPagado de cada documento relacionado convertido a la moneda del pago no sea menor o igual al atributo Monto en operaciones con diferentes divisas, se debe validar que el valor del atributo Monto sea mayor o igual al resultado de sumar los límites inferiores y menor o igual al resultado de sumar los límites superiores de cada ImpPagado calculados previamente. | CRP20276 | El valor del campo Monto no se encuentra entre el límite inferior y superior permitido. |
| 77 | Pagos/pago10:Pago/pago10:DoctoRelacionado | EquivalenciaDR | Cuando existan operaciones con más de un Documento relacionado en donde al menos uno de ellos contenga la misma moneda que la del Pago, para la fórmula en el cálculo del margen de variación se deben considerar 10 decimales en la EquivalenciaDR cuando el valor sea 1. | CRP20277 | El valor de EquivalenciaDR para la fórmula del cálculo del margen de variación debe ser “1.0000000000”. |
| 78 | Pagos/pago10:Pago/pago10:DoctoRelacionado | ObjetoImpDR | Si este atributo contiene el valor "06" o "08", en el nodo hijo ImpuestosDR del nodo DoctoRelacionado no deben existir los nodos hijo RetencionDR y TrasladoDR con el valor "002" y/o "003" en el atributo ImpuestoDR, puede existir el nodo hijo RetencionDR con el valor "001" en el atributo ImpuestoDR. | CRP20278 | 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). |
| 79 | Pagos/pago10:Pago/pago10:DoctoRelacionado | ObjetoImpDR | Si este atributo contiene el valor “07", en el nodo hijo ImpuestosDR del nodo DoctoRelacionado no deben existir los nodos hijo RetencionDR y TrasladoDR con el valor "002" en el atributo ImpuestoDR; puede existir el nodo RetencionesDR, con al menos un nodo hijo RetencionDR con el valor "001" en el atributo ImpuestoDR; debe existir el nodo hijo TrasladoDR con el valor "003" en el atributo ImpuestoDR y puede existir el nodo hijo RetencionDR con el valor "003" en el atributo ImpuestoDR. | CRP20279 | 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). |
| 80 | Error no clasificado | No clasificado | Error no clasificado. | CRP20999 | Error no clasificado. |