Une adresse de dépôt crypto unique pour chaque utilisateur
Générez un wallet de dépôt dédié à chaque client avec un seul appel à l'API. Les dépôts en USDT, USDC, ETH, BNB et POL sur Ethereum, BNB Chain et Polygon sont détectés, ajoutés à votre solde en dollars et signalés à votre serveur avec votre propre identifiant d'utilisateur.
- Un appel à l'API crée une adresse permanente pour un utilisateur
- USDT, USDC, ETH, BNB et POL sur trois réseaux
- Chaque webhook de dépôt contient votre identifiant d'utilisateur
Des wallets de dépôt en tant que service
Tout produit qui gère des soldes clients doit savoir qui a envoyé chaque paiement : plateformes d'échange et de trading, jeux et casinos, marketplaces, wallets, services de recharge. Partager une seule adresse en demandant aux utilisateurs un mémo ou un hash de transaction mène à des paiements perdus ou mal attribués. La réponse classique est une adresse de dépôt distincte par utilisateur : ce qui y arrive lui appartient.
LirChain crée et surveille ces adresses pour vous. Vous envoyez un réseau, un actif et votre identifiant d'utilisateur et recevez une adresse permanente. Chaque transfert vers celle-ci devient un dépôt, est ajouté à votre solde LirChain et envoyé à votre webhook. Vous n'avez ni infrastructure de wallets, ni stockage de clés, ni gestion du gas, ni collecte des fonds à construire.
Les adresses n'expirent pas. Un utilisateur peut payer à la même adresse autant de fois qu'il veut, ce qui convient aux recharges de compte et aux dépôts récurrents, et vous pouvez l'afficher dans votre interface ou sur une page de dépôt hébergée.
Ce que vous apporte Wallets de dépôt
Un appel à l'API par adresse
Créez un wallet de dépôt dès qu'un nouvel utilisateur, compte ou commande en a besoin. L'adresse est renvoyée dans la même réponse.
Votre identifiant d'utilisateur sur chaque dépôt
Transmettez votre propre identifiant à la création de l'adresse et chaque webhook de dépôt le contient. Plus besoin de deviner à qui appartient un transfert.
Stablecoins et cryptos natives
Acceptez l'USDT et l'USDC à parité avec le dollar. Les dépôts en ETH, BNB et POL sont échangés en dollars automatiquement à leur arrivée.
Un seul solde en dollars
Les dépôts de tous les réseaux et actifs alimentent un solde unique. Retirez-le en USDT ou USDC sur le réseau de votre choix ou utilisez-le pour vos versements.
Page de dépôt hébergée
Chaque wallet dispose d'une page prête à l'emploi avec son adresse, un QR code et les derniers dépôts : inutile de construire l'écran de dépôt.
Webhooks de dépôt avec renvois
Votre serveur est informé de chaque dépôt confirmé avec le montant, les frais et ce que vous avez reçu, et l'est de nouveau jusqu'à ce qu'il réponde.
Comment ça marche
De l'inscription au premier appel en quelques minutes.
- 1
Créez un projet Deposit Wallets
Inscrivez-vous, ouvrez le projet Deposit Wallets dans le tableau de bord et copiez sa clé API.
- 2
Créez une adresse pour chaque utilisateur
Envoyez le réseau, l'actif et votre propre identifiant pour l'utilisateur. Vous recevez une adresse permanente qui n'appartient qu'à lui.
- 3
Affichez l'adresse à l'utilisateur
Montrez-la dans votre application ou envoyez l'utilisateur sur la page de dépôt hébergée lirchain.com/deposit/<id du wallet>.
- 4
Créditez l'utilisateur à l'arrivée du webhook
Chaque dépôt confirmé est ajouté à votre solde et envoyé à votre URL de webhook avec votre identifiant d'utilisateur, le montant et les frais.
curl https://api.lirchain.com/merchant/deposit-wallet/create \
-H "x-api-key: YOUR_API_KEY" \
-H "content-type: application/json" \
-d '{
"network": "polygon",
"asset": "USDC",
"external_id": "customer-7731"
}'const API_KEY = "YOUR_API_KEY";
async function createDepositWallet(params) {
const response = await fetch("https://api.lirchain.com/merchant/deposit-wallet/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 createDepositWallet({
network: "polygon",
asset: "USDC",
external_id: "customer-7731",
});const API_KEY = "YOUR_API_KEY";
type CreateDepositWalletParams = {
network: string;
asset: string;
external_id?: string;
};
type CreateDepositWalletResult = {
id: string;
project_id: string;
merchant_id: string;
network: string;
address: string;
asset: string;
external_id: string | null;
};
async function createDepositWallet(params: CreateDepositWalletParams): Promise<CreateDepositWalletResult> {
const response = await fetch("https://api.lirchain.com/merchant/deposit-wallet/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 createDepositWallet({
network: "polygon",
asset: "USDC",
external_id: "customer-7731",
});import requests
API_KEY = "YOUR_API_KEY"
def create_deposit_wallet(**params):
response = requests.post(
"https://api.lirchain.com/merchant/deposit-wallet/create",
headers={"x-api-key": API_KEY},
json=params,
timeout=30,
)
response.raise_for_status()
return response.json()
result = create_deposit_wallet(
network="polygon",
asset="USDC",
external_id="customer-7731",
)<?php
const API_KEY = "YOUR_API_KEY";
function create_deposit_wallet(array $params): array
{
$curl = curl_init("https://api.lirchain.com/merchant/deposit-wallet/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_deposit_wallet([
"network" => "polygon",
"asset" => "USDC",
"external_id" => "customer-7731",
]);package main
import (
"bytes"
"encoding/json"
"fmt"
"io"
"net/http"
)
const apiKey = "YOUR_API_KEY"
func CreateDepositWallet(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/deposit-wallet/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 := CreateDepositWallet(map[string]any{
"network": "polygon",
"asset": "USDC",
"external_id": "customer-7731",
})
fmt.Println(result, err)
}{
"id": "3f4911a7-2c26-4f9c-a97c-80b25b6feb8c",
"project_id": "3d6b1130-da92-4ddf-bad2-93f898993c39",
"merchant_id": "7c551c17-1a48-4e2b-b3ac-7ad389a753c6",
"network": "polygon",
"address": "0x748aaf6d861698dc3c4ee2fca3c27ba13edc7891",
"asset": "USDC",
"external_id": "customer-7731"
}{
"type": "deposit-wallet",
"deposit": {
"id": "41b0d4fe-8b49-4623-bd8f-6f04586b06c9",
"wallet_id": "3f4911a7-2c26-4f9c-a97c-80b25b6feb8c",
"external_id": "customer-7731",
"project_id": "3d6b1130-da92-4ddf-bad2-93f898993c39",
"network": "polygon",
"asset": "USDC",
"contract": "0x3c499c542cef5e3811e1192ce70d8cc03d5c3359",
"amount": "250.5",
"pay_amount": "250.5",
"fee": "1.2525",
"receive_amount": "249.2475",
"created_ms": 1791503990112
}
}Tous les endpoints et les champs sont dans la référence de l'API, section Wallets de dépôt (en anglais). Vous utilisez un agent de code ? Donnez-lui lirchain.com/llms-full.txt et il pourra écrire l'intégration pour vous.
Réseaux et actifs pour les adresses de dépôt
Un wallet de dépôt accepte un actif sur un réseau. Créez-en autant que nécessaire par utilisateur, par exemple un pour l'USDT sur BNB Chain et un pour l'USDC sur Polygon.
| Réseau | Cryptos et tokens |
|---|---|
| Ethereum | USDTUSDCETH |
| BNB Chain | USDTUSDCBNB |
| Polygon | USDTUSDCPOL |
À quoi sert Wallets de dépôt
Plateformes d'échange et de trading
Donnez à chaque trader une adresse de dépôt personnelle et créditez son compte automatiquement dès que les fonds sont confirmés.
Jeux, casinos et paris
Laissez les joueurs recharger en USDT ou USDC et voir leur solde mis à jour sans vérification manuelle du support.
Marketplaces et plateformes
Séparez les fonds des acheteurs et des vendeurs en donnant à chaque compte sa propre adresse.
Wallets et applications fintech
Ajoutez la recharge en crypto à une application sans construire la génération d'adresses, la surveillance et la collecte des fonds.
SaaS et soldes prépayés
Laissez vos clients recharger un solde prépayé en stablecoins quand ils le souhaitent, toujours à la même adresse.
Bots et communautés
Créez une adresse par utilisateur Telegram ou Discord et débloquez l'accès dès l'arrivée de son dépôt.
Wallets de dépôt : tarifs
La création de wallets est gratuite. Un dépôt coûte le pourcentage de votre offre, au minimum 0,10 $.
| Offre | Free | Starter | Business | Enterprise |
|---|---|---|---|---|
| Prix par mois | Gratuit | $19.99 | $49.99 | $249.99 |
| Wallets de dépôt | 15 | 1 000 | 20 000 | 1 000 000 |
| Frais par dépôt | 1 % | 0,5 % | 0,375 % | 0,25 % |
Chaque offre comprend les quatre produits. Comparer les offres
Wallets de dépôt : questions et réponses
- Qu'est-ce qu'une adresse de dépôt crypto par utilisateur ?
- C'est une adresse blockchain créée pour l'un de vos utilisateurs et pour personne d'autre. Comme lui seul reçoit cette adresse, chaque transfert qui y arrive peut lui être crédité automatiquement, sans mémo, référence ni rapprochement manuel.
- Quelles cryptos et quels réseaux les wallets de dépôt acceptent-ils ?
- L'USDT et l'USDC sur Ethereum (ERC-20), BNB Chain (BEP-20) et Polygon, ainsi que la monnaie native de chaque réseau : ETH, BNB et POL.
- Comment savoir quel utilisateur a fait un dépôt ?
- Envoyez votre propre identifiant d'utilisateur dans external_id à la création du wallet. Il est renvoyé avec le wallet, avec chacun de ses dépôts dans l'API et dans chaque webhook de dépôt.
- Que se passe-t-il quand un utilisateur dépose de l'ETH, du BNB ou du POL ?
- Les cryptos sont échangées en dollars sur la principale plateforme d'échange du réseau, généralement en quelques minutes, et ce que l'échange a rapporté est ajouté à votre solde. Vous détenez des dollars : les variations ultérieures du cours ne vous concernent pas.
- Un utilisateur peut-il déposer plusieurs fois à la même adresse ?
- Oui. Un wallet de dépôt est permanent et chaque transfert vers celui-ci est un nouveau dépôt : il convient donc aux recharges répétées.
- Combien coûte une API d'adresses de dépôt ?
- La création d'adresses est gratuite. Chaque dépôt coûte le pourcentage de votre offre (1 % avec Free, 0,5 % avec Starter, 0,375 % avec Business, 0,25 % avec Enterprise), au minimum 0,10 $. L'offre Free comprend 15 wallets de dépôt et Starter en comprend 1 000 pour 19,99 $ par mois.
- Comment retirer l'argent déposé par mes utilisateurs ?
- Depuis le tableau de bord, en USDT ou USDC sur Ethereum, BNB Chain ou Polygon, vers l'adresse de votre choix. Vous pouvez aussi l'envoyer directement à vos utilisateurs avec l'API de versements.
Fonctionne avec le reste de LirChain
Un compte, un solde et une API pour les quatre produits.
Wallets de dépôt : commencez gratuitement
Les nouveaux comptes démarrent avec l'offre Free, avec tous les produits compris et sans carte.