Skip to content

Repository files navigation

SimplePOS

Sistema de Punto de Venta Open Source

Sistema web de gestión de ventas, compras e inventario para negocios minoristas con soporte multi-sucursal.

PHPMySQLBootstrapLicense: MIT


Capturas de pantalla

Dashboard

Panel de control con métricas en tiempo real: ventas del día, semana y mes, mejores clientes y productos más vendidos.

Dashboard


Registro de ventas

Flujo completo de venta: búsqueda de productos, aplicación de descuentos por ítem y selección de múltiples métodos de pago.

Ventas


Inventario

Listado de artículos por sucursal con indicadores visuales de bajo stock (≤ 10 unidades).

Inventario


Ticket de venta (PDF)

Comprobante generado automáticamente al cerrar una venta, listo para imprimir o compartir.

Ticket PDF

Características

  • 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).

Tecnologías

ComponenteTecnología
BackendPHP 7+ (MySQLi)
Base de datosMySQL / MariaDB
FrontendBootstrap 3.3.7 + AdminLTE
JavaScriptjQuery 3, DataTables, Chart.js
Reportes PDFFPDF 1.81
ServidorApache (XAMPP / LAMPP)

Requisitos

  • XAMPP / LAMPP con PHP y MySQL habilitados
  • PHP 7.4 o superior
  • MySQL 5.7 o superior

Instalación

1. Clonar el repositorio

git clone https://github.com/WorkTeam01/SimplePOS.git /opt/lampp/htdocs/SimplePOS

2. 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.sql

3. Configurar la conexión

Copiar el archivo de ejemplo y ajustar los valores según tu entorno:

cp .env.example .env
DB_HOST=localhostDB_NAME=simpleposDB_USERNAME=rootDB_PASSWORD=PRO_TIMEZONE=UTC

4. Iniciar el servidor

sudo /opt/lampp/lampp start

5. Acceder al sistema

http://localhost/SimplePOS/

Credenciales por defecto:

CampoValor
Usuario (N° documento)admin
Contraseñaadmin123

⚠️ Cambia la contraseña del admin después del primer inicio de sesión.


Solución de problemas

La página no carga Verifica que LAMPP esté activo: sudo /opt/lampp/lampp status. Si Apache o MySQL están detenidos, reinicia con sudo /opt/lampp/lampp restart.

Error de conexión a la base de datos Confirma que la base de datos simplepos fue importada correctamente y que las credenciales en el archivo .env coinciden con tu entorno.

Imágenes de productos no se muestran Verifica que las carpetas files/productos/ y files/usuarios/ tengan permisos de escritura: chmod -R 755 files/.


Estructura del proyecto

SimplePOS/
├── config/ # Configuración de BD, autenticación 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ódulos

MóduloDescripción
EscritorioPanel de control con métricas y analíticas
ArtículosGestión de productos e inventario
CategoríasClasificación de productos
VentasRegistro y anulación de ventas
ComprasÓrdenes de compra a proveedores
TraspasosTransferencia de stock entre sucursales
ClientesAdministración de clientes
ProveedoresAdministración de proveedores
UsuariosGestión de cuentas del sistema
Perfiles y PermisosControl de acceso por rol
Empresa y SucursalesConfiguración del negocio

Contribuir

Las contribuciones son bienvenidas. Para cambios significativos, abre un issue primero para discutir qué te gustaría modificar.

  1. Haz fork del repositorio
  2. Crea una rama para tu feature (git checkout -b feature/nueva-funcionalidad)
  3. Haz commit de tus cambios (git commit -m 'feat: agregar nueva funcionalidad')
  4. Haz push a la rama (git push origin feature/nueva-funcionalidad)
  5. Abre un Pull Request

Colaboradores


Jandres25

carlosguerra12

Licencia


Hecho con ❤️ por WorkTeam01

About

Open-source POS system with multi-branch support, role-based access control, and PDF reports. Built with PHP & MySQL.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages