Docs de Zcan
Documentación
Cómo funciona Zcan.
Zcan es una interfaz sin custodia: los intercambios y envíos privados se liquidan con market makers de NEAR Intents, las herramientas de privacidad funcionan en tu dispositivo y los agentes solo actúan en los pasos que apruebas. Todos los gráficos de esta página son en vivo.
01 · Cómo funciona
Envías a una dirección de depósito de un solo uso. Los solvers compiten en una subasta para completar el intercambio y el ganador paga directamente a tu destino. Si no se puede cumplir el mínimo garantizado, el depósito se reembolsa.
02 · Ciclo de una orden
Cada orden pasa por estos estados, que informa la API de estado de 1Click. La página de la orden consulta cada 5 segundos; la app actualiza tus demás órdenes abiertas cada 10 segundos.
Reproducción automática · toca un estado
PENDING_DEPOSIT
La orden existe y su dirección de depósito espera tus fondos. Todavía no se ha movido nada.
03 · Cotizaciones y slippage
Una cotización tiene un resultado esperado y un mínimo garantizado. La diferencia entre ambos es la tolerancia de slippage. Mueve el control para ver el equilibrio con precios en vivo.
Zcan pide 1,0% por defecto.
- Tasa en vivo
- —
- Esperado
- 0 ZEC
- Mínimo garantizado
- 0 ZEC
- Peor caso
- −$0.00
04 · Redes
Zcan admite todo lo que admite NEAR Intents, siempre con ZEC en uno de los lados. Este gráfico lee la lista de activos en vivo.
05 · Envío privado
Divide un monto entre hasta 10 destinatarios. Cada destinatario tiene su propia orden y le paga un market maker —nunca tu billetera—, y tú envías cada depósito en su momento programado para que las transferencias no queden vinculadas por el tiempo.
- Sin custodiaCada tramo es una orden de 1Click independiente. Zcan no agrupa ni guarda nada.
- Pagos no vinculadosLos destinatarios ven la dirección de un solver, no la tuya. Los repartos desiguales y los retrasos dificultan relacionar los tramos.
- LímitesLas direcciones de depósito son transparentes. Para máxima privacidad, envía desde un saldo protegido de Zcash. Los retrasos deben caber dentro del plazo de cada orden (unas horas).
06 · Datos en vivo
Los precios llegan por WebSocket. Las cotizaciones y los pagos siempre vienen de NEAR Intents; los precios en streaming son para mostrar y estimar.
Conectando al feed de mercado…
ZEC/USD
—
—
BTC/USD
—
—
ETH/USD
—
—
SOL/USD
—
—
XRP/USD
—
—
DOGE/USD
—
—
| Dato | Fuente | Actualización |
|---|---|---|
| Precios en USD (27 activos) | Coinbase WebSocket | Tiempo real · lotes de 4/s |
| Lista de tokens y precios de respaldo | NEAR Intents /v0/tokens | Cada 30 s |
| Historial de ZEC 24 h | CoinGecko | Cada 5 min + ticks en vivo |
| Cotizaciones de intercambio | Cotizaciones de prueba de 1Click | Cada 15 s |
| Estado de la orden | 1Click /v0/status | 5 s (página de la orden) · 10 s (en segundo plano) |
07 · Modelo de privacidad
Qué sale de tu dispositivo, y hacia quién, en cada función.
| Función | Sale de tu dispositivo | Destino |
|---|---|---|
| Limpiador de enlaces | Nada | Funciona por completo en tu navegador |
| Limpiador de fotos | Nada | La decodificación y recodificación ocurren en tu dispositivo |
| Intercambio / envío privado | Direcciones, montos | NEAR Intents 1Click (para crear y liquidar la orden) |
| Precios en vivo | Nada sobre ti | Feed público de mercado de Coinbase |
| Agentes de privacidad | Lo que escribes en el formulario | Zcan Privacy Model (modelo) · Tavily (búsquedas) |
| Revisiones programadas de agentes | Nada | Se guarda solo en el localStorage de este navegador |
| Ejecuciones compartidas (opcional) | Una transcripción anonimizada, solo si pulsas Compartir tras una ejecución | Almacén de entrenamiento de Zcan (puedes retirarla) |
| Historial de órdenes | Nada | Se guarda solo en el localStorage de este navegador |
- Exposure Scout
- Breach Guide
- Access Auditor
- Data Broker Remover
- Account Cleanup
- Social Media Lockdown
- Phishing Checker
- Wallet Hygiene Check
- Travel Privacy Prep
Cada agente prepara primero un plan, busca en la web pública solo para los pasos que apruebas y nunca inicia sesión en ningún sitio por ti.
08 · Referencia de la API
Las rutas de servidor de Zcan son proxies ligeros que mantienen las claves en el servidor. Son los mismos endpoints que usa la app.
GET/api/tokens
Activos admitidos con precios en USD (lista de 1Click, sin duplicados).
curl https://your-zcan.app/api/tokensPOST/api/quote
Cotización de prueba o real. dry:false devuelve una dirección de depósito de un solo uso. ZEC debe estar en uno de los lados; se permiten rutas del mismo activo (ZEC→ZEC).
# recipient: unified u1… or transparent t1…/tex1…; Sapling-only zs1… is rejected
curl -X POST https://your-zcan.app/api/quote \
-H 'content-type: application/json' \
-d '{"from":"nep141:btc.omft.near","to":"nep141:zec.omft.near",
"amount":"0.01","mode":"float","dry":true,
"recipient":"u1…","refundTo":"bc1…"}'GET/api/status?address=…&memo=…
Estado de ejecución de una orden según su dirección de depósito.
curl 'https://your-zcan.app/api/status?address=bc1q…'POST/api/deposit
Opcional: envía el hash de tu transacción de depósito para acelerar la detección.
{"txHash":"…","depositAddress":"bc1q…"}GET/api/chart
ZEC/USD en 24 h más volumen y capitalización de mercado (CoinGecko, caché de 1 min).
curl https://your-zcan.app/api/chartPOST/api/agents/plan
El agente prepara un plan (JSON). Todavía no se busca nada.
{"agentId":"breach-guide","values":{"breach":"…"}}POST/api/agents/run
Ejecuta solo el plan aprobado; transmite eventos NDJSON.
{"t":"status","text":"Searching the public web…"}
{"t":"search","query":"Example Corp breach 2026"}
{"t":"source","url":"https://…","title":"…"}
{"t":"text","text":"## What happened\n…"}
{"t":"done"}09 · Autoalojamiento
Zcan es una app de Next.js. Todas las claves son opcionales; las funciones sin clave se degradan con elegancia.
# Swaps (optional; keyless quotes include a 0.2% 1Click fee)
ONECLICK_JWT=
ZCAN_FEE_RECIPIENT= # your NEAR Intents account for a service fee
ZCAN_FEE_BPS= # e.g. 50 = 0.5%
# Privacy agents — any OpenAI-compatible model (DeepSeek by default)
AI_API_KEY=
AI_BASE_URL= # e.g. your own vLLM deployment (deploy/model); empty = DeepSeek
AI_MODEL= # model for reports (required for a custom endpoint)
AI_PLAN_MODEL= # optional faster model for plans
NEXT_PUBLIC_AI_SELF_HOSTED= # true only for a model you deploy yourself
NEXT_PUBLIC_AI_MODEL_NAME= # its name, e.g. "Zcan Privacy Model"
NEXT_PUBLIC_AI_HOST= # GPU host, e.g. "Modal"
NEXT_PUBLIC_AI_PROVIDER= # or: the outside AI company answering
TAVILY_API_KEY= # optional live web search
# Optional: opt-in, anonymized training data for your own model
TRAINING_SIGNING_SECRET= # 32+ random characters
TRAINING_ADMIN_TOKEN= # 24+ chars; GET /api/training/export
KV_REST_API_URL= # Upstash / Vercel KV Redis REST store
KV_REST_API_TOKEN=
# Optional: cookieless usage counts, proxied through /api/event
NEXT_PUBLIC_ANALYTICS= # plausible | umami
ANALYTICS_SITE= # Plausible domain or Umami website id