Internal Shop and Salon CRM for Furniture Production
Brief Description
One of my early applied web projects for the same client. This was an internal system for a furniture production salon: a product catalog, suppliers, an internal cart, sales processing, operation history, reports, and Excel data import. This project was one of my first full-scale working systems, where I progressed from basic web development to implementing an internal tool addressing real business tasks.
Purpose of the Project
The project addressed the task of internal inventory tracking for product items in the salon and sales support. The system allowed employees to work in a unified web interface instead of manually managing data for products, suppliers, and operations.
The system enabled:
- maintaining an internal database of product items;
- storing and editing supplier information;
- gathering items into a cart before processing a sale;
- recording sales with calculation of totals, discounts, and payment types;
- printing documents for operations;
- viewing sales history and basic analytics;
- updating the catalog via Excel file imports.
What has been implemented
- Login with username and password using session-based authentication.
- Internal interface with sections for product catalog, suppliers, sales history, and reports.
- Differentiation of capabilities and displayed data based on user roles, including administrator, director, and regular employees.
- Product catalog with search, pagination, and editing actions.
- Storage of SKU, name, supplier, quantity, purchase price, shipping, markup coefficient, recommended price, and service information for products.
- Inline editing of some fields directly within the table without navigating to a separate form.
- Automatic calculation of the retail price when the coefficient is changed.
- Discrete supplier database with contact and reference information.
- Internal user cart with adding, changing quantities, removing individual items, and full clearing.
- Stock level verification before processing a sale.
- Sales processing with receipt creation, saving sales composition by line items, calculating product quantities, sums, discounts, and final cost.
- Support for comments, operation date, and different payment types during processing.
- Sales returns with stock restoration and operation history logging.
- Sales history with search, filtering, and viewing of processed receipts.
- Sales reports with calculation of purchase cost, shipping, retail sum, and profit.
- Sales statistics by items, suppliers, quantity, and employees.
- Generation of a printable PDF document for the sale via
FPDF.
Excel Integration
The project included a discrete circuit for loading and processing Excel files, which solved the task of updating the internal catalog rather than just attaching a document.
- Supported loading of
.xlsand.odsfiles via the web interface. - Implemented a client-side upload scenario via
SWFUploadwith progress tracking, status, and file type/size limits. - Added server-side validation of the input file structure and data parsing based on a template.
- Supported several Excel template variants for import.
- Extracted SKU, name, supplier, quantity, purchase cost, shipping cost, coefficient, recommended price, and comments from the file.
- Verified mandatory fields and identified duplicate SKUs in the uploaded data.
- Automatically created new suppliers if they were absent from the system.
- Compared imported items with existing catalog data.
- Updated stock, prices, coefficients, and retail prices for existing items.
- Added new items to the database.
- Maintained a change history for products to record who updated data via import and when.
- Supported reversal of some updates upon errors during batch processing.
User Scenario Workflow
- Employee logs into the internal system.
- Works with the product and supplier catalog via the salon interface.
- Adds necessary items to the cart.
- Processes the sale by specifying discount, comment, date, and payment type.
- Receives a generated receipt and can print it to PDF.
- Later, the operation can be found in the history and summary reports can be viewed.
- If necessary, the catalog is updated via Excel file upload.
Technologies
- PHP 5.6
- JavaScript
- jQuery
- AJAX
- MySQL
- FPDF
- SWFUpload
- HTML / CSS
My role
My role was end-to-end: from learning and practically applying basic web development to implementing a working internal tool for salon employees. In the project, I handled server logic, the interface, sales scenarios, Excel loading and processing, printed receipt forms, and the overall development of the system according to the client's real-world workflows.
Practical value of the project
This case is important as early product experience. It demonstrates that even at the initial stage, I was working not on educational examples but on applied business tasks and delivering working tools.
The project demonstrates experience in:
- developing internal systems for employees;
- building a catalog, registries, and operational scenarios in a single interface;
- implementing cart and sales processing logic;
- calculating sums, discounts, payment types, and profit;
- generating printable documents;
- building operation history and basic reporting;
- integrating Excel import into the catalog update workflow;
- a gradual transition from learning technology to developing systems for real business tasks.