anti-gambling-trader-tw
Free open-source investment anti-fraud, trading statistics and automated trading program tools: default PaperBroker, provides 14 broker/exchange options; trade record analysis runs locally.
AI translation
Log in to manage your bank account and finances
AI summary · website content
FinanceJavaScript · CSSGitHub @salmaguiarr514OnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
The maker's introduction consists of the line above. Read the repository README for more details. Repository README ↗
Loading the full README.
Read the full README ↗App de homebanking estilo fintech, construida con Node.js + Express (backend), HTML/CSS/JS vanilla (frontend) y Supabase (Auth + PostgreSQL).
| Capa | Tecnología |
|---|---|
| Backend | Node.js + Express |
| Frontend | HTML, CSS, JS vanilla (sin frameworks) |
| Auth | Supabase Auth |
| Base de datos | Supabase PostgreSQL (pg pool) |
| Banco Central | https://centralbank.brocoly.cc/api — siempre x-environment: test |
| Cotizaciones | https://dolarapi.com/v1/dolares |
homebanking/
├── backend/
│ ├── src/
│ │ ├── app.js # Express app + rutas
│ │ ├── server.js # Entrypoint
│ │ ├── config/
│ │ │ └── db.js # Pool pg + initDb (crea tablas)
│ │ ├── middleware/
│ │ │ └── authMiddleware.js # Valida JWT Supabase
│ │ ├── controllers/
│ │ │ ├── authController.js
│ │ │ ├── cuentaController.js
│ │ │ ├── movimientoController.js
│ │ │ ├── transferenciaController.js
│ │ │ ├── reservaController.js
│ │ │ ├── prestamoController.js # ← Módulo Préstamos
│ │ │ ├── chatController.js
│ │ │ ├── cardController.js
│ │ │ └── mercadoController.js
│ │ ├── routes/
│ │ │ ├── authRoutes.js
│ │ │ ├── cuentaRoutes.js
│ │ │ ├── movimientoRoutes.js
│ │ │ ├── transferenciaRoutes.js
│ │ │ ├── reservaRoutes.js
│ │ │ ├── prestamoRoutes.js # ← Módulo Préstamos
│ │ │ ├── chatRoutes.js
│ │ │ ├── cardRoutes.js
│ │ │ └── mercadoRoutes.js
│ │ └── services/
│ │ └── bancoCentralService.js # Cliente BC API (siempre test)
│ ├── .env # Variables de entorno (no commitear)
│ └── package.json
└── frontend/
├── login.html
├── dashboard.html
├── app.js
└── styles.css
# Desde backend/
npm install
node server.js
# → http://localhost:3000
El servidor sirve el frontend como archivos estáticos. GET / redirige a /login.html.
DATABASE_URL=postgresql://... # URL de conexión Supabase
SUPABASE_URL=https://...
SUPABASE_SERVICE_KEY=...
BANCO_ENV=test # SIEMPRE test, nunca prod
Las tablas se crean automáticamente en initDb() al arrancar. No hay migraciones manuales.
| Tabla | Descripción |
|---|---|
cuentas | Cuentas ARS y USD de cada usuario |
movimientos | Historial de transacciones por cuenta |
transferencias | Transferencias inter-cuenta |
reservas | Metas de ahorro con fecha de vencimiento |
prestamos | Préstamos solicitados (amortización francesa) |
cards | Tarjetas Visa Débito virtuales |
prestamosid SERIAL PRIMARY KEY
usuario_id UUID → auth.users(id)
cuenta_acreditada_id INTEGER → cuentas(id)
monto NUMERIC(14,2)
cuotas INTEGER CHECK (IN (3, 6, 12, 24, 36))
tna NUMERIC(6,4)
cuota_mensual NUMERIC(14,2)
estado VARCHAR(20) DEFAULT 'activo' CHECK (IN ('activo','cancelado','saldado'))
fecha_solicitud TIMESTAMP DEFAULT NOW()
| Método | Ruta | Descripción |
|---|---|---|
| POST | /api/auth/register | Registro de usuario |
| POST | /api/auth/login | Login, devuelve JWT |
| POST | /api/auth/logout | Cierre de sesión |
| Método | Ruta | Descripción |
|---|---|---|
| GET | /api/cuentas | Lista cuentas del usuario |
| GET | /api/cuentas/saldo | Saldo de cada cuenta |
| POST | /api/cuentas/depositar | Depósito en cuenta ARS |
| POST | /api/cuentas/abrir | Abre cuenta USD (vía BC API) |
| POST | /api/cuentas/convertir | Conversión ARS ↔ USD |
| GET | /api/cuentas/buscar-usd/:valor | Busca cuenta USD por CBU o alias (local) |
| PUT | /api/cuentas/alias-usd | Cambia alias de cuenta USD |
| POST | /api/cuentas/transferir-usd | Transferencia USD (inter-banco vía BC) |
| Método | Ruta | Descripción |
|---|---|---|
| GET | /api/movimientos | Historial de movimientos |
| Método | Ruta | Descripción |
|---|---|---|
| POST | /api/transferencias | Transferencia ARS entre cuentas |
| GET | /api/transferencias/buscar/:cbu | Busca titular por CBU (BC API) |
| GET | /api/transferencias/alias/:alias | Busca titular por alias (BC API) |
| GET | /api/transferencias/sincronizar | Sincroniza transferencias recibidas desde BC |
| Método | Ruta | Descripción |
|---|---|---|
| GET | /api/prestamos | Lista préstamos del usuario |
| POST | /api/prestamos/solicitar | Solicita préstamo (acredita en ARS) |
| PUT | /api/prestamos/:id/cancelar | Cancela un préstamo activo |
Parámetros de POST /api/prestamos/solicitar:
{ "monto": 200000, "cuotas": 12 }
monto: entre $10.000 y $5.000.000cuotas: 3, 6, 12, 24 o 36Sistema de amortización: Francés (cuotas fijas). TNA = 95%, IVA sobre intereses = 21%.
Solo se permite un préstamo activo por usuario a la vez.
| Método | Ruta | Descripción |
|---|---|---|
| GET | /api/reservas | Lista reservas del usuario |
| POST | /api/reservas | Crea una reserva |
| DELETE | /api/reservas/:id | Elimina una reserva |
| Método | Ruta | Descripción |
|---|---|---|
| POST | /api/chat | Chat con asistente IA integrado |
| Método | Ruta | Descripción |
|---|---|---|
| GET | /api/cards | Obtiene tarjeta virtual del usuario |
| POST | /api/cards/emitir | Emite tarjeta Visa Débito virtual |
| POST | /api/cards/bloquear | Bloquea/desbloquea tarjeta |
| Método | Ruta | Descripción |
|---|---|---|
| GET | /api/mercado/cotizaciones | Cotizaciones del dólar (DolarAPI) |
Base URL: https://centralbank.brocoly.cc/api
Ambiente: siempre x-environment: test — nunca usar prod
Endpoints usados:
POST /accounts — crear cuenta USDPUT /persons/{cbu}/alias — asignar alias (limitación: falla para CBUs USD)POST /transactions — transferencia (funciona con CBUs USD aunque GET /persons los devuelva 404)GET /persons/{cbu} y GET /persons/alias/{alias} — lookup de titularEl simulador en dashboard.html permite:
pool.on('error') evita que el proceso crashee.BANCO_ENV=test debe estar siempre presente en .env.localStorage para caché del avatar de usuario (clave por user.id)._dolares global y se refrescan cada 5 minutos.