/ Arquitectura técnica
Cómo BlockVault implementa x402.
De respuesta HTTP 402 a pago liquidado en menos de 3 segundos. Recorrido técnico por la arquitectura del cliente x402 de BlockVault.
/ Pipeline: x402Fetch → Handler → Selection → Approval → Payload → Signer → Retry
Visión general de la arquitectura
El subsistema x402 es un pipeline: x402Fetch intercepta 402 → PaymentHandler parsea requisitos → SelectionLogic elige EIP-3009 o Permit2 → ApprovalQueue muestra el modal → PayloadBuilder construye los datos EIP-712 → Signer firma → RetryEngine reenvía con payment-signature.
Selección del método de pago
BlockVault prioriza EIP-3009 siempre que: (1) el token sea USDC, (2) la cadena soporte transferWithAuthorization, y (3) el facilitador lo acepte. Si no, recurre a Permit2.
UX de aprobación
Cada pago x402 pasa por la cola de aprobación. La cola agrupa solicitudes rápidas, aplica políticas de gasto y presenta un modal de confirmación con: dominio receptor, importe, token, cadena y gasto acumulado.
Cola y políticas
Las políticas se ejecutan localmente antes de firmar: tope diario por dominio, máximo por solicitud, lista de tokens permitidos y restricciones de horario. Si una solicitud excede la política, se rechaza sin molestarte.
Reintento y errores
Tras la firma, x402Fetch reenvía la request original con el header payment-signature. Si el servidor devuelve error (fondos insuficientes, nonce expirado, red incorrecta), la wallet muestra un mensaje claro y no reintenta automáticamente.
/ Usage example
// x402Fetch is a drop-in replacement for fetch()
import { x402Fetch } from '@blockvault/x402'
const response = await x402Fetch('https://api.example.com/data', {
method: 'GET',
// If server returns 402, the wallet handles payment automatically
// EIP-3009 is preferred when token is USDC
})
// response is the final 200 OK with paid content
const data = await response.json()Última actualización: