API Reference · v1
Zelloh API Docs
REST + JSON. Autenticación con Bearer token. Base URL https://api.zelloh.co.
Latencia p99
< 80ms
Disponibilidad
99.99 %
Rate limit
600 / 5min
Autenticación
Incluye tu Bearer JWT en cada request. Solicita una API key desde el panel admin de Zelloh.
bash
curl https://api.zelloh.co/api/v1/balance \
-H "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR..."Autenticación
POST
/api/v1/auth/loginLogin
Devuelve un JWT y refresh token.
Request
json
{
"identifier": "+34622779909",
"method": "sms_otp"
}Response
json
{
"access_token": "eyJhbGciOiJIUzI1NiIsInR...",
"refresh_token": "rt_x9k2l1m...",
"expires_in": 3600,
"user": { "id": "usr_1a2b3c", "verified": true }
}POST
/api/v1/auth/refresh AuthRefrescar token
Renueva el JWT antes de su expiración.
Request
json
{ "refresh_token": "rt_x9k2l1m..." }Response
json
{ "access_token": "...", "expires_in": 3600 }Balance & cuentas
GET
/api/v1/balance AuthConsultar balance
Saldo disponible, bonos gastables y bonos pendientes.
Response
json
{
"available": 1245.50,
"spendable_bonus": 20.00,
"pending_bonus": 5.00,
"currency": "EUR",
"iban": "ES7621000418401234567891",
"bic": "ZLLHESMMXXX"
}Recarga
POST
/api/v1/topup AuthCrear top up
Inicia una recarga por tarjeta, SEPA o SEPA Instant.
Request
json
{
"amount": 50,
"currency": "EUR",
"source": "card"
}Response
json
{
"id": "tu_abc123",
"status": "pending",
"amount": 50,
"currency": "EUR",
"checkout_url": "https://checkout.zelloh.co/...",
"created_at": "2026-06-19T11:32:00Z"
}Enviar dinero
POST
/api/v1/send AuthCrear transferencia
Envía a usuario, móvil, IBAN o email. Soporta SEPA Instant.
Request
json
{
"recipient_type": "username",
"recipient_identifier": "@alberto",
"amount": 20,
"currency": "EUR",
"instant": true,
"note": "Cena del sábado"
}Response
json
{
"id": "tx_def456",
"status": "completed",
"amount": 20,
"currency": "EUR",
"fee": 0,
"recipient": { "display_name": "Alberto M.", "verified": true },
"created_at": "2026-06-19T11:35:12Z"
}Bonos
POST
/api/v1/earnings/promo/redeem AuthCanjear código
Aplica un código promocional al balance del usuario.
Request
json
{ "code": "ZELLOH2026" }Response
json
{
"valid": true,
"bonus_amount": 20,
"bonus_currency": "EUR",
"bonus_type": "deposit",
"expires_at": "2026-12-19T00:00:00Z",
"description": "20 EUR de bono tras tu primera compra ≥ 20 EUR"
}Tarjetas
GET
/api/v1/cards AuthListar tarjetas
Devuelve todas las tarjetas activas del usuario.
Response
json
[
{
"id": "card_001",
"type": "virtual",
"last4": "5544",
"brand": "mastercard",
"blocked": false
}
]POST
/api/v1/cards/{id}/block AuthBloquear tarjeta
Bloquea una tarjeta al instante.
Response
json
{ "id": "card_001", "blocked": true }