Python version 3.13 or higher required Built with PySide6 version 6.9.1 Django framework latest version SQLAlchemy ORM version 2.0.41 Licensed under GPL version 3

Comprehensive Project Documentation

Learn More

Executive Summary


SaleFlex is a cutting-edge, open-source retail automation ecosystem designed to meet the evolving needs of modern retail businesses. The system consists of two primary components that work in harmony to provide a comprehensive retail management solution:

  • SaleFlex.PyPOS: A Python-based touch screen point-of-sale (POS) application
  • SaleFlex.GATE: A Django-based centralized management system for multi-location operations

Key Value Propositions

Elastic and Modular Design

Fully customizable system architecture that adapts to any retail environment

Cloud-Based Management

Remote control and monitoring capabilities for business owners and managers

Scalable Infrastructure

Seamlessly grows with your business from single store to enterprise-level operations

Open-Source Freedom

Complete customization capabilities with no vendor lock-in

Project Overview


Vision Statement

To provide retail businesses with a flexible, scalable, and comprehensive automation solution that adapts to their unique needs while enabling growth and operational efficiency.

Mission

SaleFlex addresses one of the biggest challenges facing retail businesses today—the need for flexibility in an ever-changing market. Unlike traditional retail automation systems, SaleFlex is entirely elastic and modular.

Development Status

⚠️ Important Notice: Both projects are currently under active development and not yet production-ready.
  • SaleFlex.PyPOS: Version 1.0.0b1 (Beta)
  • SaleFlex.GATE: Initial development phase

System Architecture


High-Level Architecture

┌─────────────────────────────────────────────────────────────────┐
│                     SaleFlex Ecosystem                         │
├─────────────────────────────────────────────────────────────────┤
│  ┌─────────────────┐              ┌─────────────────┐          │
│  │  SaleFlex.GATE  │◄────────────►│ SaleFlex.PyPOS  │          │
│  │  (Centralized   │              │ (POS Terminal)  │          │
│  │   Management)   │              │                 │          │
│  └─────────────────┘              └─────────────────┘          │
│           │                                │                   │
│           ▼                                ▼                   │
│  ┌─────────────────┐              ┌─────────────────┐          │
│  │   ERP Systems   │              │   Hardware      │          │
│  │   Integration   │              │   Peripherals   │          │
│  └─────────────────┘              └─────────────────┘          │
└─────────────────────────────────────────────────────────────────┘

Data Synchronization

Real-time bi-directional data flow between POS terminals and central management

API-Based Communication

RESTful API architecture ensuring secure and reliable data exchange

Core Components


SaleFlex.PyPOS - Point of Sale Application

SaleFlex.PyPOS is a modern, Python-based POS system built with PySide6 (Qt framework), offering a touch-optimized interface with cross-platform compatibility and robust database support.

Key Features

  • Multi-Payment Processing
  • Receipt & Invoice Generation
  • Real-Time Inventory Management
  • Customer Relationship Management
  • Analytics & Reporting
  • Employee Management
  • Returns & Exchanges
  • Loyalty Programs

SaleFlex.GATE - Centralized Management System

SaleFlex.GATE serves as the central nervous system of the SaleFlex ecosystem, providing comprehensive management capabilities for multi-location retail operations through a Django-based web platform.

Key Capabilities

  • Multi-Store Management
  • Real-Time Monitoring
  • ERP Integration
  • Cloud-Based Access
  • Data Synchronization
  • Advanced Analytics

Technical Specifications


SaleFlex.PyPOS

  • Python: 3.13 or higher
  • GUI Framework: PySide6 6.9.1 (Qt-based)
  • ORM: SQLAlchemy 2.0.41
  • HTTP Client: Requests 2.32.4
  • OS: Linux, Windows (macOS support planned)

SaleFlex.GATE

  • Framework: Django (Latest stable version)
  • API: Django REST Framework
  • Database: PostgreSQL (recommended), MySQL, SQLite
  • Deployment: Docker containerization support
  • Web Server: Nginx/Apache compatible

Database Support

Both components support multiple database engines:

  • SQLite (default for PyPOS)
  • PostgreSQL (recommended for GATE)
  • MySQL/MariaDB
  • Oracle Database
  • Microsoft SQL Server
  • Firebird
  • Sybase

Business Applications


Target Industries

Retail Stores

  • • Complete Retail Management
  • • Category Management
  • • Multi-location Support
  • • Seasonal Management

Restaurants & Food Service

  • • Fast Food Operations
  • • Full-Service Restaurants
  • • Recipe Management
  • • Kitchen Display Systems

Specialty Retail

  • • Fashion & Boutiques
  • • Grocery & Supermarkets
  • • Electronics Stores
  • • Pharmacy & Healthcare

Business Benefits

Operational Efficiency

Streamlined workflows and automated processes

Financial Management

Real-time reporting and cost control

Customer Experience

Faster transactions and loyalty programs

Security & Compliance

PCI DSS compliant with advanced security

Development Roadmap


Phase 1: Foundation (Current - Q2 2025)

