Download Plexus POS System
Get the best Point of Sale software for your business. Plexus helps you manage inventory, track sales, monitor expenses, and generate professional reports — all with 100% local data storage.
Security Notice: AlpherTech will never contact you first via phone. Always download from official sources only.
Under Construction: Currently, only Windows v3.2.0 is available. Other platforms are under development. There will be no Linux version.
Windows Installer
Inno Setup installer for Windows 10/11 (64-bit). Includes VC++ Redistributable.
macOS
Native build for macOS 12+ (Intel & Apple Silicon).
Android
APK for Android 8.0+ (ARM64). For tablets and mobile POS.
iOS
IPA for iOS 15+. TestFlight or enterprise distribution.
Web App
Progressive Web App. Runs in any modern browser.
Installation Instructions
- Download the Windows installer from the option above.
- Run the installer and follow the setup wizard prompts.
- Launch Plexus and complete the initial security setup (PIN, Pattern, or Password).
- Configure your business details, currency (default: UGX), and tax settings.
- Start managing your business — all data is stored locally on your device.
Why Choose Plexus POS?
Point of Sale
Fast, intuitive sales UI for retail and restaurants.
Inventory
Multi-warehouse stock with low-stock alerts.
Sales Tracking
Daily, weekly, monthly analytics & reports.
Expenses
Record and categorize business expenses.
Receipt Printing
ESC/POS thermal printer support.
Reports
Trial balance, P&L, balance sheet PDFs.
Multi-User
Role-based access for managers & cashiers.
Local Storage
All data on device — no cloud, no internet.
Helpline & Support
Development Team
Support Information
- Hours: Monday – Friday, 8:00 AM – 6:00 PM EAT
- Response Time: Within 24 hours on business days
- Emergency: For critical outages, call the helpline directly
- Regions Served: East Africa (Uganda, Kenya, Tanzania, Rwanda, Burundi)
Version Control
- Multi-warehouse inventory management
- Enhanced receipt printing with ESC/POS support
- PDF report generation for weekly reports
- Customer payment tracking with outstanding balances
- Improved security: PIN, Pattern, and Password lock options
- Session lock via F5 key shortcut
- Performance optimizations for large product catalogs
- Purchase order management system
- Supplier database and management
- Expense tracking module
- Chart of accounts and journal entries
- Trial balance, P&L, and balance sheet reports
- Complete UI overhaul with new dashboard
- Multi-user support with role-based access
- Backup and restore functionality
- System health monitoring
- SQLite FFI support for desktop platforms
- Initial POS implementation
- Product and category management
- Basic sales history
- Customer management
Security & Licensing
- License: Proprietary — All rights reserved by AlpherTech
- Copyright: © 2026 AlpherTech
- App ID: com.alphertech.plexus
- Data Storage: 100% Local (SQLite) — No cloud sync
- Security: PIN/Pattern/Password lock, session encryption, crash logging
System Requirements
Plexus runs efficiently on most modern Windows computers. Check the requirements below to ensure compatibility.
Windows (Available)
OS
Windows 10/11 (64-bit)
Processor
Intel Core i3 / AMD Ryzen 3 or better
RAM
4 GB minimum, 8 GB recommended
Storage
200 MB available space
Display
1280×720 minimum, 1920×1080 recommended
Prerequisites
Visual C++ Redistributable (bundled)
Platform Availability: Currently, only Windows is supported. macOS, Android, and iOS versions are under development. There will be no Linux version.
Technology Stack
Framework
Flutter 3.x (Dart)
State Mgmt
Provider (ChangeNotifier)
Database
SQLite (sqflite + FFI)
pdf + printing packages
Excel
excel package
Receipts
ESC/POS thermal printers
1. System Overview
Plexus is a comprehensive, locally-run Point of Sale (POS) and Business Management System built by AlpherTech. It combines retail checkout, inventory control, accounting, HR, project management, and reporting into a single desktop application.
Designed for small to medium businesses — agro-input shops, retail stores, and service providers — that need fast, offline-capable transaction processing alongside full business administration.
Key Capabilities
- Fast POS checkout with barcode scanning and category filtering
- Full inventory management with low-stock alerts and expiry tracking
- Customer credit accounts and payment tracking
- Multi-user security with role-based access (Admin, Manager, Cashier)
- Accounting with chart of accounts, journal entries, financial statements
- Purchase order management and stock receiving
- Employee management, leave, shifts, and reimbursements
- Project tracking with tasks, time entries, and attachments
- Multi-warehouse support with stock transfers
- Internal memos and email queue
- Rich reporting: sales, products, customers, Z-reports, weekly PDFs
- Local SQLite database with crash-safe initialization
2. Architecture & Technology
Plexus is built with Flutter for a native desktop experience on Windows (with iOS, Android, macOS, and Linux supported). Data is stored locally in a SQLite database via the sqflite plugin, with Provider for state management.
Core Libraries
| Library | Purpose |
|---|---|
| Flutter / Material | UI framework and components |
| sqflite / sqflite_common_ffi | Local relational database |
| Provider | State management and dependency injection |
| pdf / printing | PDF generation and printing |
| excel | Spreadsheet export |
| esc_pos_printer_lts | ESC/POS thermal receipt printing |
| shared_preferences | Persistent key-value settings |
| crypto | Password hashing and security |
| intl | Currency, date, and number formatting |
| path_provider / file_picker | File system access and backups |
| window_manager | Desktop window control |
Data Flow
All business entities (products, sales, customers, etc.) are managed through dedicated Provider classes that wrap SQLite queries. The UI observes these providers and rebuilds automatically when data changes. Transaction logs and audit records are written to the database for traceability.
3. Installation & Setup
Plexus runs as a standalone desktop application. The installer package is built with inno_bundle.
Requirements
- Windows 10 or later (64-bit recommended)
- 4 GB RAM minimum, 8 GB recommended
- 500 MB disk space
- Thermal receipt printer (optional, for POS printing)
Installation Steps
- Run the installer
Plexus Setupand follow the wizard. - Launch Plexus from the Start Menu or desktop shortcut.
- On first run, the Security Setup screen appears. Create your admin account and choose a lock method (PIN, Pattern, or Password).
- Complete the security setup to enter the main application.
4. Security & Authentication
Plexus enforces strict security to protect business data. Every user action requiring elevated privileges triggers a password confirmation.
User Roles
| Role | Permissions |
|---|---|
| Admin | Full access to all modules, user management, and system settings |
| Manager | Access to POS, reports, inventory, most management screens except payroll and system settings |
| Cashier | POS access and sales viewing only |
Lock Methods
- Password — Traditional username and password authentication.
- PIN — Numeric PIN for fast unlock.
- Pattern — Android-style pattern lock.
- Security Question — Backup recovery method.
Session Management
- Press F5 at any time to instantly lock the session.
- Sessions auto-lock after a configurable period of inactivity.
- Locked sessions require the user's PIN, pattern, or password to resume.
- Failed login attempts are tracked. After exceeding the maximum allowed attempts, the account is temporarily locked.
Important: Password confirmation is required before voiding sales, deleting records, or accessing sensitive settings. The confirmation timeout is 120 seconds.
5. Dashboard
The Dashboard is the home screen after login. It provides an at-a-glance view of business health and quick navigation.
Search Bar
Search products by name, SKU, or barcode directly from the dashboard. Results appear instantly, and tapping Sell navigates to the POS with the product pre-focused.
KPI Cards
- Sales — Total sales for today.
- Customers — Total registered customers.
- Low Stock — Count of products below minimum stock levels.
- Profit — Estimated profit from today's sales.
Sales Overview
A 7-day sales table showing daily totals, percentage of total, and summary statistics (Total, Average, Highest, Lowest).
Inventory Summary
Shows total items in stock, total cost value, total selling value, and expected profit/loss across all active products.
Top Products
Lists the first 5 products by name with current stock and selling price.
Quick Actions
One-tap buttons for common tasks: New Sale, Add Product, Add Expense, Backup, Customer Payment, and Reports.
Alerts
Shows low-stock warnings and overdue customer payments. A badge on the Alerts card indicates the total number of active alerts.
6. Point of Sale (POS)
The POS screen is the core transaction module, split into a product grid (left) and a cart summary (right).
Product Grid
- Search — Type to filter by name, SKU, or barcode.
- Category Chips — Filter by category: All, Seeds, Fertilizers, Chemicals, Tools, Other.
- Barcode Scanner — Hardware scanners are supported. The system detects rapid keystrokes (threshold: 50ms) and treats the input as a barcode scan on Enter.
- Tap a product card to add it to the cart.
- Out-of-stock items are greyed out and cannot be added.
Cart
- Displays added items with quantity, unit price, and line total.
- Items can be removed individually.
- Clear All removes every item and resets notes.
Completing a Sale
- Add products to the cart.
- Select a payment method: Cash, Credit, Mobile Money, or Bank Transfer.
- For Credit sales, select a customer. The system validates available credit limit.
- Tap Complete Sale (F12).
- A password confirmation dialog appears.
- On success, a Sale Completed dialog shows invoice number, total, amount paid, and balance due.
- Choose to Print Receipt or OK to close.
Receipt Printing
Receipts are printed via ESC/POS to the configured thermal printer. The printer IP is stored in app preferences. Sales also generate a transaction log entry and update product stock automatically.
Keyboard Shortcuts (POS)
| Key | Action |
|---|---|
| F2 | Focus search |
| + | Increase item quantity |
| - | Decrease item quantity |
| F12 | Complete sale |
| Esc | Clear cart |
7. Product & Inventory Management
The Products module manages the full product catalog, pricing, and stock levels.
Product Fields
- Name — Product display name.
- SKU — Stock Keeping Unit for internal tracking.
- Barcode — Scannable barcode for POS.
- Category — Seeds, Fertilizers, Chemicals, Tools, Other.
- Prices — Purchase, Average Cost, Selling, Wholesale, VIP.
- Stock — Current, Minimum, Maximum.
- Units — Base Unit, Selling Unit, Conversion Factor.
- Weight / Volume — Optional per-unit measurements.
- Location & Batch — Warehouse location and batch number.
- Dates — Manufacturing Date, Expiry Date.
- Supplier — Linked supplier for reordering.
- Status — Active / Inactive.
Low-Stock & Expiry Tracking
The system automatically flags products when currentStock <= minimumStock. Expiry alerts appear when products are within 30 days of expiration. These alerts surface on the Dashboard and in reports.
Product CRUD
Navigate to Products from the drawer. Use the add button to create products, tap a row to edit, or swipe/delete to remove. Deletion is soft-delete (the record is preserved for audit).
8. Sales Management
The Sales module provides a historical view of all transactions.
Features
- Sale List — Browse all sales with invoice number, date, customer, payment method, total, and status.
- Filtering — Filter by date range, payment method, or status (Completed, Voided, etc.).
- Void Sale — Voided sales restore product stock and mark the transaction as void. Requires password confirmation.
- Receipt Reprint — Reprint receipts for completed sales.
Sales are automatically linked to cash movements in the accounting module.
9. Customer Management
Manage customer records, credit limits, and payment balances.
Customer Fields
- Name, Phone, Email, Address, ID Number
- Credit Limit — Maximum outstanding balance allowed
- Current Balance — Running total of unpaid credit sales
- Notes
Credit Sales
When a sale is completed on Credit, the customer's balance increases automatically. The POS validates available credit before allowing a credit transaction. Payments received from customers can be recorded from the Customer Payment screen, reducing the outstanding balance.
Overdue Alerts
The Dashboard alerts staff when customers have outstanding balances. The Reports module can filter customers with balances.
10. Supplier Management
Maintain supplier records for procurement and purchase orders.
Supplier Fields
- Name, Contact Person, Phone, Email, Address
Suppliers are linked to products and purchase orders for traceability.
11. Purchasing
The Purchasing module handles the full procurement cycle: Purchase Orders (PO), receiving, and payment.
Purchase Order Statuses
| Status | Description |
|---|---|
| Draft | PO is being prepared |
| Sent | PO has been sent to the supplier |
| Partial | Some items received, others pending |
| Completed | All items received |
Workflow
- Create a PO with supplier, expected date, line items (product, quantity, unit cost), and additional costs (shipping, insurance, customs).
- Change status to Sent when dispatched.
- When goods arrive, use Receive Items to record quantities. Stock levels increase automatically.
- The system updates the PO status to Partial or Completed based on received vs. ordered quantities.
- Record payments against the PO to track liabilities.
12. Reports & Analytics
The Reports module provides deep insights into business performance. Access it via the drawer or Dashboard Quick Actions.
Date Range
Select a custom date range or use presets: Last 7 Days, Last 30 Days, Last 90 Days.
Tabs
- Overview — Total sales, transactions, average sale value, total profit, net profit (after expenses), total expenses, total tax collected, total discount, total outstanding balance, and number of credit customers.
- Sales — Sales by day, by payment method, and top-selling products.
- Products — Low-stock products and inventory valuation.
- Customers — Outstanding balances and credit customer counts.
Export
Report data can be exported to PDF or Excel for external analysis. Weekly reports are available as dedicated PDF summaries.
13. Z-Reports & Daily Closing
The Z-Report provides an end-of-day financial summary for a selected date.
Z-Report Contents
- Total sales, transaction count
- Sales breakdown by payment method: Cash, Credit, Mobile Money, Bank Transfer
- Cash expected in drawer
Daily Closing
The cashier enters the physical cash count. The system calculates the variance (expected vs. counted). This closing record is saved and cannot be overwritten without a new closing for that date.
Warning: A Z-Report / daily closing is a financial control point. Once finalized for a date, it should not be altered.
14. Accounting
The Accounting module provides double-entry bookkeeping capabilities.
Chart of Accounts
Manage accounts organized by type: Assets, Liabilities, Equity, Revenue, and Expenses. Each account has a code, name, and running balance.
Journal Entries
Create manual journal entries with a debit account and a credit account. The system auto-generates entry numbers (e.g., JE00001). Sales and expenses automatically post to the appropriate accounts.
Bank Reconciliation
Match bank statement lines against recorded transactions to ensure the cash book agrees with the bank balance.
Petty Cash
Track petty cash inflows and outflows. The current petty cash balance is calculated automatically from all transactions.
Financial Statements
- Trial Balance — List of all accounts with debit/credit balances.
- Profit & Loss — Revenue minus expenses over a period.
- Balance Sheet — Assets, liabilities, and equity at a point in time.
15. Human Resources
The HR module manages employee records, time off, shifts, and reimbursements.
Employees
- Personal details: name, email, phone, address, ID number, tax ID, emergency contact
- Employment details: job title, department, hire date, salary, employment type, status
- Bank details: bank name, account number
- Notes and active status
Leave Management
Employees submit leave requests. Managers approve or reject them. Leave types include Annual, Sick, Maternity, Paternity, and Other. The system tracks start date, end date, days, reason, and approver comments.
Shift Scheduling
Create and assign work shifts with dates, times, and assigned employees.
Expense Reimbursement
Employees submit reimbursement claims with amount, category, description, and receipt. Managers review and approve pending claims.
16. Projects
Track project-based work from initiation to completion.
Projects
- Name, description, customer, start/end dates, budget, actual cost, manager, priority, progress, status
- Statuses: Active, On Hold, Completed, Cancelled
Tasks
Break projects into tasks with titles, descriptions, status, priority, start/due dates, estimated vs. actual hours, assignee, and predecessor dependencies. Task progress updates the overall project progress automatically.
Time Entries
Log hours worked against projects and employees for cost tracking and billing.
Attachments
Attach files (quotes, contracts, images) to projects for reference.
17. Warehouses & Stock Transfers
Manage multiple warehouse locations and transfer stock between them.
Warehouses
- Name, code, address, manager, default flag, active status
- One warehouse can be marked as Default.
Stock Transfers
Create transfers from one warehouse to another. The system validates that source and destination are different. Transfers move through statuses: Draft, In Transit, Completed.
Warehouse Stock
Stock levels are tracked per warehouse in the warehouses_stock table. The system supports updating stock counts per product per location.
18. Communication
Internal communication tools keep teams aligned without leaving the system.
Internal Memos
- Create memos with title, content, priority (Normal, High), and optional expiration date.
- Pinned memos appear at the top of the list.
- Only active (non-expired) memos are shown.
- Deleting a memo requires password confirmation.
Email Queue
Queue emails with recipient, subject, body, and optional attachment. The status tracks whether the email is Pending or Sent. This is a lightweight internal email dispatcher.
19. Finances & Expenses
Record and categorize business expenses.
Expense Fields
- Category — Utilities, Transport, Salaries, Supplies, Rent, Maintenance, Other
- Description, Amount, Expense Date
- Payment Method, Reference, Receipt Path, Notes
Expense Analysis
Filter expenses by date range and category. View totals and category breakdowns. Expenses feed into the Reports module for net profit calculations.
20. Settings
The Settings screen is the central configuration hub.
General Settings
- Currency & Formatting — Set currency symbol, position (left/right), and decimal places.
- Date Format — Choose how dates are displayed throughout the app.
- Invoice Settings — Configure invoice prefix (e.g.,
INV-) and the next invoice number. - Tax Settings — Set default tax rate and choose tax-inclusive or exclusive pricing.
- Operational Settings — Allow negative stock, require customer on sales, enable/disable F5 instant lock, auto-backup interval.
Security Settings
- User Management — Add, edit, deactivate users; assign roles.
- Change Password — Update your own password.
- Change Lock Type — Switch between PIN, Pattern, or Password.
- Set PIN / Pattern Lock / Security Question — Configure backup lock methods.
System Settings
- Currency & Tax — Manage multiple currencies and tax rates (e.g., VAT). Set defaults.
- System Health — View database status, version info, and diagnostics.
- Backup — Configure automatic backups and manual backup/restore.
- Support — Access help and contact information.
21. Keyboard Shortcuts
Plexus supports keyboard shortcuts to speed up daily operations.
| Key | Action | Context |
|---|---|---|
| F5 | Instant lock | Global |
| F2 | Focus product search | POS |
| + | Increase quantity | POS |
| - | Decrease quantity | POS |
| F12 | Complete sale | POS |
| Esc | Clear cart | POS |
22. Data Management
Plexus stores all data locally in a SQLite database. Regular backups are essential to prevent data loss.
Automatic Backup
Configure automatic backups in Settings. The system can back up at regular intervals (default: every 2 hours).
Manual Backup & Restore
Use the Backup screen to manually export the database to a chosen location, or restore from a previous backup file. Restoring replaces the current database with the backup.
Caution: Restoring a backup overwrites all current data. Ensure no one else is using the system during a restore operation.
Audit Logging
Every create, update, and delete operation is logged in the transaction_log table with user, timestamp, old values, and new values. This provides a full audit trail for compliance and troubleshooting.
Crash Recovery
The app initializes the database in a crash-safe manner. If the app crashes or is closed unexpectedly, it recovers gracefully on next launch and logs the error for diagnostics.
23. Troubleshooting
Common Issues
| Issue | Solution |
|---|---|
| App fails to start | Check the flutter_01.log file in the installation directory for errors. Ensure the database file is not corrupted. Restore from backup if needed. |
| Printer not connecting | Verify the printer IP in Settings > Receipt Printer. Ensure the printer is on the same network and the IP is correct. Restart the printer and the app. |
| Barcode scanner not working | Ensure the scanner is configured to send an Enter keystroke after the barcode. The system expects rapid keystrokes (<50ms between characters) followed by Enter. |
| Cart not restoring after crash | The cart is saved to local preferences. If it fails to restore, check SharedPreferences storage. Clear the cart manually and re-add items. |
| Database locked / slow performance | Close other apps accessing the database. Ensure backups are not running during peak hours. Consider compacting the database. |
| User locked out | Use the security question recovery if configured. An Admin can reset the password from User Management. The lockout expires after the configured duration. |
Logs & Support
Log files are written to the app's local data directory. When contacting support, include the latest log entries and a description of the steps that led to the issue.