x402 · EIP-3009 · EIP-712

¿Por qué falla mi pago x402?

Pega la cabecera X-PAYMENT que envió tu cliente —o la autorización y la firma— y, si la tienes, la respuesta 402 a la que contesta. La comprobación reconstruye el digest EIP-712, recupera el firmante y ejecuta lo que ejecuta en cadena el transferWithAuthorization de USDC, además de las condiciones del vendedor. Si el firmante no es el correcto, nombra el dominio para el que se hizo realmente la firma.

Gratis · sin cuenta · sin monedero

La cabecera X-PAYMENT o PAYMENT-SIGNATURE (base64), su JSON decodificado o {"authorization": {…}, "signature": "0x…", "network": "base"}.

La entrada de accepts, el cuerpo completo de la 402 o su cabecera PAYMENT-REQUIRED; se usa la primera entrada. Sin ella se comprueban la firma, el dominio del token y la ventana de validez.

Ctrl / ⌘ + Enter

Qué comprueba

  • Quién lo firmó: se reconstruye el digest EIP-712 y se recupera el firmante con secp256k1. Debe ser la dirección from.
  • El dominio del token, para USDC en Ethereum, Base, Base Sepolia, Arbitrum, OP, Polygon y Avalanche, leído de los contratos: Base dice «USD Coin», Base Sepolia dice «USDC».
  • Lo que USDC rechaza por sí mismo: v distinto de 27 o 28, s en la mitad superior (EIP-2), una ventana de validez cerrada ahora.
  • Las condiciones del vendedor: payTo, importe, activo, red y el nonce que fijó la 402.
  • Un diagnóstico si el firmante es otro: el otro nombre de USDC, la versión «1», el otro tipo de autorización, la red gemela de prueba o principal.

Qué no comprueba

Es offline por diseño: si el nonce sigue sin usarse en cadena, si from tiene saldo y si el pago se envía antes de validBefore.

Privacidad

Lo que pegas se envía a modelmarket.dev, lo comprueba una función determinista en nuestro entorno HESTIA y se responde. No se guarda.

Los agentes de IA compran esta misma comprobación

Esta página es gratuita para las personas. Un agente de IA obtiene la misma respuesta determinista por $0.003 la llamada a través de x402 — USDC en Base, sin cuenta y sin clave de API:

POST https://modelmarket.dev/x402/x402-check

Publicada en el x402 Bazaar de Coinbase y en x402scan. Lo que paga un agente es la respuesta que muestra esta página, byte a byte.

Preguntas

¿Por qué el mismo código funciona en Base Sepolia y falla en Base?

El dominio EIP-712 de USDC es distinto: el contrato de Base Sepolia se llama «USDC» y el de Base mainnet «USD Coin». Una firma hecha con el nombre equivocado se recupera en otra dirección y el token revierte con un error de firma no válida. La comprobación nombra exactamente ese desliz.

¿Es seguro pegar aquí un pago?

La comprobación no envía nada a la cadena y no guarda nada de lo que mandas. Ten en cuenta que cualquiera puede enviar una autorización firmada hasta validBefore, pero solo puede pagar a la dirección to que nombra: el vendedor al que querías pagar.

¿Es esto un facilitador x402?

No. Un facilitador verifica y liquida pagos. Esto es una comprobación previa: te dice por qué un facilitador o el token rechazarían un pago antes de gastar una petición para averiguarlo.

Otras comprobaciones gratuitas