Un software TPV gratuito y de código abierto enfocado a la hostelería.
Reportar Bug
·
Solicitar función
·
Ver web
Tabla de contenidos
FreeTPV es una aplicación de punto de venta (TPV) de escritorio, gratuita y de código abierto, pensada para negocios de hostelería como bares, restaurantes y cafeterías.
Funciona completamente en local, sin necesidad de conexión a internet ni suscripciones. Los datos se almacenan en una base de datos SQLite en el propio equipo.
- 🔐 Sistema de usuarios con contraseñas cifradas mediante bcrypt y roles (Admin / Camarero)
- 🛍️ Gestión de productos y categorías con imágenes, precios, IVA y estado
- 🧾 Pantalla de ventas con cobro en efectivo o tarjeta e impresión de tickets ESC/POS
- ⚙️ Configuración completa — datos de empresa, ticket, impresora y apariencia
- 🎨 Múltiples temas (Primer Light/Dark, Nord, Cupertino, Dracula)
- 💾 Copias de seguridad de la base de datos
- 📋 Logs automáticos con rotación diaria
| Tecnología | Uso |
|---|---|
| Java 25 | Lenguaje principal |
| JavaFX 26 | Interfaz gráfica |
| SQLite (JDBC) | Base de datos local |
| AtlantaFX | Tema y estilos de UI |
| Ikonli / FontAwesome 5 | Iconos |
| bcrypt | Cifrado de contraseñas |
| escpos-coffee | Impresión de tickets ESC/POS |
| SLF4J + Logback | Sistema de logs |
| Maven | Gestión de dependencias y build |
FreeTPV/
├── landing/ # Página web con Next.js + Tailwind CSS
├── src/
│ └── main/
│ ├── java/
│ │ ├── module-info.java
│ │ └── com/mateo/freetpv/
│ │ ├── controller/ # Controladores de JavaFX
│ │ ├── dao/ # Acceso a la base de datos
│ │ ├── model/ # Modelos de datos
│ │ ├── service/ # Lógica de negocio
│ │ └── util/ # Utilidades generales
│ │
│ └── resources/
│ └── com/mateo/freetpv/
│ ├── images/ # Recursos gráficos
│ └── view/ # Vistas FXML
│
├── pom.xml
├── mvnw
├── mvnw.cmd
└── README.md
- Ve a la página de Releases y descarga el instalador
.exede la última versión. - Ejecuta el instalador y sigue los pasos.
- Abre FreeTPV desde el acceso directo del escritorio o el menú de inicio.
- En el primer arranque, crea tu usuario administrador.
No es necesario tener Java instalado. El instalador incluye todo lo necesario.
Requisitos previos:
- Java 25 o superior
- Maven 3.9 o superior
# Clona el repositorio
git clone https://github.com/2844dev/FreeTPV.git
cd FreeTPV
# Compila y empaqueta
./mvnw clean packagePara ejecutarlo desde IntelliJ IDEA, añade estas opciones de VM en la configuración de ejecución:
--enable-native-access=org.xerial.sqlitejdbc
--enable-native-access=javafx.graphics
Ventas |
Cobro |
Productos |
Ajustes |
También hay capturas en modo oscuro disponibles en la web del proyecto.
- Pantalla de login
- Contraseñas cifradas con bcrypt
- Pantalla de creación del primer usuario administrador
- Base de datos SQLite local (sin internet)
- Gestión de empleados
- Tabla de usuarios con búsqueda y filtros
- Creación y edición de usuarios
- Roles personalizables con permisos
- Gestión de productos
- Creación y edición de productos con imagen, precio e IVA
- Filtros por categoría, estado y favorito
- Gestión de categorías
- Pantalla de ventas
- Cobro en efectivo y tarjeta
- Impresión de tickets ESC/POS
- Historial de ventas
- Configuración completa (empresa, ticket, impresora, apariencia)
- Múltiples temas visuales
- Logs automáticos con rotación diaria
- Copias de seguridad
- Instalador
.exepara Windows (GitHub Actions) - Gestión de mesas y zonas
- Gestión de clientes
- Gestión de stock
Consulta los issues abiertos para ver el estado de las funciones propuestas y los errores conocidos.
Las contribuciones son bienvenidas y muy apreciadas. Si tienes una sugerencia, haz un fork del repositorio y abre una pull request. También puedes abrir un issue con la etiqueta correspondiente.
No olvides darle una estrella al proyecto si te ha resultado útil. ¡Gracias!
- Haz un fork del proyecto
- Crea tu rama de función (
git checkout -b feature/NuevaFuncion) - Haz commit de tus cambios (
git commit -m 'Añade NuevaFuncion') - Sube la rama (
git push origin feature/NuevaFuncion) - Abre una Pull Request
Distribuido bajo la licencia MIT. Consulta LICENSE para más información.
- Repositorio: https://github.com/2844dev/FreeTPV
- Discord: @2844



