Mobile menu MENU

UNITEC billing system

 

Background

A friend of mine was looking for a better way to do his administration duties as a company. He used Excel to create offers and invoices. Those Excel files contained an article list with prices. However due to the many Excel files the article list was not always accurate. Because of the addition and removal of articles macro's broke down. As a personal project I started to develop an online system with PHP, AJAX, MySQLi and Javascript. I prototyped a first version and we discussed many times about the features it should have and how it should work. Eventually the system put in use in December 2012. Some key features are:

  • maintaining a central database of articles and article groups
  • a central client database with potential clients and existing clients (who accepted an offer), projects could be related to clients
  • working hours registration which could be billed, registered working hours can be validated by the employer before the records can be charged to a client
  • creating offers and tracking status, create PDF's on-the-fly
  • creating invoices and tracking status, create PDF's on-the-fly
  • authorisation structure up to 10 different roles to define specific permissions

 

About the system

Authorisation structure

The UNITEC online billing system is an application with many features. Not all features may be used by an employee or group of employees. Therefore an authorisation structure is designed. The employer has the possibility to create user groups and give these groups specific rights and permissions to use features. The features are divided in groups, those groups are: invoices, offers, vat percentages, clients, projects, suppliers, work registration, article groups, articles and database maintenanc. It is even possible to differentiate among permission to add data, to edit data, to delete data, to recover data and to overview data of a specific group. Users in a specific user group cannot extend their rights and permissions by themselves, they have to contact their employer when they need extra permissions.

 

Article information

A table is created for the article information. Information about cost and client prices are stored even as the characteristics of a article. The article is also linked to an article group to create more overview in the set of around 1,000 articles. Besides the unique database ID per article and unique UNITEC article code is created. When a user chooses an already taken UNITEC article code, I warning will be given containing information about which articles will be affected and which invoices will be effected by the change. The user can change the article code or the system will automatically change all the affected articles and invoices.

 

Client information

A table is created for the client information, the information about a specific client contains names, addresses and whether the client is a potential client or an existing client. In case of an existing client an unique debtor ID is created, which is needed to justify the company's incomes to the tax collectors office. For potential clients who just requested an offer, no debtor ID is created, because they may refuse to accept the offer and therefore not become a client of UNITEC. Clients in this table can be linked to projects. Some orders are given by the same client, however due to justification to the tax collectors office by their companies, this could be different projects. Therefore a project table is created in which this information is stored.

 

Register work hours

All work done at UNITEC is commissioned by a client, either by a client or on a project basis. UNITEC itself is also regarded as a client, thus giving the employees the possibility to register work done at UNITEC what is not accountable to a specific client. The employer can fiat the registrations, this must be done before the registrations can be billed to the client. The invoice system will not show any registrations which are not authorised. The employer has also the possibility to adjust the registration.

 

Offers

Offers are stored in the database, each offer is linked to a client. The stored offer can be published as PDF which can be printed or sent by e-mail to the client. The employer can set the offer status to created, sent and signed. All offers that are created get the status created automatically. After an employee sends the offer to the client, the status can be manually adjusted to sent. If the client accepts the offer, the offer can be set to the status signed. Overviews can be made of every status.

 

Invoices

After an offer is signed, everything is planned in consultation and agreement with the client. Invoices are created to charge the client with the delivered services. Work registrations can be added to the invoice and even extra materials, tasks and projects can be added. It is also possible to charge parking costs and call fee, give discount on labour and materials and use different vat percentages for labour and materials. The invoices can have the status not sent, not paid and delayed payment. After creating an invoice it recieves the status not sent. After an employee sends the offer to the client, the status can be manually adjusted to sent. When the client pays the invoice the status can be set to paid. Invoices with status not paid will automatically recieve the status delayed payment after 14 days of the invoice date.

 

More information

Do you want more information about the UNITEC online billing system? Please use the contact form on this website and denounce that it is about the UNITEC online billing system.

Design by M.H. de Groot & W3layouts external link | Copyright 2014-2020 M.H. de Groot All rights reserved | Last modified September 15, 2016 at 19:49:14 external link | Unique page views 541 views