Purchasing & POS Web Application
Store SKM — Material Purchasing & POS Management
- PHP
- CodeIgniter 3
- MySQL
- Bootstrap
- jQuery
- DataTables
- Select2
- PHP Barcode Generator
Inside the project
Project documentation
Project Overview
Store SKM is a web application for Solusi Kimia Mandiri's material purchasing, stock management, and point-of-sale operations. It connects purchasing records and item availability with transaction history, invoicing, and supporting office and accounting modules.
Its PHP and CodeIgniter architecture combines a MySQL-compatible database with a server-rendered Bootstrap interface. Searchable tables, item carts, and barcode labels support day-to-day administration.
My Role & Contributions
Role: Fullstack Developer — Enhancement & Maintenance.
I continued development of an existing application, taking primary responsibility for feature additions, updates, and bug fixes during my time at PT. Qinar Raya Mandiri. My work focused on maintaining and extending the system used for SKM's material purchasing and POS operations.
Key Features
- Material, supplier, and customer master data.
- Purchase entry through item carts, including loading items from approved purchase orders.
- Purchase documents, receipt history, and stock movement records.
- Barcode label generation for item identification.
- Retail, wholesale, and term-based sales modules.
- Invoice printing and transaction history.
- Receivables and payment records with partial and settled statuses.
- Physical stock counts and supporting journal, ledger, and financial report screens.
Material Purchasing Workflow
- An operator selects a supplier and enters purchase details, or loads items from an approved purchase order.
- The operator reviews the item cart and saves the purchase.
- The application records the purchase header and item details, increases inventory quantities, and writes stock movement logs.
- Staff review or print purchase records from the transaction history.
- Inventory and reporting screens expose the resulting item availability and transaction records.
Sales follow a related flow: checkout records the transaction, reduces stock, and prepares an invoice. Term-based transactions also create receivables that are followed up through a separate payment workflow.
Tech Stack
Backend: PHP, CodeIgniter 3, MySQL-compatible SQL.
Interface: Bootstrap/Vuexy, jQuery, DataTables, Select2.
Item identification: Picqer PHP Barcode Generator.
Professional internal project associated with PT. Qinar Raya Mandiri. Business records and repository access are confidential.