Fiscalapi

Validación CFDI: certeza fiscal
sobre cada factura que recibe tu empresa

Verifica estructura, sellos digitales, vigencia del certificado, estatus en el SAT y listas 69-B de cualquier XML timbrado antes de registrarlo, pagarlo o deducirlo. Una llamada a la API, siete criterios oficiales del SAT, un veredicto por criterio.

Un CFDI timbrado no es, por sí mismo, un CFDI deducible.

Un comprobante puede tener un timbre válido y aun así carecer de efectos fiscales: porque el emisor fue publicado como definitivo en el listado 69-B, porque el comprobante fue cancelado después de entregado, porque el certificado con el que se selló ya había vencido, o porque el XML fue alterado después de firmarse. Ninguna de esas condiciones es visible en el PDF que llega a cuentas por pagar.

Los siete criterios del SAT, un solo endpoint.

Cada validación se solicita por su identificador, se ejecuta contra las fuentes oficiales del SAT y devuelve un estado con su descripción y un resultado/veredicto binario. Tú eliges cuáles ejecutar; la respuesta explica cada veredicto.

Estructura del XML

sat.xml.structure

Confirma que el documento cumple el Anexo 20 de su versión y los complementos declarados. Descarta XML mal formados, truncados o con valores fuera de catálogo antes de que entren a tu ERP.

Vigencia del certificado del emisor

sat.certificate.validity

Comprueba que el CFDI fue emitido dentro del periodo de validez del certificado de sello digital. Un comprobante firmado con un certificado vencido no es válido aunque el sello verifique.

Sello del emisor

sat.cfdi.sello

Verifica que el sello corresponda al contenido y al certificado del emisor. Garantiza que el XML que recibiste no se modificó desde que se firmó.

Sello del SAT

sat.tfd.sello

Verifica que el Timbre Fiscal Digital fue emitido por el SAT a través de un PAC autorizado y no fue fabricado ni modificado.

Estatus en el SAT

sat.cfdi.status

Consulta el estado actual del comprobante (vigente, cancelado, no encontrado). Es la única forma de detectar cancelaciones posteriores a la entrega.

Listado 69-B (EFOS)

sat.blacklist.69b

Identifica si el emisor está publicado como Empresa que Facturan Operaciones Simuladas (EFOS), con oficio y fechas de publicación en portal SAT y DOF.

Listado 69-B Bis

sat.blacklist.69bbis

Identifica emisores publicados por transmisión indebida de pérdidas fiscales. Relevante en operaciones con partes relacionadas y reestructuras corporativas.

El catálogo es público y versionado: GET /api/v4/sat-validations devuelve los criterios disponibles con su descripción, para que tu integración no dependa de documentación externa.

Integración en tres pasos.

Sin configuración previa, sin cargar catálogos ni listas del SAT.

  1. 1

    Envía el XML

    Un POST /api/v4/sat-validations con el comprobante en base64 y la lista de criterios a ejecutar. Si solo necesitas consultar los listados 69-B y 69-B Bis, basta con enviar el RFC.

  2. 2

    Recibe un veredicto por criterio

    Cada validación regresa type, status y passed. La descripción del estado incluye los hechos que lo sustentan: oficio, fechas de publicación, número de certificado, respuesta del SAT.

  3. 3

    Decide con evidencia

    Bloquea el registro, condiciona el pago o abre una revisión con el proveedor, y conserva la respuesta como soporte de auditoría.

Simula la petición y mira la respuesta.

Valida solo lo que tu operación necesita: dos criterios para filtrar proveedores en listas negras, los siete para autorizar un pago. El costo cambia con lo que marcas.

POST https://test.fiscalapi.com/api/v4/sat-validations200 OKJSON

Cuerpo de la petición

El CFDI completo en base64. Admite los siete criterios.

validationTypes
1 criterio · 1 crédito$0.50

Un crédito por criterio validado. Una respuesta http 400 no consume créditos.

sat.xml.structure

Cada resultado trae passed, un booleano que indica si ese criterio se cumplió: true lo cumple, false no.

