To optimize time management and make the reporting process more efficient, many companies rely on time tracking tools such as Clockify. However, the use of these solutions has some limitations, especially when it comes to sharing the hours worked with customers. A consulting firm turned to us precisely to bridge this gap, asking us to develop a customized solution that would allow managers to intervene on reports without compromising the traceability of the activities carried out. From here, Activities was born. Here's how it went.
A consulting firm that operates in the engineering field came to us with the need to resolve an important limitation of Clockify, namely the loss of the original workflow associated with the activities carried out by the project teams that occurs every time billing reports are prepared for customers.
At the time of transforming Clockify data into reports useful for invoicing, the company was in fact forced to intervene manually to:
The project managers then had to validate the actual reportable hours for the individual activities marked within the application.
As a result, the information as recorded by team members was inevitably altered (or partially rewritten), which could mean the loss of very important data to keep track of how and when the activities agreed with the customer had been carried out throughout the entire project.
The challenge posed to us was therefore to find a solution to this lack of continuity between the recording of the days worked on Clockify and the final reporting phase, to avoid disruptions or even loss of trust on the part of customers.
But before going into detail about the solution we designed, it's important to take a step back to fully understand how Clockify works.
Clockify is a time tracking application, designed to precisely monitor the activities carried out by members of business teams related to projects, tasks and orders. Its purpose is therefore to record actual working hours, associating them with specific customers or activities, so as to keep track of the time spent in each phase of the project.
It is one of the most used tools by companies (especially consulting, but not only) to obtain visibility on the workload of resources and on the distribution of time between different tasks, both for its ease of use and for the fact that it is free of charge.
However, while offering a detailed overview of the activities, Clockify has an important limitation: the hours recorded within the app are not immediately usable for the purpose of billing customers.
This is because often the descriptions entered by users are concise or too technical, and the number of hours marked may require adjustments before being shared with external parties. Before arriving at a “customer-ready” report, it is therefore necessary to intervene manually to review the information and be able to validate it.
As we said, Clockify is one of the tools preferred by companies for recording working days, but when you switch from internal recording to external data sharing (as in the case of billing or reporting to customers), some critical issues emerge that cannot be ignored.
The limit is not so much in the basic functionality of the application, but in its lack of flexibility in the post-production phase of the data. Clockify allows you to precisely track each activity, but it does not provide a centralized review and validation system, nor a structured flow to manage any corrections before the reports are published.
At this point, we ask ourselves a question: should we look for a more complete alternative or develop a tailor-made extension to fill the gaps in Clockify?
The answer is it depends.
If a company wants to keep track of time for internal purposes only, the basic features offered by Clockify are more than enough. But if time tracking must be integrated with order management processes, approval of reports and reporting to third parties, then a customized solution can make a real difference.
This is precisely where the extension we created for our customer comes into play.
Instead of abandoning Clockify, we have built a customized system (called Activities) that integrates with the application, allowing project managers to reorganize, approve and validate the data collected, maintaining the original traceability and facilitating the generation of final reports.
We could define Activities as the implementation of a hybrid approach with which it was possible to make Clockify an integral part of the billing cycle.
Let's see more about what Activities is and what it allows you to do in the next section.
To respond to our client's requests, we have developed an application that allows project managers to modify the hours of the reports created on Clockify, making them accessible in real time to users outside the organization.
This application is called Activities and is designed precisely to facilitate the work of managers and business teams in managing orders and orders.
The information is automatically taken from Clockify and recorded in the Activities database, where it is possible to organize and modify it without altering the original data.
But how does Activities work, exactly?
Let's start by saying that our web app is divided into two main sections:
In the administration area, project managers can:
In addition, for each job available in the administration area, it is possible to:
So let's get to the beating heart of Activities: time entry.
By “time entry”, we mean the timely recording of an activity carried out, including duration, description, date, responsible user and associated project.
Within Activities, time entries can be managed in two ways:
Once the time entries of interest have been identified, managers are able to change their description, convert the activity into “billable” (therefore useful for reporting purposes) and validate.
If a time entry is validated, it is made visible to the customer in the dedicated area.
In addition, managers can use the “Send mail” command to send a notification to notify project clients about the availability of billed days. For the latter, just log in to the Activities app to view the details.
What if customers can't retrieve the right information?
We have also thought about this possibility: thanks to the “Impersonate a client” command, it is possible to log in as an external user and navigate the application to ensure that the data provided is correct, clear and clearly visible.
We have developed Activities based on Azure, the cloud of the Microsoft environment, to provide our customer with a solid, secure and scalable time tracking solution.
First, Azure allowed us to automate the flow of importing data on Clockify, ensuring that every night it was saved to the Activities database. Obviously, this has eliminated the need for manual intervention by project managers.
Second, the Microsoft cloud has allowed the development of a web app accessible from any business device, meeting strict security criteria.
In fact, the Azure infrastructure includes advanced features for managing identities and permissions, which has allowed us to implement differentiated access for managers and customers, who can thus view only the information and commands relevant to their role.
Another benefit deriving from using Azure is scalability, since our solution can grow without difficulty in terms of:
Finally, this technology allowed a rapid release of the application, freeing our team from the workload that would have required the autonomous management of infrastructure-related complexities.
Instead, we were able to focus on developing a complete but intuitive interface, adding custom functionality requested by the customer and improving the user experience for managers, team members and customers.
Starting from the need to extend the time tracking functionality offered by Clockify, we were able to design and implement a tailor-made solution for our customer, successfully overcoming obstacles such as:
Once it went into production, together with the company, we monitored the impact of Activities. The objective was to verify if the solution was really the right one to optimize the billing process.
The results confirmed the goodness of our approach, immediately recording a more streamlined flow, more reliable data and active involvement also on the part of customers.
The Modern Apps team responds swiftly to IT needs where software development is the core component, including solutions that integrate artificial intelligence. The technical staff is trained specifically in delivering software projects based on Microsoft technology stacks and has expertise in managing both agile and long-term projects.