Lab · Finanzas personales
Cupel (FinanceOS)
Una app de finanzas personales autoalojada que sincroniza las transacciones bancarias y pone primero el patrimonio neto y el avance de las metas.
- Estado
- En línea · privada
- Quién lo usa
- Andrew. Está hecha para admitir más de una cuenta, con inicio de sesión y cobros, pero hoy es su herramienta personal.
- Hecho con
- Node.js + Express · SQLite (un archivo por usuario) · Plaid · Stripe · Claude API · Capacitor · Render
El planificador de pagos de tarjetas, en su orden fijo
EjemploSueldo de ejemplo $1,200
- 1Colchón de seguridad$500 de $500 · lleno
- 2Pagos mínimos, cada tarjeta$180 de $180 · lleno
- 3Pagos adicionales$520 · lo que queda
Muestra el cálculo: 1,200 − 500 colchón − 180 mínimos = 520 adicionales
Detección de cargos duplicados Ejemplo
Patrimonio neto en el tiempo Ejemplo
El problema
La mayoría de las apps de finanzas empiezan por las categorías de gasto. Cupel empieza por el panorama de largo plazo, el patrimonio neto y las metas, y trata el flujo de caja, las deducciones fiscales y la deuda como las palancas que lo mueven. La idea es tener números lo bastante confiables como para actuar con ellos.
Cómo funciona
Sincronización bancaria
Las cuentas se conectan con Plaid Link, así que la app nunca ve una contraseña bancaria. Las transacciones se sincronizan de forma incremental cuando Plaid avisa que hay datos nuevos.
Flujo de caja que separa lo seguro de lo probable
Los ingresos “garantizados” se mantienen aparte de los estimados, así que las decisiones de pagos obligatorios solo cuentan con dinero seguro.
Planificador de pagos de tarjetas
Trabaja en un orden fijo: colchón de seguridad, luego pagos mínimos, luego pagos adicionales, y muestra el cálculo.
Metas con veredicto
Cada meta muestra el monto mensual necesario frente a lo que de verdad sobra, y señala las metas que compiten por el mismo dólar.
Patrimonio neto en el tiempo
Una foto diaria, en la que agregar o quitar una cuenta queda registrado para que nunca se lea como ganancia o pérdida.
Cargos duplicados
Detecta cobros dobles entre transacciones pendientes y registradas, reembolsos y variantes del nombre del comercio.
Además
Presupuestos, detección de suscripciones y aumentos de precio, un planificador de jubilación y alertas push limitadas a lo urgente y accionable.
Dónde entra la IA
- Preclasificación de deducciones fiscales: cada transacción se clasifica como probable / posible / no para revisión, nunca se declara.
- “Ask” responde preguntas sobre tus propios datos; “Assistant” convierte un escenario en lenguaje cotidiano en cambios propuestos al plan.
- Todas las llamadas a Claude pasan por un solo wrapper con reintentos, un tope de gasto diario y registro de uso.
Salvaguardas
Cerrada por defecto
Cada ruta requiere inicio de sesión, y la app se niega a arrancar sin una contraseña configurada.
Tokens bancarios cifrados
Los tokens de acceso bancario se guardan cifrados (AES-256-GCM) con una clave distinta por usuario.
La IA nunca hace las cuentas
Las herramientas de Ask son de solo lectura, la base de datos calcula cada cifra y los cambios de Assistant requieren un clic explícito.
No es asesoría fiscal
Los niveles de deducción son una preclasificación para que una persona la revise. Nada se declara automáticamente.
Notas de ingeniería
Un archivo de base de datos por usuario
En lugar de una columna de usuario en cada tabla. Con cientos de consultas escritas a mano, el límite de un archivo no se puede olvidar, y exportar o borrar se vuelve una operación de archivos.
“El modelo elige la consulta, la base de datos calcula, el modelo explica”
Así, cada número en una respuesta de la IA sale de la base de datos, no del modelo.
Inicio de sesión nativo
Las apps del teléfono no pueden guardar una cookie web, así que la misma sesión firmada viaja como bearer token solo hacia orígenes de la app en la lista permitida.
Reglas de la App Store desde el diseño
No hay enlaces de compra dentro de la app nativa, y la función experimental de trading se elimina de las versiones para clientes; la compilación falla si queda cualquier rastro.
Qué sigue
Las versiones para iOS y Android existen, pero no se han enviado. Lo siguiente es el papeleo para las tiendas: una entidad legal, cuentas de desarrollador y páginas públicas de privacidad y términos.