AQrate Cashier App is a comprehensive Point of Sale (POS) system designed for efficiency and ease of use. It features a modern dark-themed UI, advanced inventory tracking, real-time analytics, and robust transaction management.
- Transaction Processing: Fast and secure checkout with support for Tax (11%), Discounts, and Multiple Payment Methods (Cash, QRIS, Transfer).
- Receipt Printing: Integration with JasperReports for professional thermal receipt printing.
- Barcode Scanner Support: Quickly add items to the cart using standard barcode scanners.
- Real-time Stock Tracking: Automatic stock deduction upon sale and addition upon incoming shipments.
- Stock Logs: Detailed history of every stock movement (Incoming, Outgoing, Adjustments).
- Supplier Management: Maintain a database of suppliers and their details.
- Low Stock Alerts: Visual notifications when items run low to prevent stockouts.
- Interactive Dashboard: Real-time view of Total Sales, Transaction Counts, and Top Selling Items (Pie Chart).
- Excel Export: One-click export of sales history to Excel (.xlsx) for offline analysis.
- Incoming Logs: Track stock replenishment history.
- Dark Mode: Built with FlatLaf for a sleek, modern, and eye-friendly interface.
- Responsive Design: optimized for various screen sizes (within desktop context).
- Language: Java (JDK 17+)
- GUI Framework: Swing (with FlatLaf)
- Database: MySQL
- Build Tool: Maven
- Reporting: JasperReports
- Excel Export: Apache POI
-
Clone the Repository
git clone https://github.com/kangphp/AQrateCashierApp.git
-
Database Setup
- Creates a MySQL database named
aqcashier. - Import the SQL scripts located in
src/main/resources/sql/in order:migration_phase2.sqlmigration_phase3.sql
- Creates a MySQL database named
-
Build the Project
mvn clean install
-
Run the Application
- Execute the
Driverclass insrc/main/java/Driver.java. - Default Login credentials (if RBAC enabled):
admin/admin(or as configured in your DB).
- Execute the
This project is open-source and available under the MIT License.