Para máquinas
API y agentes de IA
Todo el portal está también en JSON, gratis y sin llave. Estamos probando el pago por consulta para agentes (x402) en red de pruebas; hoy no se cobra nada.
1. Descubrir
/llms.txt describe el sitio para modelos de lenguaje. /api/v1 es el índice de endpoints y /api/v1/openapi.json la especificación.
2. Leer gratis
Sin llave ni cabeceras especiales. Identifica a tu agente en el User-Agent y cita "Observatorio CFDI, verificado el <fecha de la respuesta>".
3. Pago por consulta (en pruebas, sin cobro)
Aún no está activo en este despliegue. Detalle.
Endpoints gratuitos
| Endpoint | Qué regresa |
|---|---|
GET /api/v1 | Índice del API: endpoints, niveles de acceso y cómo funciona el pago por consulta (en pruebas, sin cobro). |
GET /api/v1/pacs | Los 49 PAC de la lista oficial del SAT y el facturador del SAT: segmento, API conocida, participación de mercado, autorización vigente o revocada y estado actual del servicio gratuito. |
GET /api/v1/pacs/{slug} | Ficha de un proveedor: perfil verificado, fuentes, participación de mercado y estado actual. |
GET /api/v1/estado | Estado actual del servicio gratuito de todos los proveedores (última corrida). |
GET /api/v1/mercado | El mercado en cifras oficiales del SAT: totales, los 10 primeros por facturas y por contribuyentes, bajas recientes y fecha de corte. |
GET /api/v1/costos | Precios públicos del timbrado en México (PAC, revendedores y SAT), cada uno con fuente y fecha. |
curl -s https://observatoriocfdi.com/api/v1/mercado | jq '.top.facturas[0:3]' curl -s https://observatoriocfdi.com/api/v1/pacs/sw-sapien-smartweb | jq '.mercado'
Pago por consulta (x402): en pruebas, sin cobro
x402 todavía no está activado en este despliegue: estos endpoints responden
503 con instrucciones. La red prevista es Base Sepolia (pruebas).| Endpoint | Qué regresa | Monto de prueba (USDC) |
|---|---|---|
GET /api/v1/premium/mercado/series | Series completas 2011–hoy de facturas y contribuyentes de todos los PAC de la estadística del SAT, con participación, posición y crecimiento por año. | $0.02 |
GET /api/v1/premium/pacs/{slug}/historial | Historial completo de verificaciones de un proveedor: fecha, código, detalle y latencia. Por páginas, de la más reciente a la más antigua (?limite= hasta 5000, ?antesDe=<fecha>). | $0.01 |
GET /api/v1/premium/benchmark | Benchmark completo: disponibilidad, latencia mediana, rachas, participación de mercado y ranking de todos los proveedores. | $0.05 |
Cómo funcionará el pago
- Pides el endpoint sin pagar. Recibes
402 Payment Requiredcon la cabeceraPAYMENT-REQUIRED: monto, red, activo (USDC) y dirección de cobro. - Tu cliente firma el pago con su wallet y repite la petición con la cabecera
PAYMENT-SIGNATURE. - Verificamos con el facilitador y respondemos. Solo se liquida el pago si la respuesta fue exitosa.
Con el cliente oficial en TypeScript el flujo es automático:
import { wrapFetchWithPayment } from "@x402/fetch";
// tu firmante (viem/ethers) con USDC en la red indicada
const fetchConPago = wrapFetchWithPayment(fetch, cliente);
const r = await fetchConPago("https://observatoriocfdi.com/api/v1/premium/mercado/series");
const series = await r.json();Reglas de la casa
- Los datos gratuitos pueden citarse y redistribuirse indicando la fuente y la fecha de verificación que trae cada respuesta.
- Nunca inferimos ni rellenamos: un campo
nullsignifica "pendiente de verificar", no cero. - Los PAC pueden corregir su ficha enviando la fuente a contacto@observatoriocfdi.com. Ver metodología.