API de suivi de wallets crypto avec un webhook pour chaque transfert
Surveillez n'importe quelle adresse sur Bitcoin, Ethereum, Solana, Tron, BNB Chain et Polygon. Chaque transfert entrant et sortant de BTC, ETH, SOL, TRX, BNB, POL, USDT et USDC est enregistré et envoyé à votre serveur sous forme de webhook.
- Six blockchains via une API et un format de webhook
- Transferts entrants et sortants de cryptos natives, d'USDT et d'USDC
- Aucuns frais par événement, quelle que soit l'offre
Surveiller des adresses blockchain sans faire tourner de nœud
Un suivi de wallet surveille une adresse blockchain et vous prévient quand de l'argent bouge. LirChain lit chaque nouveau bloc sur six réseaux, repère les transferts qui touchent les adresses que vous suivez et transforme chacun en événement, visible dans le tableau de bord, lisible via l'API ou reçu par webhook.
Vous n'avez pas besoin de la clé privée du wallet, et il n'a pas à être le vôtre : toute adresse publique peut être suivie. Le suivi convient donc pour surveiller votre trésorerie et vos cold wallets, les wallets de vos partenaires et fournisseurs, ou les adresses que vous communiquent vos utilisateurs.
Une seule requête et un seul format de webhook couvrent les six réseaux. Ajouter la surveillance de l'USDT sur Tron ou de l'USDC sur Solana à une application qui suit déjà des wallets Ethereum revient à changer un champ, pas à refaire une intégration.
Ce que vous apporte Suivi de wallets
Six blockchains, une API
Les wallets Bitcoin, Ethereum, Solana, Tron, BNB Chain et Polygon sont suivis avec la même requête et signalés dans le même format.
Transferts entrants et sortants
Les deux sens sont signalés, pour la monnaie native de chaque réseau et pour les stablecoins USDT et USDC.
Webhooks avec renvois automatiques
Chaque transfert est envoyé en JSON à votre endpoint HTTPS dès sa confirmation, puis renvoyé chaque minute jusqu'à ce que votre serveur l'accepte.
Votre identifiant dans chaque événement
Associez à une adresse suivie votre identifiant d'utilisateur, de compte ou de wallet et retrouvez-le dans chaque webhook : les événements correspondent à vos données sans recherche.
Uniquement des transferts confirmés
Un événement est créé une fois le transfert confirmé en toute sécurité sur sa chaîne. Une transaction échouée n'est jamais signalée.
Des montants lisibles
Chaque événement contient les valeurs propres à la chaîne (adresse du contrat et montant dans la plus petite unité) ainsi que le symbole du token et le montant en unités entières.
Comment ça marche
De l'inscription au premier appel en quelques minutes.
- 1
Créez un projet Wallet Tracker
Inscrivez-vous, ouvrez le projet Wallet Tracker dans le tableau de bord et copiez sa clé API. Les nouveaux comptes démarrent avec l'offre Free.
- 2
Ajoutez les adresses à suivre
Envoyez le réseau et l'adresse, avec votre propre identifiant si vous le souhaitez. L'adresse est vérifiée selon les règles de son réseau avant d'être acceptée.
- 3
Recevez un webhook pour chaque transfert
Indiquez une URL de webhook dans le projet et chaque transfert confirmé vers un wallet suivi ou depuis celui-ci y est envoyé. L'historique complet reste disponible dans le tableau de bord et via l'API.
curl https://api.lirchain.com/merchant/wallet-tracker/create \
-H "x-api-key: YOUR_API_KEY" \
-H "content-type: application/json" \
-d '{
"network": "ethereum",
"address": "0xdAC17F958D2ee523a2206206994597C13D831ec7",
"external_id": "treasury"
}'const API_KEY = "YOUR_API_KEY";
async function createWalletTracker(params) {
const response = await fetch("https://api.lirchain.com/merchant/wallet-tracker/create", {
method: "POST",
headers: { "x-api-key": API_KEY, "content-type": "application/json" },
body: JSON.stringify(params),
});
if (!response.ok) {
throw new Error(`LirChain API ${response.status}: ${await response.text()}`);
}
return response.json();
}
const result = await createWalletTracker({
network: "ethereum",
address: "0xdAC17F958D2ee523a2206206994597C13D831ec7",
external_id: "treasury",
});const API_KEY = "YOUR_API_KEY";
type CreateWalletTrackerParams = {
network: string;
address: string;
external_id?: string;
};
type CreateWalletTrackerResult = {
id: string;
project_id: string;
merchant_id: string;
network: string;
address: string;
external_id: string | null;
};
async function createWalletTracker(params: CreateWalletTrackerParams): Promise<CreateWalletTrackerResult> {
const response = await fetch("https://api.lirchain.com/merchant/wallet-tracker/create", {
method: "POST",
headers: { "x-api-key": API_KEY, "content-type": "application/json" },
body: JSON.stringify(params),
});
if (!response.ok) {
throw new Error(`LirChain API ${response.status}: ${await response.text()}`);
}
return response.json();
}
const result = await createWalletTracker({
network: "ethereum",
address: "0xdAC17F958D2ee523a2206206994597C13D831ec7",
external_id: "treasury",
});import requests
API_KEY = "YOUR_API_KEY"
def create_wallet_tracker(**params):
response = requests.post(
"https://api.lirchain.com/merchant/wallet-tracker/create",
headers={"x-api-key": API_KEY},
json=params,
timeout=30,
)
response.raise_for_status()
return response.json()
result = create_wallet_tracker(
network="ethereum",
address="0xdAC17F958D2ee523a2206206994597C13D831ec7",
external_id="treasury",
)<?php
const API_KEY = "YOUR_API_KEY";
function create_wallet_tracker(array $params): array
{
$curl = curl_init("https://api.lirchain.com/merchant/wallet-tracker/create");
curl_setopt_array($curl, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_POSTFIELDS => json_encode($params),
CURLOPT_HTTPHEADER => ["x-api-key: " . API_KEY, "content-type: application/json"],
]);
$body = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
if ($body === false || $status >= 400) {
throw new Exception("LirChain API $status: $body");
}
return json_decode($body, true);
}
$result = create_wallet_tracker([
"network" => "ethereum",
"address" => "0xdAC17F958D2ee523a2206206994597C13D831ec7",
"external_id" => "treasury",
]);package main
import (
"bytes"
"encoding/json"
"fmt"
"io"
"net/http"
)
const apiKey = "YOUR_API_KEY"
func CreateWalletTracker(params map[string]any) (map[string]any, error) {
body, err := json.Marshal(params)
if err != nil {
return nil, err
}
request, err := http.NewRequest("POST", "https://api.lirchain.com/merchant/wallet-tracker/create", bytes.NewReader(body))
if err != nil {
return nil, err
}
request.Header.Set("x-api-key", apiKey)
request.Header.Set("content-type", "application/json")
response, err := http.DefaultClient.Do(request)
if err != nil {
return nil, err
}
defer response.Body.Close()
data, err := io.ReadAll(response.Body)
if err != nil {
return nil, err
}
if response.StatusCode >= 400 {
return nil, fmt.Errorf("LirChain API %d: %s", response.StatusCode, data)
}
var result map[string]any
return result, json.Unmarshal(data, &result)
}
func main() {
result, err := CreateWalletTracker(map[string]any{
"network": "ethereum",
"address": "0xdAC17F958D2ee523a2206206994597C13D831ec7",
"external_id": "treasury",
})
fmt.Println(result, err)
}{
"type": "wallet-tracker",
"event": {
"id": "95e04e32-5c98-4f68-8c62-f487bda0ed5c",
"tracker_id": "67153a22-af19-4352-ab8e-041006c76c7b",
"external_id": "treasury",
"project_id": "ea54aa6c-21d7-46a4-b1fe-c0703f74a2af",
"created_ms": 1791504120904
},
"transfer": {
"network": "ethereum",
"block_number": 26151012,
"tx_hash": "0x4e3a…9f21",
"log_index": "28",
"from_address": "0xdac17f958d2ee523a2206206994597c13d831ec7",
"to_address": "0x52ae0f1c8d4b7a90e3b6c2d15f8a47e09b3c91f3",
"asset": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
"amount": "102870865",
"symbol": "USDC",
"amount_units": "102.870865"
}
}Tous les endpoints et les champs sont dans la référence de l'API, section Suivi de wallets (en anglais). Vous utilisez un agent de code ? Donnez-lui lirchain.com/llms-full.txt et il pourra écrire l'intégration pour vous.
Blockchains et tokens que vous pouvez suivre
Sur chaque réseau, le suivi signale la monnaie native du réseau, ainsi que l'USDT et l'USDC là où ils existent.
| Réseau | Cryptos et tokens |
|---|---|
| Ethereum | USDTUSDCETH |
| BNB Chain | USDTUSDCBNB |
| Polygon | USDTUSDCPOL |
| Tron | USDTUSDCTRX |
| Solana | USDTUSDCSOL |
| Bitcoin | BTC |
À quoi sert Suivi de wallets
Surveillance de la trésorerie et des cold wallets
Soyez informé de chaque mouvement sur les wallets de l'entreprise dès sa confirmation, sans que personne ne rafraîchisse un explorateur de blocs.
Détection des dépôts sur vos propres adresses
Vous générez déjà vos adresses vous-même ? Suivez-les et créditez vos utilisateurs à l'arrivée du webhook.
Alertes de wallets et bots
Transférez les webhooks du suivi vers Telegram, Discord ou Slack pour créer des alertes de wallets pour votre équipe ou votre communauté.
Comptabilité et pistes d'audit
Conservez une liste complète et horodatée de ce que chaque wallet a reçu et envoyé, prête pour le rapprochement.
Règlements avec partenaires et contreparties
Voyez l'instant où un fournisseur, un client ou une contrepartie OTC paie, quelle que soit celle des six chaînes qu'il utilise.
Applications de portefeuille et d'analyse
Alimentez votre produit avec les transferts en direct des wallets de vos utilisateurs, sans maintenir de nœuds pour six blockchains.
Suivi de wallets : tarifs
Les événements du suivi sont sans frais. L'offre fixe le nombre de wallets suivis et le nombre d'événements signalés par période de 30 jours.
| Offre | Free | Starter | Business | Enterprise |
|---|---|---|---|---|
| Prix par mois | Gratuit | $19.99 | $49.99 | $249.99 |
| Wallets suivis | 5 | 1 000 | 20 000 | 1 000 000 |
| Événements par 30 jours | 30 | 10 000 | 200 000 | 10 000 000 |
| Frais par événement | Aucuns | Aucuns | Aucuns | Aucuns |
Chaque offre comprend les quatre produits. Comparer les offres
Suivi de wallets : questions et réponses
- Sur quelles blockchains puis-je suivre des wallets ?
- Bitcoin, Ethereum, Solana, Tron, BNB Chain (BSC) et Polygon. Les six sont suivies via la même API et signalées dans le même format de webhook.
- Quelles cryptos et quels tokens le suivi de wallets signale-t-il ?
- La monnaie native de chaque chaîne (BTC, ETH, SOL, TRX, BNB et POL) et les stablecoins USDT et USDC sur Ethereum, Solana, Tron, BNB Chain et Polygon.
- Ai-je besoin de la clé privée du wallet ou de mon propre nœud ?
- Non. Un suivi n'a besoin que de l'adresse publique : vous pouvez surveiller n'importe quel wallet, le vôtre ou celui de quelqu'un d'autre. LirChain lit les blockchains pour vous, il n'y a donc aucun nœud à faire tourner ni à synchroniser.
- En combien de temps le webhook est-il envoyé après une transaction ?
- Dès que le transfert est confirmé en toute sécurité : 12 blocs sur Ethereum, BNB Chain et Polygon, 20 blocs sur Tron, 3 blocs sur Bitcoin et des transactions finalisées sur Solana. Sur la plupart des réseaux, cela prend une à deux minutes.
- Le suivi de wallets est-il gratuit ?
- Oui, l'offre Free suit 5 wallets et signale 30 événements par 30 jours, sans carte. Starter suit 1 000 wallets et signale 10 000 événements pour 19,99 $ par mois. Il n'y a aucuns frais par événement, quelle que soit l'offre.
- Que se passe-t-il si mon serveur manque un webhook ?
- Si votre serveur ne répond pas avec un statut 2xx, le même webhook est renvoyé chaque minute, jusqu'à 20 fois, toujours avec le même en-tête x-webhook-id pour que vous puissiez ignorer celui que vous avez déjà traité. Chaque événement reste aussi dans le tableau de bord et dans la liste des événements de l'API.
- À partir de quand les transferts sont-ils signalés ?
- À partir du moment où vous ajoutez le suivi. Chaque transfert confirmé ensuite est enregistré et envoyé à votre webhook.
Fonctionne avec le reste de LirChain
Un compte, un solde et une API pour les quatre produits.
Suivi de wallets : commencez gratuitement
Les nouveaux comptes démarrent avec l'offre Free, avec tous les produits compris et sans carte.