SiteCheck
29 herramientas de agente de pago por llamada (página web a Markdown, PDF a texto, stack tecnológico, verificación de correo, RDAP de dominio, Solana, KYB), pagadas por llamada en USDC vía x402.
Servidor MCP alojado
npx add-mcp 'https://api.sitecheck-api.workers.dev/mcp'Se instala en Claude Code, Codex, Cursor y más
Documentación
SiteCheck: herramientas de pago por llamada para agentes de IA (x402 en Base, Solana y Arc)
En vivo: https://api.sitecheck-api.workers.dev · listado en x402scan · descubrimiento: /.well-known/x402, /openapi.json
SiteCheck es una API pequeña que los agentes de IA pueden usar sin cuenta ni clave de API: 29 herramientas de pago por llamada en total. Además de sus herramientas de IA y web (incluyendo un lector de páginas web a Markdown), ofrece conversión de PDF a texto, traducción, detección de stack tecnológico, URLs de sitemaps, tipos de cambio, correo electrónico, datos de dominios y de tokens y wallets de Solana, datos de negocio y cumplimiento (IVA de la UE, IBAN, LEI, retiros de productos en EE. UU., acciones de cumplimiento de OSHA/EPA, avisos de insolvencia en el Reino Unido), datos de mercados de predicción y transacciones comerciales sin firmar impulsadas por Panta. Cada llamada se paga por solicitud en USDC con el protocolo x402, en Base, Solana o Arc (la L1 de Circle), según la red donde el comprador tenga USDC. Haz la llamada, obtén un 402 Payment Required con el precio en cada red, firma el pago y recibe el resultado. Se ejecuta en Cloudflare Workers y Workers AI.
| Endpoint | Precio | Qué hace |
|---|---|---|
GET /api/audit?url= | $0.02 | Auditoría de sitio web: problemas de accesibilidad WCAG 2.2 con correcciones y una puntuación (Ley Europea de Accesibilidad), conceptos básicos de SEO, cabeceras de seguridad, stack tecnológico |
GET /api/contacts?url= | $0.01 | Enriquecimiento de contactos de empresa desde un dominio: correos, teléfonos, redes sociales, tecnología |
GET /api/hiring?q=&remote= | $0.01 | Busca en el hilo actual de "Who is hiring?" de Hacker News |
POST /api/chat | $0.004 | Completado de chat con Llama 3.3 70B |
POST /api/image | $0.005 | Texto a imagen con FLUX.1 schnell |
POST /api/transcribe | $0.01 | Voz a texto con Whisper large-v3-turbo |
POST /api/tts | $0.02 | Texto a voz con Deepgram Aura-2 |
POST /api/embed | $0.001 | Embeddings BGE-M3 (1024-d, multilingüe) |
GET /api/vat?number= | $0.002 | Verificación de número de IVA de la UE: formato y suma de verificación localmente, luego el servicio oficial VIES (27 estados de la UE + Irlanda del Norte) |
GET /api/iban?iban= | $0.001 | Validación de IBAN sin llamada de red: estructura y longitud del registro, mod-97, dígitos de verificación nacionales, división banco/sucursal/cuenta; ibans= para hasta 50 |
GET /api/lei?q= | $0.005 | Búsqueda GLEIF por LEI o nombre de empresa: estado, registro, matrices, filiales, kycSummary de una línea |
GET /api/recalls?q=&source=&since=&classification=&limit= | $0.003 | Retiros de productos en EE. UU. de openFDA y CPSC en un solo esquema, con severidad alta/media/baja |
GET /api/violations?company=&state=&since=&minPenalty=&source=&limit= | $0.005 | Casos de cumplimiento en EE. UU.: OSHA (API del DOL, necesita clave en el despliegue) y EPA ECHO, con enlaces a registros oficiales |
GET /api/uk-insolvency?since=&q=&postcode=&type=&limit= | $0.003 | Avisos de insolvencia de empresas del Reino Unido de The Gazette (nuestra caché nocturna de los últimos 8 días), enriquecimiento opcional con Companies House |
GET /api/read?url=&format=&maxChars=&links= | $0.002 | Una página web como Markdown limpio o texto para un LLM: solo contenido principal, título, descripción, autor, fecha, idioma, canónica; se respeta robots.txt |
GET /api/email-check?email= | $0.001 | Pre-verificación de correo sin SMTP: sintaxis, DNS de correo, dominio desechable, cuenta de rol, proveedor gratuito, sugerencia de errores tipográficos; emails= para hasta 50 |
GET /api/domain?domain= | $0.002 | RDAP (sucesor de WHOIS) y DNS: registrado o disponible, registrador, fechas de creación/expiración, estado, DNSSEC, servidores de nombres, IPs, MX |
GET /api/solana/token?address= | $0.002 | Verificación de token de Solana: precio, capitalización de mercado, liquidez, tenedores, trading en 24h, puntuación orgánica, participación de los principales tenedores, autoridad de acuñación/congelación en cadena y extensiones Token-2022, señales de alerta |
GET /api/solana/trending?mode=&interval=&minLiquidityUsd= | $0.003 | Tokens de Solana en tendencia, nuevos, más negociados o más orgánicos con los mismos campos y señales |
GET /api/solana/wallet?address= | $0.003 | Tenencias de wallet de Solana: SOL y cada token con símbolo, precio y valor en USD, total en USD |
GET /api/tech?url= | $0.003 | Detección de tecnología de sitio web (CMS, comercio electrónico, analítica, CDN, hosting, chat, pagos, proveedor de correo) con versión, confianza y evidencia |
POST /api/pdf | $0.003 | PDF a texto por URL o base64 (hasta 15 MB), página por página, con título, autor y fechas; solo PDFs de texto |
GET /api/sitemap?url=&pathPrefix=&since= | $0.002 | Cada URL en los sitemaps XML de un sitio con lastmod, más recientes primero |
GET /api/fx?from=&to=&amount=&date= | $0.001 | Tipos de cambio del BCE (últimos, una fecha pasada o una serie temporal) con conversión de importes |
POST /api/translate | $0.002 | Traducción con Llama 3.1 8B, hasta 6.000 caracteres, formato conservado |
Mercados de predicción (Panta)
Los agentes pueden comprar inteligencia de mercado y transacciones comerciales listas para firmar por llamada, sin cuenta y sin clave de API. Un agente que investiga un evento paga una fracción de céntimo para encontrar los mercados y un céntimo por las probabilidades de un mercado y un informe breve neutral. Un agente que quiere actuar paga por una transacción de compra sin firmar de Panta y la firma con su propia wallet. Panta ejecuta mercados de predicción en USDC en Solana.
| Endpoint | Precio | Qué hace |
|---|---|---|
GET /api/markets?q=&status=&category=&limit= | $0.002 | Busca en los mercados de Panta. Filas compactas: id, pregunta, precios SÍ/NO y probabilidades implícitas, volumen, tiempos de cierre y resolución, fuente de resolución |
GET /api/markets/brief?id= | $0.01 | Un mercado: probabilidades actuales, actividad comercial reciente y un resumen breve de IA neutral sobre qué pregunta, qué lo resuelve y qué implica el precio |
POST /api/markets/quote | $0.005 | Cuerpo { id, side: "yes"|"no", amountUsdc, wallet }. Cotización de Panta: acciones esperadas, precio medio, comisión e impacto en el precio frente al precio al contado |
POST /api/markets/build-buy | $0.01 | Mismo cuerpo, más un maxSlippageBps opcional. Devuelve la transacción sin firmar (Solana v0, base64) y las instrucciones de Panta para que el agente la firme y la transmita él mismo, además de los campos para el informe de la operación |
POST /api/markets/report | gratis | Después de transmitir, envía { signature, orderId, quoteId, id, wallet }. SiteCheck lo reenvía a Panta, que confirma y atribuye la operación |
- Sin custodia. SiteCheck nunca firma, guarda claves ni custodia fondos.
build-buydevuelve una transacción sin firmar cuyo único firmante es la wallet del agente. - Solo información, no asesoramiento financiero. Cada respuesta lo indica (
disclaimer), y el informe breve nunca recomienda una operación. Si el texto del modelo parece asesoramiento, se devuelve una plantilla factual en su lugar. - Impulsado por Panta. Cada respuesta lleva
poweredBy: { text: "Powered by Panta", url: "https://panta.market" }, como exigen los Términos de Uso de Panta. - Paga solo por resultados, como con cada herramienta: si Panta rechaza o falla, la llamada devuelve un error y no se liquida nada. El catálogo se almacena en caché durante 45 segundos y los precios durante 15 segundos, y las respuestas indican la antigüedad de sus datos.
- Las herramientas solo están activas cuando el secreto
PANTA_API_KEYestá configurado. De lo contrario, están ocultas yGET /healthexplica por qué. Endpoints, formas, atribución y preguntas abiertas: docs/PANTA.md.
node scripts/demo-markets.mjs --q bitcoin # search, brief and quote, paid on Solana (~0.017 USDC)
node scripts/demo-markets.mjs --q bitcoin --build # also builds the unsigned transaction (+0.01); never signs or sends it
Datos web, documentos, correo, dominios y Solana
| Herramienta | Fuente | Notas |
|---|---|---|
/api/read | La propia página, obtenida una vez con el User-Agent SiteCheckReader | Se respeta robots.txt (una página no permitida responde 403 y no se cobra). No se ejecuta JavaScript, por lo que las páginas que solo se renderizan en el navegador devuelven vacío (422, sin cobro). Los PDFs y otros archivos binarios responden 415. El contenido pertenece a su editor. |
/api/email-check | DNS sobre HTTPS (Cloudflare, Google) y la lista disposable-email-domains (CC0) | No se realiza ninguna conexión SMTP: unknown significa que no hay nada malo con la dirección o su dominio, no que la bandeja de entrada exista. |
/api/domain | El bootstrap RDAP de IANA y el servidor RDAP de cada registro; DNS sobre HTTPS | available significa que el registro no tiene constancia; los nombres premium o reservados pueden seguir sin estar disponibles para comprar. Los TLD sin RDAP se infieren del DNS. |
/api/solana/token, /api/solana/trending, /api/solana/wallet | APIs de token, precio y tenencias de Jupiter, JSON-RPC de mainnet de Solana (cuenta de acuñación), GeckoTerminal para pools (mejor esfuerzo) | Solo información, no asesoramiento financiero. Nada se firma ni se envía. La autoridad de acuñación y congelación en cadena prevalece sobre la auditoría de la API cuando ambas están disponibles. |
/api/tech | La página de inicio del sitio, cabeceras, cookies y DNS (MX, TXT); 231 huellas propias (MIT, no derivadas de Wappalyzer) | No se ejecuta JavaScript; un sitio detrás de un desafío de bot devuelve lo que muestran sus cabeceras y DNS. |
/api/pdf | La capa de texto del PDF, leída con unpdf (PDF.js) | Sin OCR: un PDF escaneado responde 422 y no se cobra. |
/api/sitemap | El robots.txt del sitio y los sitemaps XML | Los índices se siguen hasta 25 sitemaps hijos por llamada. |
/api/fx | Tipos de referencia del Banco Central Europeo vía Frankfurter | Publicados en días laborables alrededor de las 16:00 CET; los fines de semana devuelven el último día publicado. |
/api/translate | Workers AI @cf/meta/llama-3.1-8b-instruct-fast | Traducción automática: revisa textos importantes. |
Datos de negocio y cumplimiento
Seis herramientas para un agente que debe verificar una contraparte antes de operar con ella. Todas leen fuentes oficiales gratuitas (o nuestra propia caché de una de ellas), no necesitan clave del llamante y siguen la misma regla que todas las rutas aquí: una llamada que falla (entrada incorrecta, proveedor caído, tiempo de espera agotado) devuelve 4xx/5xx y no se liquida, por lo que el comprador no paga.
| Herramienta | Fuente | Términos |
|---|---|---|
/api/vat | API REST VIES de la Comisión Europea | Servicio público de la Comisión. Un estado miembro que está caído da HTTP 503 con un viesStatus como MS_UNAVAILABLE, por lo que una respuesta desconocida nunca se informa como "inválida". Algunos estados (p. ej. DE, ES) confirman la validez pero no revelan nombre y dirección: esos campos son null. |
/api/iban | Calculado localmente desde la estructura del registro IBAN de SWIFT (versión 101) | Sin red, sin búsqueda de nombre de banco o BIC (no se incluye ningún conjunto de datos abierto; la respuesta dice bankLookup: false). Los dígitos de verificación nacionales se aplican solo donde existe un algoritmo público (FR, ES, IT, BE, NL para ABNA/INGB/RABO, NO, FI, PL, PT, RS, ME, MK, XK, SI); otros países informan not-available. Alemania no tiene un algoritmo nacional general. |
/api/lei | Índice Global LEI de GLEIF | Dominio público CC0. Sin clave. |
/api/recalls | Informes de cumplimiento de openFDA (alimentos, medicamentos, dispositivos) y la API de retiros SaferProducts.gov de CPSC | Los datos de openFDA son de dominio público según sus términos de uso (no para decisiones médicas). CPSC no clasifica los retiros: su severidad se deriva del texto de peligro, la Clase I/II/III de la FDA se asigna a alta/media/baja. |
/api/violations | Data API v4 del Departamento de Trabajo de EE. UU. (OSHA) y EPA ECHO | Obras del gobierno de EE. UU. OSHA necesita el secreto opcional DOL_API_KEY: sin él, la ruta devuelve solo EPA y dice que OSHA está desactivada. Los registros se emparejan por nombre y muestran inspecciones y casos, no culpabilidad. |
/api/uk-insolvency | The Gazette, a través de nuestra propia caché nocturna (gazette-cache.sitecheck-api.workers.dev, últimos 8 días del Reino Unido). The Gazette nunca se llama directamente. | Licencia de Gobierno Abierto v3.0. Las respuestas llevan el dataTimestamp de la caché y cualquier missingDays. Enriquecimiento opcional con Companies House (estado, fecha de constitución, códigos SIC, dirección; como máximo 10 filas por llamada) cuando COMPANIES_HOUSE_API_KEY está configurado. |
Se respetan los límites de Workers: cada llamada ascendente tiene un tiempo de espera (como máximo 10 s) y un User-Agent SiteCheck/1.x, cada herramienta se mantiene muy por debajo de 50 sub-solicitudes, y nada grande se analiza por solicitud (el texto de The Gazette se escanea y solo se analizan los avisos coincidentes). Las respuestas estables de los proveedores se almacenan en caché con la API de caché donde funciona.
curl -s "https://api.sitecheck-api.workers.dev/api/vat?number=DE811907980" # 402 first: pay with any x402 client
Servidor MCP
https://api.sitecheck-api.workers.dev/mcp es un servidor MCP remoto (HTTP Streamable, sin estado, respuestas JSON). Cada endpoint de pago es una herramienta MCP con el mismo esquema de entrada (read, pdf, tech, email_check, domain, solana_token, vat, lei, ...), y el mismo precio.
El pago utiliza el transporte MCP x402: una tools/call sin pago devuelve isError con el objeto x402 PaymentRequired en structuredContent; el cliente firma una opción y repite la llamada con el PaymentPayload en params._meta["x402/payment"]; la respuesta incluye la liquidación en result._meta["x402/payment-response"]. Una llamada a herramienta que falla no se liquida. Cada llamada se reproduce dentro del Worker contra la ruta /api correspondiente, de modo que los compradores de MCP y HTTP pasan por los mismos controles de pago.
import { createx402MCPClient } from "@x402/mcp";
import { ExactEvmScheme } from "@x402/evm/exact/client";
import { StreamableHTTPClientTransport } from "@modelcontextprotocol/sdk/client/streamableHttp.js";
const client = createx402MCPClient({
name: "my-agent", version: "1.0.0",
schemes: [{ network: "eip155:8453", client: new ExactEvmScheme(account) }], // a viem account holding USDC on Base
autoPayment: true,
});
await client.connect(new StreamableHTTPClientTransport(new URL("https://api.sitecheck-api.workers.dev/mcp")));
const page = await client.callTool("read", { url: "https://docs.x402.org/introduction" }); // pays $0.002
Los clientes MCP sin soporte x402 (por ejemplo, un conector remoto simple) pueden listar las herramientas y ver cada precio, pero una llamada devuelve los requisitos de pago en lugar de un resultado.
Redes
| Red | CAIP-2 | USDC | Facilitador |
|---|---|---|---|
| Base | eip155:8453 | 0x8335…2913 | PayAI |
| Solana | solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp | EPjF…Dt1v | PayAI |
| Arc | eip155:5042 | 0x3600…0000 | Circle Facilitator Service |
El precio es el mismo en todas las redes. Los compradores solo necesitan USDC: los pagos EVM son firmas EIP-3009, y el facilitador paga el gas y las tarifas de Solana. Fuentes y decisiones de diseño: docs/NETWORKS.md.
Pruébalo
curl -si "https://api.sitecheck-api.workers.dev/api/audit?url=example.com" \
| grep -i '^payment-required:' | cut -d' ' -f2 | tr -d '\r' | base64 -d
# {"x402Version":2,"error":"Payment required", ..., "accepts":[{ "network":"eip155:8453", "amount":"20000", ... }, ...]}
Paga con cualquier cliente x402. Base o Arc, con @x402/fetch y una cuenta viem:
import { wrapFetchWithPayment, x402Client } from "@x402/fetch";
import { ExactEvmScheme } from "@x402/evm/exact/client";
import { privateKeyToAccount } from "viem/accounts";
const account = privateKeyToAccount(process.env.EVM_PRIVATE_KEY); // holds a little USDC
const client = x402Client.fromConfig({
schemes: [{ network: "eip155:8453", client: new ExactEvmScheme(account) }], // Arc: "eip155:5042"
// Arc only: its USDC is not in @x402/evm's built-in asset list yet, so opt in (cap: $0.10 per call).
// spendControls: { allowedAssets: [{ network: "eip155:5042", asset: "0x3600000000000000000000000000000000000000", maxAmountPerPayment: "100000" }] },
});
const pay = wrapFetchWithPayment(fetch, client);
const res = await pay("https://api.sitecheck-api.workers.dev/api/audit?url=example.com");
console.log(await res.json());
Solana, con @x402/svm y un firmante @solana/kit:
import { readFileSync } from "node:fs";
import { wrapFetchWithPayment, x402Client } from "@x402/fetch";
import { ExactSvmScheme } from "@x402/svm/exact/client";
import { createKeyPairSignerFromBytes } from "@solana/kit";
const signer = await createKeyPairSignerFromBytes(Uint8Array.from(JSON.parse(readFileSync("buyer.json", "utf8"))));
const client = new x402Client().register("solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp", new ExactSvmScheme(signer));
const pay = wrapFetchWithPayment(fetch, client);
console.log(await (await pay("https://api.sitecheck-api.workers.dev/api/audit?url=example.com")).json());
Cada endpoint declara su esquema de entrada y un ejemplo de salida mediante la extensión de descubrimiento x402 Bazaar, de modo que los agentes puedan encontrarlo y llamarlo sin leer documentación.
Agente de demostración
scripts/demo-agent.mjs descubre la API a través de /.well-known/x402, paga por una auditoría en la red que elijas e imprime el resultado y el enlace de la transacción:
node scripts/demo-agent.mjs --network base # or arc, solana
En la primera ejecución crea una billetera desechable en un archivo ignorado por git (.env.evm para Base y Arc, .env.solana para Solana) e imprime su dirección. Fúndala con unos 0,10 USDC en esa red; una auditoría cuesta 0,02 USDC y no se necesita ETH ni SOL. --dry-run se detiene antes de pagar, y --url lo apunta a otro despliegue.
Notas de diseño
- Paga solo por resultados. La liquidación se ejecuta después del handler. Si un modelo o un servicio upstream falla, el handler devuelve un estado de error y el pago no se liquida, por lo que no se cobra al comprador. Esto se aplica en las tres redes y está cubierto por las pruebas.
- Una ruta, varias redes. Cada ruta lista una entrada x402
acceptspor red configurada. Base y Solana liquidan a través de PayAI. Arc liquida a través del Facilitator Service de Circle en su prueba sin clave: cada solicitud lleva una prueba del vendedor firmada por la clave de la billetera receptora de Arc (ver más abajo). Cada cliente facilitador solo informa las redes que se le asignaron (lib/payments.js). - Middleware x402 seguro para Workers. Un Worker no puede esperar una promesa creada por otra solicitud, y el middleware x402 se inicializa de forma diferida. Cada solicitud construye e inicializa su propio middleware hasta que uno termina; ese se reutiliza entonces (
lib/app.js). - Sin claves en el repositorio. Las direcciones receptoras viven en
wrangler.toml[vars](vacías por defecto). La clave de vendedor de Arc (o, como alternativa, la clave API de Circle) es un secreto del Worker. Los scripts auxiliares mantienen sus billeteras en archivos.env.*ignorados por git.
Arc: la prueba sin clave de Circle y una billetera activa
El Facilitator Service de Circle normalmente necesita una clave API y, en mainnet, eso requiere una cuenta de Circle con una tarjeta de crédito registrada. SiteCheck usa la prueba sin clave de Circle en su lugar. Cada solicitud /verify y /settle lleva un encabezado Facilitator-Seller-Proof: una firma EIP-712 de la clave que controla el payTo de Arc, vinculada a la ruta, al cuerpo exacto de la solicitud y a un nonce nuevo (lib/sellerProof.js, lib/circle.js).
La contrapartida: esa clave tiene que vivir en el Worker, como el secreto ARC_SELLER_KEY. Por lo tanto, el payTo de Arc es una billetera activa dedicada que solo recibe pagos. El propietario la vacía regularmente a una billetera fría (scripts/sweep-arc.mjs), de modo que una clave filtrada expondría como máximo lo que entró desde el último vaciado. El límite de la prueba también es limitado y Circle no lo publica. Cuando se agota, Circle responde 403 registration_required. El pago no se liquida y no se cobra al comprador, el Worker lo registra y GET /health muestra arc.trialExhausted: true. A partir de entonces, Arc necesita una clave API de Circle o debe desactivarse. Detalles: docs/NETWORKS.md.
Ejecuta el tuyo
npm install
npm test # no network needed: the facilitators and Panta are mocked
npx wrangler dev # local
Despliegue: establece account_id y al menos una dirección receptora en wrangler.toml (o pásala con --var). Para Arc, crea primero la billetera activa y guarda su clave:
node scripts/new-arc-wallet.mjs # Arc only: prints the new address; the key goes to .env.arc-seller
npx wrangler secret put ARC_SELLER_KEY # paste the key from .env.arc-seller
npx wrangler secret put PANTA_API_KEY # optional: a pk_live_... key switches the prediction-market tools on
npx wrangler secret put DOL_API_KEY # optional: switches OSHA on in /api/violations
npx wrangler secret put COMPANIES_HOUSE_API_KEY # optional: enriches /api/uk-insolvency rows
npx wrangler deploy
node scripts/sweep-arc.mjs --to 0xYourColdWallet # later, regularly: shows what it would send
node scripts/sweep-arc.mjs --to 0xYourColdWallet --yes # sends it
| Variable | Red | Notas |
|---|---|---|
PAY_TO | Base | dirección EVM |
PAY_TO_SOLANA | Solana | dirección de la billetera; ya debe tener una cuenta de token USDC |
ARC_SELLER_KEY (secreto) | Arc | clave privada de la billetera receptora dedicada de Arc; activa Arc y establece su payTo |
PAY_TO_ARC | Arc | opcional con ARC_SELLER_KEY (si se establece, debe coincidir con la dirección de la clave); sin clave de vendedor, la dirección de Arc para usar con CIRCLE_API_KEY |
CIRCLE_API_KEY (secreto) | Arc | solo alternativa, se usa cuando ARC_SELLER_KEY no está establecido |
FACILITATOR_URL | Base, Solana | por defecto https://facilitator.payai.network |
FACILITATOR_URL_ARC | Arc | por defecto https://api.circle.com/v1/facilitator/x402 |
PANTA_API_KEY (secreto) | todas | activa las herramientas de mercado de predicción: npx wrangler secret put PANTA_API_KEY (ver docs/PANTA.md) |
PANTA_BASE_URL | todas | por defecto https://live-api.panta.market/api/v1 |
DOL_API_KEY (secreto) | todas | opcional: activa OSHA en /api/violations: npx wrangler secret put DOL_API_KEY. Sin él, la ruta es solo EPA |
COMPANIES_HOUSE_API_KEY (secreto) | todas | opcional: enriquecimiento de Companies House en /api/uk-insolvency: npx wrangler secret put COMPANIES_HOUSE_API_KEY |
Deja una dirección vacía para desactivar esa red. GET /health muestra qué redes están activas y por qué las demás no, y si las herramientas de Panta están activadas. Para Arc también muestra el modo de autenticación, la dirección receptora y el estado de la prueba.
Licencia
MIT
Transacciones en mainnet
Liquidaciones x402 reales en las tres redes:
- Solana (nuestra prueba): https://solscan.io/tx/4DQcTjw791d83iUFU7NBbyi3JZxXsvHbNHWgcXb9eeVT4tqReDV4ZFqYanUpJXnGP2ogucsWHqehioJd6Dq1ghDJ
- Base (nuestra prueba): https://basescan.org/tx/0xf4e4a1aeeff698706e49cd921321cda9dba79babefd00b624bdf836fda57beb1
- Arc (nuestra prueba): https://explorer.arc.io/tx/0xb6abceb6108099730c31b00f9140288585a869029bc5c922b88f0df5e8289476
- Base, pagada por un agente de IA externo que no controlamos (una de sus 12 llamadas pagadas hasta ahora): https://basescan.org/tx/0x9e37d0287f04f7c1f89f159f839c0f391230dab6c21aeead58d6a29588239ea9
- Base, pagada por una segunda billetera externa (6 de octubre de 2026): https://basescan.org/tx/0x9d5f1cae2c5016f165eead7dc56f51a3d74a1ea90a06270d4b0ca8bf97d8d211