A web-based Point of Sale (POS) system built with PHP and MySQL for managing product sales and transactions.

This project was developed as part of a professional certification exam (LSP) at SMK Negeri 1 Wonosobo in 2025. It aims to demonstrate proficiency in web development fundamentals, database management, and basic business logic implementation for a retail environment. The core motivation was to create a functional system that could handle daily sales operations efficiently.
The system utilizes PHP for backend logic and server-side scripting, interacting with a MySQL database for data storage (products, users, transactions). Frontend is built using standard HTML, CSS, and JavaScript for a responsive user interface. Key modules include user authentication, product CRUD operations, dynamic shopping cart management, and a robust checkout flow that updates inventory and records transactions. The project emphasizes security best practices for database interactions and user sessions.
Admin and Cashier roles with differentiated access.
Admin users can add, edit, and delete products.
Cashier can add products, update quantities, and remove items from the cart.
Handles payment calculation, provides change, and generates invoices.
View past sales transactions with detailed information.
Summary views for both Admin and Cashier to monitor activities.
Ensuring accurate stock levels after each transaction, especially with concurrent operations.
Atomic database updates were implemented during checkout to decrement stock, along with validation checks to prevent overselling.
Clearly separating functionalities and access for Admin and Cashier roles.
Implemented session-based authentication and authorization checks on every page to restrict access based on user level.
Managing cart state and calculations (subtotals, total) as items are added, removed, or quantities changed.
Session variables were used to maintain the cart state, with server-side logic recalculating totals on each update.





