Saltar al contenido

Monitoreo de pagos en USDT / USDC mediante JSON-RPC

Usa el JSON-RPC de BlockVectra para monitorear transferencias entrantes de USDT y USDC mediante sondeo eth_getLogs, con suscripciones WebSocket disponibles en cadenas compatibles.

Cadenas admitidas

Capacidades de red publicadas en GET /v1/chains.

CadenaMecanismo admitido
Arbitrum OneSondeo HTTP (eth_getLogs)
BaseSondeo HTTP (eth_getLogs)
BNB Smart ChainSondeo HTTP (eth_getLogs)
EthereumSondeo HTTP (eth_getLogs)
HyperEVMSondeo HTTP (eth_getLogs)
PolygonSondeo HTTP (eth_getLogs)
Robinhood ChainSondeo HTTP y WebSocket

Tres pasos para aceptar pagos

1. Obtener una API key

Crea una API key mediante el registro programático(en inglés) con firma de billetera Ethereum, o inicia sesión en la consola para generarla.

2. Sondear eventos Transfer

Construye un filtro eth_getLogs con la dirección del contrato del token, el topic0 de Transfer y tu dirección de recepción rellenada a 32 bytes con ceros. Avanza el cursor en lotes dentro del límite de rango de bloques de la cadena (típicamente 1,000 bloques). Consulta la guía de filtros Transfer(en inglés) y la guía de sondeo por cursor(en inglés).

3. Confirmar profundidad y acreditar pago

Consulta hasta safe_head = current_head - CONFIRMATION_DEPTH para protegerte contra reorganizaciones de cadena. Comprueba que log.removed no sea true y asegura la idempotencia con (transactionHash, logIndex) antes de acreditar saldo. Consulta la guía de reorganizaciones(en inglés) y la guía de deduplicación(en inglés).

Ejemplo de solicitud eth_getLogs

Llamada estándar JSON-RPC coherente con la guía de pagos en stablecoins:

curl -s -X POST https://api.blockvectra.com/v1/bsc_mainnet \
  -H "content-type: application/json" \
  -H "x-api-key: $BLOCKVECTRA_API_KEY" \
  -d '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "eth_getLogs",
    "params": [
      {
        "address": "0x55d398326f99059fF775485246999027B3197955",
        "fromBlock": "0x28a0000",
        "toBlock": "0x28a03e7",
        "topics": [
          "0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef",
          null,
          "0x000000000000000000000000<your-receiving-address>"
        ]
      }
    ]
  }'

Precios y reglas de facturación

Peso del método eth_getLogs: 30 CU ($3.00 por 1,000,000 de solicitudes).

Las solicitudes rechazadas por el servicio (como rango de bloques excesivo o límite de tasa) no se facturan (billed: false). Consulta la guía de facturación(en inglés) o la tabla de precios completa.

Comenzar monitoreo