Una dirección de depósito cripto única para cada usuario
Genera una wallet de depósito dedicada para cada cliente con una sola llamada a la API. Los depósitos en USDT, USDC, ETH, BNB y POL en Ethereum, BNB Chain y Polygon se detectan, se suman a tu saldo en dólares y se notifican a tu servidor con tu propio id de usuario.
- Una llamada a la API crea una dirección permanente para un usuario
- USDT, USDC, ETH, BNB y POL en tres redes
- Cada webhook de depósito trae tu propio id de usuario
Wallets de depósito como servicio
Todo producto que guarda saldos de clientes tiene que saber quién envió cada pago: exchanges y plataformas de trading, juegos y casinos, marketplaces, wallets, servicios de recarga. Compartir una sola dirección y pedir a los usuarios un memo o un hash de transacción acaba en pagos perdidos o mal asignados. La solución habitual es una dirección de depósito distinta para cada usuario: lo que llega allí es de ese usuario.
LirChain crea y vigila esas direcciones por ti. Envías una red, un activo y tu id de usuario y recibes una dirección permanente. Cada transferencia a ella se convierte en un depósito, se suma a tu saldo de LirChain y se envía a tu webhook. No tienes que construir infraestructura de wallets, custodia de claves, gestión de gas ni recolección de fondos.
Las direcciones no caducan. Un usuario puede pagar a la misma una y otra vez, lo que encaja con recargas de cuenta y depósitos recurrentes, y puedes mostrarla en tu propia interfaz o en una página de depósito alojada.
Qué te ofrece Wallets de depósito
Una llamada a la API por dirección
Crea una wallet de depósito cada vez que un usuario, una cuenta o un pedido nuevo la necesite. La dirección llega en la misma respuesta.
Tu id de usuario en cada depósito
Pasa tu propio id al crear la dirección y cada webhook de depósito lo incluye. Sin adivinar a quién pertenece cada transferencia.
Stablecoins y monedas nativas
Acepta USDT y USDC uno a uno con el dólar. Los depósitos en ETH, BNB y POL se cambian a dólares automáticamente al llegar.
Un saldo en dólares
Los depósitos de todas las redes y activos se suman a un único saldo. Retíralo en USDT o USDC en la red que elijas, o úsalo para pagar a tus usuarios.
Página de depósito alojada
Cada wallet tiene una página lista con su dirección, un código QR y los últimos depósitos, así no tienes que construir la pantalla de depósito.
Webhooks de depósito con reintentos
Tu servidor recibe cada depósito confirmado con el importe, la comisión y lo que recibiste, y se le vuelve a avisar hasta que responde.
Cómo funciona
Del registro a la primera llamada en unos minutos.
- 1
Crea un proyecto Deposit Wallets
Regístrate, abre el proyecto Deposit Wallets en el panel y copia su clave de API.
- 2
Crea una dirección para cada usuario
Envía la red, el activo y tu propio id del usuario. Recibes una dirección permanente que es solo de ese usuario.
- 3
Muestra la dirección al usuario
Enséñala en tu aplicación o envía al usuario a la página de depósito alojada en lirchain.com/deposit/<id de la wallet>.
- 4
Acredita al usuario cuando llegue el webhook
Cada depósito confirmado se suma a tu saldo y se envía a tu URL de webhook con tu id de usuario, el importe y la comisión.
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
}
}Todos los endpoints y campos están en la referencia de la API de Wallets de depósito (en inglés). ¿Usas un agente de programación? Dale lirchain.com/llms-full.txt y podrá escribir la integración por ti.
Redes y activos para direcciones de depósito
Una wallet de depósito acepta un activo en una red. Crea tantas por usuario como necesites, por ejemplo una para USDT en BNB Chain y otra para USDC en Polygon.
| Red | Monedas y tokens |
|---|---|
| Ethereum | USDTUSDCETH |
| BNB Chain | USDTUSDCBNB |
| Polygon | USDTUSDCPOL |
Para qué usan los equipos Wallets de depósito
Exchanges y plataformas de trading
Da a cada trader una dirección de depósito personal y acredita su cuenta automáticamente cuando se confirmen los fondos.
Juegos, casinos y apuestas
Deja que los jugadores recarguen en USDT o USDC y vean su saldo actualizado sin comprobaciones manuales de soporte.
Marketplaces y plataformas
Mantén separados los fondos de compradores y vendedores dando a cada cuenta su propia dirección.
Wallets y aplicaciones fintech
Añade recargas en cripto a una aplicación sin construir la generación de direcciones, la monitorización y la recolección de fondos.
SaaS y saldos prepago
Deja que los clientes recarguen un saldo prepago en stablecoins cuando quieran, siempre a la misma dirección.
Bots y comunidades
Crea una dirección por usuario de Telegram o Discord y da acceso en cuanto llegue su depósito.
Precios de Wallets de depósito
Crear wallets es gratis. Un depósito cuesta el porcentaje de tu plan, como mínimo $0.10.
| Plan | Free | Starter | Business | Enterprise |
|---|---|---|---|---|
| Precio al mes | Gratis | $19.99 | $49.99 | $249.99 |
| Wallets de depósito | 15 | 1000 | 20.000 | 1.000.000 |
| Comisión por depósito | 1% | 0,5% | 0,375% | 0,25% |
Cada plan incluye los cuatro productos. Comparar los planes
Wallets de depósito: preguntas y respuestas
- ¿Qué es una dirección de depósito cripto por usuario?
- Es una dirección de blockchain creada para uno de tus usuarios y para nadie más. Como solo ese usuario recibe la dirección, cada transferencia que llega allí se le puede acreditar automáticamente, sin memo, referencia ni conciliación manual.
- ¿Qué monedas y redes admiten las wallets de depósito?
- USDT y USDC en Ethereum (ERC-20), BNB Chain (BEP-20) y Polygon, y la moneda propia de cada red: ETH, BNB y POL.
- ¿Cómo sé qué usuario hizo un depósito?
- Envía tu propio id de usuario como external_id al crear la wallet. Vuelve con la wallet, con cada uno de sus depósitos en la API y en cada webhook de depósito.
- ¿Qué pasa cuando un usuario deposita ETH, BNB o POL?
- Las monedas se cambian a dólares en el exchange principal de esa red, normalmente en unos minutos, y lo que pagó el exchange se suma a tu saldo. Tienes dólares, así que los cambios posteriores del precio de la moneda no te afectan.
- ¿Puede un usuario depositar más de una vez en la misma dirección?
- Sí. Una wallet de depósito es permanente y cada transferencia a ella es un depósito nuevo, así que sirve para recargas repetidas.
- ¿Cuánto cuesta una API de direcciones de depósito?
- Crear direcciones es gratis. Cada depósito cuesta el porcentaje de tu plan (1% en Free, 0,5% en Starter, 0,375% en Business, 0,25% en Enterprise), como mínimo $0.10. El plan Free incluye 15 wallets de depósito y Starter incluye 1000 por $19.99 al mes.
- ¿Cómo retiro el dinero que depositaron mis usuarios?
- Desde el panel, en USDT o USDC en Ethereum, BNB Chain o Polygon, a la dirección que elijas. También puedes enviarlo directamente a tus usuarios con la API de pagos a usuarios.
Funciona con el resto de LirChain
Una cuenta, un saldo y una API para los cuatro productos.
Empieza gratis con Wallets de depósito
Las cuentas nuevas empiezan en el plan Free, con todos los productos incluidos y sin tarjeta.