SaleFlex.PyPOS
  • ✅ Project Structure & Database Layer
  • ✅ Database Structure & Models
  • 🔲 UI Foundation & PySide6 Integration
  • 🔲 Configuration Management System
  • 🔲 Basic POS Transaction Flow
SaleFlex.GATE
  • 🔲 Initial Database Structure
  • 🔲 Django Project Setup
  • 🔲 REST API Framework
  • 🔲 Authentication System

Phase 2: Core Functionality (Q3-Q4 2025)

SaleFlex.PyPOS
  • 🔲 Payment Processing Module
  • 🔲 Inventory Management System
  • 🔲 Receipt Printing & Documentation
  • 🔲 Customer Management
  • 🔲 Basic Reporting
SaleFlex.GATE
  • 🔲 Multi-POS Management Interface
  • 🔲 Data Synchronization Layer
  • 🔲 Basic Dashboard & Reporting
  • 🔲 User Management System

Phase 3: Hardware Integration (Q1 2026)

  • 🔲 Payment Device Integration
  • 🔲 Peripheral Device Support
  • 🔲 Hardware Abstraction Layer
  • 🔲 Device Configuration Management

Phase 4: Advanced Features (Q2-Q3 2026)

  • 🔲 Advanced Analytics & BI
  • 🔲 Loyalty Programs & Campaigns
  • 🔲 Employee Management & Time Tracking
  • 🔲 Advanced Inventory Features

Installation & Deployment


SaleFlex.PyPOS Installation

Prerequisites

  • • Python 3.13 or higher
  • • Git (for cloning repository)
  • • Virtual environment support

Installation Steps

# 1. Clone the repository
git clone https://github.com/SaleFlex/SaleFlex.PyPOS.git
cd SaleFlex.PyPOS

# 2. Create virtual environment
python3 -m venv venv
source venv/bin/activate

# 3. Install dependencies
pip install -r requirements.txt

# 4. Run the application
python saleflex.py

SaleFlex.GATE Installation

Prerequisites

  • • Python 3.9 or higher
  • • Django 4.0 or higher
  • • Database server (PostgreSQL recommended)
  • • Web server (Nginx/Apache)

Installation Steps

# 1. Clone the repository
git clone https://github.com/SaleFlex/SaleFlex.GATE.git
cd SaleFlex.GATE

# 2. Create virtual environment
python3 -m venv venv
source venv/bin/activate

# 3. Install dependencies
pip install -r requirements.txt

# 4. Run migrations
python manage.py migrate

# 5. Create superuser
python manage.py createsuperuser

# 6. Start development server
python manage.py runserver

Hardware Integration


Payment Processing

Supported Methods
  • • Cash Transactions
  • • Credit/Debit Cards
  • • Mobile Payments
  • • Digital Wallets
  • • Gift Cards
Terminal Integration
  • • Ingenico (iCT, iWL, Move series)
  • • Verifone (VX, P, C series)
  • • PAX (A, D, S series)
  • • Custom API Integration

Receipt Printing

Printer Types
  • • Thermal Printers (58mm, 80mm)
  • • Impact Printers
  • • Label Printers
  • • A4 Printers
Communication
  • • Serial (RS-232)
  • • USB
  • • Ethernet
  • • Bluetooth

Barcode Scanning

Scanner Types
  • • Handheld Scanners
  • • Presentation Scanners
  • • Fixed Mount
  • • Mobile Scanners
Symbologies
  • • 1D: UPC, EAN, Code 128, Code 39
  • • 2D: QR Code, Data Matrix, PDF417
  • • Specialty: ISBN, ISSN, postal codes

Contributing & Support


Development Team

Ferhat Mousavi - Lead Developer and Founder of SaleFlex

Ferhat Mousavi

Lead Developer

How to Contribute

  1. Fork the Repository: Create your own fork of the project
  2. Create Feature Branch: git checkout -b feature/your-feature-name
  3. Make Changes: Implement your feature or bug fix
  4. Write Tests: Ensure your code is properly tested
  5. Submit Pull Request: Create a detailed PR with description

Community Channels

  • GitHub Discussions: Technical discussions and Q&A
  • Discord Server: Real-time community chat
  • Stack Overflow: Tagged questions for technical help
  • Reddit Community: r/SaleFlex for general discussions

Financial Support

Your contributions enable continued development and new feature additions. Cryptocurrency donations are accepted at:

  • USDT (TRC20): 0xa5a87a939bfcd492f056c26e4febe102ea599b5b
  • BUSD (BEP20): 0xa5a87a939bfcd492f056c26e4febe102ea599b5b
  • Bitcoin (BTC): 184FDZ1qV2KFzEaNqMefw8UssG8Z57FA6F
  • Ethereum (ETH): 0xa5a87a939bfcd492f056c26e4febe102ea599b5b
  • Solana (SOL): Gt3bDczPcJvfBeg9TTBrBJGSHLJVkvnSSTov8W3QMpQf

The Future of Retail is Here

SaleFlex represents the future of retail automation—flexible, scalable, and completely customizable to meet the unique needs of any retail business.

Join us in revolutionizing retail automation. The future of retail is flexible, scalable, and open.