Sistema web de gestión de ventas, compras e inventario para negocios minoristas con soporte multi-sucursal.
- Ventas: Registro con múltiples productos, descuentos por ítem y múltiples métodos de pago por transacción.
- Compras: Órdenes de compra a proveedores con actualización automática de stock.
- Inventario: Control de stock por sucursal con alertas de bajo stock (≤ 10 unidades).
- Traspasos: Transferencia de stock entre sucursales.
- Clientes y Proveedores: Administración unificada de personas.
- Usuarios y Permisos: Roles con control de acceso por módulo.
- Reportes PDF: Ventas por rango de fechas, inventario y tickets de venta.
- Escritorio analítico: Métricas en tiempo real (ventas del día/semana/mes, mejores clientes, productos más vendidos).
| Componente | Tecnología |
|---|---|
| Backend | PHP 7+ (MySQLi) |
| Base de datos | MySQL / MariaDB |
| Frontend | Bootstrap 3.3.7 + AdminLTE |
| JavaScript | jQuery 3, DataTables, Chart.js |
| Reportes PDF | FPDF 1.81 |
| Servidor | Apache (XAMPP / LAMPP) |
- XAMPP / LAMPP con PHP y MySQL habilitados
- PHP 7.4 o superior
- MySQL 5.7 o superior
1. Clonar el repositorio
git clone https://github.com/WorkTeam01/SimplePOS.git /opt/lampp/htdocs/SimplePOS2. Importar la base de datos
mysql -u root -p -e "CREATE DATABASE simplepos CHARACTER SET utf8 COLLATE utf8_general_ci;"
mysql -u root -p simplepos < simplepos.sql3. Configurar la conexión
Editar config/global.php con los datos de tu entorno:
define('DB_HOST', 'localhost');
define('DB_NAME', 'simplepos');
define('DB_USERNAME', 'root');
define('DB_PASSWORD', '');
define('PRO_TIMEZONE', 'UTC'); // Cambia a tu zona horaria si es necesario4. Iniciar el servidor
sudo /opt/lampp/lampp start5. Acceder al sistema
http://localhost/SimplePOS/
Credenciales por defecto:
| Campo | Valor |
|---|---|
| Usuario (N° documento) | admin |
| Contraseña | admin123 |
⚠️ Cambia la contraseña del admin después del primer inicio de sesión.
SimplePOS/
├── config/ # Configuración de BD y helpers
├── modelos/ # Clases de modelo (lógica de negocio y consultas SQL)
├── ajax/ # Controladores AJAX (punto de entrada de peticiones)
├── vistas/ # Plantillas HTML/PHP
│ └── scripts/ # JavaScript por módulo
├── reportes/ # Generación de reportes PDF (FPDF)
├── fpdf181/ # Librería FPDF
├── public/ # Assets estáticos (CSS, JS, imágenes, plugins)
└── files/ # Archivos subidos por el usuario
├── productos/ # Imágenes de productos
└── usuarios/ # Fotos de perfil
| Módulo | Descripción |
|---|---|
| Escritorio | Panel de control con métricas y analíticas |
| Artículos | Gestión de productos e inventario |
| Categorías | Clasificación de productos |
| Ventas | Registro y anulación de ventas |
| Compras | Órdenes de compra a proveedores |
| Traspasos | Transferencia de stock entre sucursales |
| Clientes | Administración de clientes |
| Proveedores | Administración de proveedores |
| Usuarios | Gestión de cuentas del sistema |
| Perfiles y Permisos | Control de acceso por rol |
| Empresa y Sucursales | Configuración del negocio |
Este proyecto nació como sistema POS para uno de mis primeros clientes. Llegó a producción, pero el cliente no mostró interés en utilizarlo, así que decidí publicarlo como open source como recuerdo de ese proceso y del trabajo junto a mi colaborador Carlos.
![]() Jandres25 |
![]() carlosguerra12 |
Hecho con ❤️ por WorkTeam01

