Caso de estudio

ZestAMC

Plataforma de gestion de inversiones en criptomonedas que conecta inversores con gestores de fondos profesionales.

$10M+

AUM en la plataforma

200K+

usuarios registrados

5

portales basados en roles

179

migraciones SQL

En produccion desde 2024
zestamc.com
ZestAMC marketing landing page

El desafio

Una empresa de gestion de fondos cripto sin plataforma

El equipo de ZestAMC gestionaba multiples fondos de criptomonedas con hojas de calculo y transferencias bancarias manuales. Los gestores de fondos rastreaban las asignaciones de inversores a mano. Los pagos tardaban dias. Un solo error decimal en un fondo de $2M significaba dinero real perdido.

Necesitaban una plataforma donde los inversores pudieran explorar fondos, completar la verificacion KYC, invertir y recibir pagos cripto automatizados, mientras los gestores de fondos rastreaban el rendimiento con precision financiera. Cinco tipos de usuarios distintos (admin, gestor de fondos, inversor, admin de fondos, soporte) requerian vistas y permisos diferentes.

La plataforma tambien tenia que cumplir con las regulaciones KYC/AML, soportar multiples redes cripto (TRC20, ERC20, BEP20) y manejar la distribucion de ganancias a traves de cadenas de referidos complejas, todo sin un solo error de redondeo.

Lo que construimos

10 sistemas. Una plataforma.

5 portales basados en roles

Cada tipo de usuario ve una aplicacion diferente. Los admins gestionan fondos y usuarios. Los gestores de fondos rastrean AUM y distribuyen ganancias. Los inversores exploran indices, invierten y retiran. Los admins de fondos manejan flujos de compliance. Los agentes de soporte resuelven problemas a traves de chat en tiempo real. Una base de codigo, cinco experiencias distintas, todas compartiendo la misma capa de datos.

ZestAMC application dashboard showing fund management interface

Motor de pagos cripto automatizados

Integramos NOWPayments para procesar pagos a traves de redes TRC20, ERC20 y BEP20. Trabajos en segundo plano de BullMQ manejan la distribucion de ganancias en dos pasos: primero a inversores, luego a cadenas de referidos. Cada pago se ejecuta como una transaccion atomica. Si algun paso falla, todo el lote se revierte.

ZestAMC investment steps showing the investor flow

Cumplimiento KYC/AML y precision financiera

Sumsub maneja la verificacion de identidad a traves de su SDK y callbacks de webhook. Cada inversor completa KYC antes de su primera inversion. En el lado financiero, todos los valores monetarios usan NUMERIC(30,8) en Postgres junto con decimal.js en la capa de aplicacion. Ninguna operacion de punto flotante toca el dinero. 30 digitos, 8 decimales, cero errores de redondeo.

ZestAMC platform features overview

Tranches inteligentes y autenticacion sin contrasena

Los inversores compran participaciones en fondos a traves de tranches. Un sistema de agregacion diferida agrupa inversiones pequenas en entradas de pool mas grandes, reduciendo escrituras en la base de datos y mejorando el rendimiento de consultas en analitica de fondos. La autenticacion usa OTP sin contrasena, eliminando tickets de soporte relacionados con contrasenas y reduciendo la superficie de ataque.

ZestAMC indices section showing available crypto funds

Infraestructura y herramientas

  • Chat de soporte en tiempo real via Supabase Realtime, para que agentes e inversores se comuniquen sin recargas de pagina ni polling.
  • Sistema de feature flags para despliegues progresivos, permitiendo al equipo entregar a un subconjunto de usuarios antes de un lanzamiento completo.
  • 179 archivos de migracion SQL con pruebas de base de datos pgTAP, asegurando que los cambios de esquema nunca rompan datos de produccion.
  • Distribucion de ganancias y referidos en dos pasos via trabajos en segundo plano de BullMQ, procesando pagos de forma asincrona sin bloquear el hilo principal.

Decisiones tecnicas

Por que elegimos este stack

React 19 + Vite 6

Cinco portales comparten una base de codigo React. La federacion de modulos de Vite mantiene los tamanos de bundle pequenos por portal. Las funciones concurrentes de React 19 permiten al dashboard renderizar analitica de fondos sin congelar la UI durante grandes consultas de datos.

Hono en Fly.io

Hono ejecuta la capa API. Arranca en menos de 50ms, lo cual importa para el modelo scale-to-zero de Fly.io. Los arranques en frio ocurren; necesitan ser rapidos. El sistema de middleware de Hono maneja auth, limitacion de tasa y validacion de requests en una cadena componible.

Supabase + Upstash Redis

Supabase proporciona Postgres, primitivas de auth y suscripciones Realtime para el chat de soporte. Upstash Redis maneja cache de sesiones y limitacion de tasa en el edge. Ambos servicios escalan sin sobrecarga operativa.

NUMERIC(30,8) + decimal.js

El tipo Number nativo de JavaScript pierde precision por encima de 2^53. Para una plataforma que gestiona $10M+ en activos cripto, eso es inaceptable. Almacenamos todos los valores monetarios como NUMERIC(30,8) en Postgres y usamos decimal.js para cada calculo en la capa de aplicacion. La aritmetica de punto flotante nunca toca el dinero.

React 19 Vite 6 Hono TypeScript Tailwind CSS v4 shadcn/ui TanStack Query Supabase Upstash Redis BullMQ decimal.js Cloudflare Pages Fly.io NOWPayments Sumsub pgTAP

Resultados

Numeros de produccion

$10M+

activos bajo gestion en la plataforma

200K+

usuarios registrados en todos los portales

179

migraciones SQL con pruebas pgTAP

5

portales basados en roles en una base de codigo

Contacto

Inicia una conversacion

Cuentanos sobre tu proyecto. Responderemos en 24 horas con un plan claro, un cronograma estimado y un rango de precios.

Correo electronico

hello@savibm.com

Ubicacion

EAU e India