Documentación Técnica

Sistema de Gestión de Gastos, Ingresos, Presupuestos y Recurrentes

Requisitos del Servidor

Para garantizar el correcto funcionamiento del sistema, el entorno de alojamiento debe cumplir con las siguientes especificaciones:

  • Servidor Web: Apache o Nginx.
  • Lenguaje: PHP 8.0 o superior.
  • Base de Datos: MySQL 5.7+ o MariaDB 10.2+.
  • Extensión PHP: mysqli (Conexión a BD).
  • Extensión PHP: mbstring (Manejo de caracteres).
  • Extensión PHP: json (Respuestas API).
Guía de Instalación Rápida

El sistema cuenta con un instalador automatizado que configura la base de datos y la conexión en pocos segundos.

1
Subir los archivos

Sube todo el contenido del proyecto al directorio público de tu servidor web (ej. htdocs, public_html o /var/www/html).

2
Permisos de escritura

Asegúrate de que el archivo config.php en la raíz tenga permisos de escritura (chmod 666 o 775) para que el instalador pueda guardar las credenciales.

3
Ejecutar el Instalador

Abre tu navegador web y dirígete a la ruta de instalación:
http://tu-dominio.com/install/

4
Configurar la Base de Datos

Ingresa los datos de tu servidor MySQL (Host, Usuario, Contraseña y Nombre de la Base de Datos). El instalador creará la base de datos automáticamente si no existe.

Credenciales por Defecto

Utiliza estos datos para tu primer inicio de sesión como Administrador:

Usuario / Correo: admin@finanzaspro.com
Contraseña: admin123
Se recomienda cambiar esta contraseña inmediatamente.
Configuración de Correo

El sistema utiliza la función nativa de PHP para enviar correos (no requiere SMTP externo). Puedes configurar el remitente durante la instalación o editando config.php:

  • MAIL_FROM: Dirección de correo que aparecerá como remitente.
  • MAIL_FROM_NAME: Nombre que aparecerá como remitente (ej. FinanzasPro).

Estas constantes son esenciales para las notificaciones y recuperación de cuentas.

Estructura de Archivos

Resumen de los directorios y archivos principales del proyecto:

/
├── api/                    # Endpoints del backend (auth, gastos, ingresos, presupuestos, recurrentes)
├── css/                    # Hojas de estilo personalizadas
├── js/                     # Scripts del frontend (lógica AJAX y UI)
├── install/                # Directorio del instalador automatizado
│   ├── index.php           # Interfaz del instalador
│   └── database.sql        # Esquema de la base de datos
├── docs/                   # Documentación del sistema
├── config.php              # Configuración de conexión y constantes
├── index.php               # Página de Login
├── dashboard.php           # Panel principal de métricas
├── categorias.php          # Gestión de categorías de gastos e ingresos
├── gastos.php              # Registro y listado de gastos
├── ingresos.php            # Registro y listado de ingresos
├── presupuestos.php        # Control de presupuestos mensuales
├── recurrentes.php         # Gestión de transacciones automáticas
└── usuarios.php            # Administración de usuarios (Admin)