Suivi des paiements en USDT / USDC via JSON-RPC
Utilisez le JSON-RPC de BlockVectra pour suivre les transferts entrants en USDT et USDC par scrutation eth_getLogs, avec abonnements WebSocket disponibles sur les chaînes compatibles.
Chaînes prises en charge
Capacités réseau publiées dans GET /v1/chains.
| Chaîne | Mécanisme pris en charge |
|---|---|
| Arbitrum One | Scrutation HTTP (eth_getLogs) |
| Base | Scrutation HTTP (eth_getLogs) |
| BNB Smart Chain | Scrutation HTTP (eth_getLogs) |
| Ethereum | Scrutation HTTP (eth_getLogs) |
| HyperEVM | Scrutation HTTP (eth_getLogs) |
| Polygon | Scrutation HTTP (eth_getLogs) |
| Robinhood Chain | Scrutation HTTP et WebSocket |
Trois étapes pour accepter les paiements
1. Obtenir une API key
Créez une API key via l'inscription programmatique(en anglais) avec signature de portefeuille Ethereum, ou connectez-vous à la console pour en générer une.
2. Scruter les événements Transfer
Construisez un filtre eth_getLogs avec l'adresse du contrat de token, le topic0 Transfer et votre adresse de réception complétée de zéros sur 32 octets. Avancez le curseur par lots dans la limite de blocs de la chaîne (généralement 1,000 blocs). Consultez le guide de filtrage Transfer(en anglais) et le guide de scrutation par curseur(en anglais).
3. Confirmer la profondeur et créditer le paiement
Interrogez jusqu'à safe_head = current_head - CONFIRMATION_DEPTH pour vous protéger contre les réorganisations de chaîne. Vérifiez que log.removed n'est pas true et assurez l'idempotence via (transactionHash, logIndex) avant de créditer le compte. Consultez le guide de réorganisation(en anglais) et le guide de déduplication(en anglais).
Exemple de requête eth_getLogs
Requête standard JSON-RPC conforme au guide pratique des paiements 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>"
]
}
]
}'Tarification et règles de facturation
Poids de méthode eth_getLogs : 30 CU ($3.00 pour 1,000,000 de requêtes).
Les requêtes rejetées par le service (intervalle de blocs dépassé ou limitation de débit) ne sont pas facturées (billed: false). Consultez le guide de facturation(en anglais) ou la grille tarifaire complète.