Service Reporting and Invoicing Software
Just showing off another of my side projects that i'm working on. This one is currently in commercial use and belongs to someone, so I can't share any source code, sorry! A business I do work for had an old piece of software to manage their service department that I made for them back in 2004. It was made in Microsoft Access using VBA and SQL to keep costs low as at the time they were a back yard operation and very small. The old software worked perfectly fine, until the business grew, which was what sparked the update.
The current software was able to create/edit/delete new customers and job cards, print reports, print invoices/quotes for customers and schedule customers in for regular servicing. Some of the features that were required to be functional were;
- Ability for multiple people to use/edit at the same time
- Mobility. Techs on the road need to have access via smart phones
- Detailed customized reporting on all aspects of business including open jobs, unpaid jobs, quotations
- Easy navigation. Should be able to get from one page to all relevant information in 1 click
- Email outstanding invoices directly to customers. Email service requests directly to technicians/contractors
- Keep it as close to the old software as possible to save staff re-learning something new
- Export payments to specific Excel format for uploading to MYOB
My suggestion was to use PHP and SQL and have the software web based, so that anyone can access it across any store or mobile device at any time. The point of sale software they use is also web based, so it would be familiar for all of the staff. I had to rewrite the whole database to enable a few of these features, including a secure log in, but it also had to be similar enough to be able to import all of the old data over. The data being thousands of customer and service records, spare parts and equipment information. I also added in a few features that I thought would be handy, such as automated reminders when customers services are due, a feature that reminded users if data had not been saved before navigating away from a page, etc.
The project is ongoing. I tested the current version to make sure it was free of any errors or bugs and released it live and ready for use on 1/1/2015. It's not pretty, there was no visual work done except for the invoices and quotes that customers see. There is a bug/feature reporting feature implemented so that staff can suggest features to add or report issues that I actively work on. Some of the suggested features are things like the ability to schedule work (currently they use a paper system), mass-upload/download products/reports via excel, detailed product reports for each customer. It seems to have been received pretty well, all features work and there are very few bugs so far and nothing that I couldn't fix quickly.
Future plans are after 3 months of active use, to sit down with management and determine which features to implement and how to go about doing it. Visual improvements and making it look pretty are on the table. Obviously they don't want me to spend too much time on this. "As long as it works." is the general view I get from them.