{
  "data": [
    {
      "type": {
        "id": "sat.xml.structure",
        "description": "Verifica mediante el servicio oficial de verificación de CFDI del SAT que el XML sea un documento bien formado y cumpla la estructura del Anexo 20 de su versión y la de los complementos declarados en schemaLocation. Detecta atributos obligatorios ausentes, valores fuera de catálogo y patrones inválidos."
      },
      "status": {
        "id": "Valido",
        "description": "Documento bien formado que cumple el XSD del Anexo 20 de su versión y los XSD de los complementos declarados en schemaLocation, según el verificador del SAT.",
        "details": null
      },
      "passed": true
    }
  ],
  "succeeded": true,
  "message": "",
  "details": "",
  "httpStatusCode": 200
}

Ejemplo con datos fijos: un comprobante que verifica en todo y aun así no produce efectos fiscales, porque el emisor está en el listado 69-B definitivo. Disponible en los SDK oficiales para .NET, TypeScript/Node, Python, PHP y Java, con sandbox de pruebas sin costo.

Para quién es la validación CFDI

Un mismo veredicto sirve a finanzas, compras, compliance e ingeniería.

Cuentas por pagar y procurement

Validar antes de pagar. Cada CFDI de proveedor se verifica al recibirse y el resultado acompaña la orden de pago; los comprobantes de emisores en lista definitiva se detienen antes de generar un pasivo fiscal.

Cadena de suministro y compliance de proveedores

Monitoreo continuo de tu base de proveedores contra los listados 69-B y 69-B Bis, con fechas de publicación para computar plazos legales y documentar la diligencia debida.

Tech leads y arquitectos

Un endpoint, un contrato de respuesta estable y un catálogo consultable. Sin mantener listas del SAT, sin parsear el DOF, sin implementar la verificación criptográfica de sellos y certificados.

Dirección financiera y fiscal

Evidencia por comprobante para sustentar deducciones y acreditamientos ante una revisión, y visibilidad temprana del riesgo por proveedor.

Por qué Fiscalapi

  • Fuentes oficiales, no aproximaciones

    Estructura y sellos mediante los servicios de verificación del SAT; estatus mediante el servicio de consulta del SAT; listados 69-B y 69-B Bis tomados de las publicaciones oficiales, con fecha de corte en cada respuesta.

  • Una plataforma para el ciclo completo del CFDI

    Emisión, descarga masiva y ahora validación con la misma cuenta, las mismas credenciales y los mismos SDK.

  • Diseñado para integrarse, no para consultarse a mano

    Contrato de respuesta fijo, identificadores estables y catálogo público; apto para procesos batch de cierre y para validación en línea al recibir.

  • Evidencia auditable

    Cada veredicto incluye la descripción del estado con los datos que lo fundamentan, lista para archivarse junto al comprobante.

Cada criterio validado cuesta $0.50 MXN IVA incluido. Consulta mas detalles.

Preguntas frecuentes sobre la validación de CFDI

¿Qué diferencia hay entre validar un CFDI y timbrarlo?

El timbrado certifica un comprobante en el momento de su emisión. La validación verifica, en cualquier momento posterior, que el XML sigue siendo íntegro, vigente y fiscalmente efectivo: sellos, certificado, estatus en el SAT y situación del emisor en los listados del artículo 69-B.

¿Un CFDI de un emisor en el listado 69-B definitivo sigue siendo válido?

No produce efectos fiscales. El artículo 69-B del CFF establece que, publicado el listado definitivo, los comprobantes del emisor se consideran, con efectos generales, sin efecto fiscal alguno, y otorga al receptor 30 días hábiles para acreditar la materialidad de la operación o corregir su situación.

¿Con qué frecuencia se actualizan los listados 69-B y 69-B Bis?

Fiscalapi incorpora cada publicación oficial del SAT y devuelve la fecha de corte del listado en cada respuesta, de modo que tu sistema conoce la vigencia de la información con la que decide.

¿Puedo validar solo algunos criterios?

Sí. El request indica qué validaciones ejecutar y el catálogo completo se consulta en GET /api/v4/sat-validations. Para los listados 69-B y 69-B Bis puedes enviar únicamente el RFC del emisor, sin XML.

¿La validación modifica o almacena mi XML?

No. El comprobante se procesa únicamente para emitir el veredicto: no se altera y no se almacena ni el XML ni la respuesta durante la petición. Conservar el resultado como evidencia queda en manos de tu sistema.

Da el siguiente paso

Valida tu primer CFDI hoy.

Crea una cuenta de sandbox, envía un XML y recibe el veredicto de los siete criterios en segundos. Sin contrato, sin configuración.