Tus gastos se anotan solos.

Movo lee los correos que tu banco ya te envía (compras con tarjeta y SINPE Móvil) y los convierte en movimientos ordenados por categoría. Todo pasa en tu teléfono.

Para Costa Rica · BCR, BN, BAC, Davivienda y Banco Popular · Código abierto, licencia MIT

Cómo funciona Movo

Pagas como siempre.

Haces un SINPE Móvil o pasas la tarjeta en la app de tu banco. Movo nunca mueve dinero.

El banco te escribe.

Segundos después llega el correo de notificación. Antes se quedaba perdido en la bandeja.

Movo lee el correo.

Con permiso de solo lectura, encuentra el monto, el comercio, la fecha y el tipo de movimiento.

Queda anotado.

El gasto entra en su categoría y el resumen del mes se actualiza. Sin teclear nada.

  1. Recibido
  2. Leído
  3. Extraído
  4. Registrado

Cada compra con tarjeta y cada SINPE genera un correo del banco. Movo lo convierte en un movimiento con monto, comercio, fecha y categoría. Si corriges una categoría, la recuerda como regla.

Cerotecleo.

Gmail con permiso de solo lectura y búsqueda limitada a remitentes bancarios. Los correos se leen y se guardan en tu teléfono; el servidor nunca los recibe. Borras todo desde Ajustes cuando quieras.

Privadopor diseño.

Se instala desde el navegador como app, sin tienda. Una base SQLite vive dentro del teléfono y calcula el resumen del mes con SQL real, aunque no tengas señal.

Funcionasin señal.

BCR, BN, BAC, Davivienda y Banco Popular. Colones, dólares, euros y córdobas, con el tipo de cambio del BCCR. Los SINPE entre tus propias cuentas no cuentan como gasto.

Cincobancos.

Así se ve Movo

Probar la demo
Pantalla de inicio de Movo
El mes de un vistazo: gastado, presupuesto y categorías.

Hecha conpiezas abiertas.

El trabajo pesado ocurre en el teléfono. El servidor es mínimo: entrega la configuración, el tipo de cambio del BCCR y, si lo activas, guarda un respaldo de los movimientos ya extraídos.

Arquitectura: Gmail entrega los correos al teléfono; el teléfono los lee y guarda en SQLite; la API mínima usa Redis, MongoDB y el BCCR. Gmail API solo lectura Teléfono · PWA React · lector de correos service worker SQLite WebAssembly API Node Express · token de Google Redis caché efímera BCCR tipo de cambio MongoDB respaldo opcional

En tu teléfono

  • React 18 y Vite
  • SQLite en WebAssembly (sql.js)
  • Gmail API, solo lectura
  • PWA con service worker
  • Exportación a Excel con ExcelJS

En el servidor

  • Node.js con Express
  • Redis para caché y límites
  • MongoDB para el respaldo
  • Tipo de cambio del BCCR
  • Docker Compose y Caddy (HTTPS)

Cómo está ordenado

  • Arquitectura por capas: dominio, casos de uso, infraestructura y presentación
  • Pruebas de lector, SQLite, interfaz, API, Redis y MongoDB
  • Integración continua en GitHub Actions

100 %de precisión en monto, comercio, fecha y tipo, en 2000 correos de prueba

0,5 mspara guardar cada correo leído en SQLite

< 1 mspara calcular el resumen del mes

Librey gratis.

Movo es de acceso libre: código abierto con licencia MIT, sin anuncios, sin suscripción y sin vender datos. Puedes leer cada línea, instalarlo en tu propio servidor y proponer la plantilla de tu banco.

Instalar en tu servidor
git clone https://github.com/jbrown230/Movo.git
cd Movo
cp .env.example .env
docker compose up -d --build

Quiénes lo hicimos

Proyecto final del curso Tópicos Avanzados de Bases de Datos, Universidad Nacional de Costa Rica,
Grupo 1.

Abre el repositorio en GitHub: código, documentación y guía para desplegarlo. Clonar