How to drastically lower costs while reliably tracking and reporting fuel products inventory through an API?
If you’re supplying petroleum products and fuels to thousands of gas stations nationwide and then to specific corporate clients, you (and your clients) need to know the inventory to the last drop every day. In such an environment, how do you manage to share specific inventory data with your clients in a safe, cost-effective and user-friendly way?
Sometimes the technical solution to a complicated problem doesn’t need to be very complicated itself. This can be the case when you need to collect a lot of data from many different sources but the reported answers you’re looking for, aren’t that complex and in fact quite limited. But you will need to think about, design and develop the right tools to tackle the problem.
This is what Agilogy did when Repsol, Spain’s largest petrochemical company, approached us to develop a solution to the following problem: They serve the needs of many public filling stations all across Spain but also some large private clients who have their own proprietary filling stations (think of companies with large fleets of cars or trucks). These clients have their own special needs and requirements on how to read the data.
Amongst other data, it’s important to reliably know the exact inventory of each fuel product in the customer’s tanks nationwide at the end of every day.
It’s not like Repsol didn’t have a reporting system before. The problem was that it was based on dated legacy software that exported standard CSV files. It wasn’t easy for clients or other third parties to look up certain details about remaining inventory, levels of use or volumes.
The reports needed to be generated and extracted in a certain format, copied to a server or sent to each client who in turn needed to import these files and integrate them into their own system. It was a tedious and time-consuming process.
Looking at this problem Agilogy, together with the responsible managers of the client, first designed and then developed a REST API that could be used with their existing metering equipment and sensors to integrate the entire data gathering and reporting process.
Once Agilogy drew up the requirements and specs, we decided to develop the API in Rust with an Actix framework. We used ‘file watchers’ to import the client’s existing CSV files and then re-worked the data to be published in the API we built.
This resulted in neatly streamlined process which made it easier to read and analyze by Repsol and their clients. All they have to do now is connect to the REST API and transfer the data to their own systems directly almost in real-time, with all kinds of detail about the product categories of fuels.
While there are always challenges in any software project, the parameters were so well defined that building the entire application took less than a couple of weeks, including testing.
The result is that with relatively simple, custom built software the client (and its end-clients), are now spending much less time gathering and analyzing data and it takes much less manual labor.
Related business cases...
A developer at Agilogy is never alone. While every project has its dedicated developers, we all work in a team and can gather from each other’s strengths and collective experience covering a broad range of programming skills.
We also believe that learning is never done. Technologies evolve and new programming languages and frameworks appear constantly. That’s why we invest a lot in training, both in-house and traveling together to seminars and events.
We believe we’ve created an organization where the whole truly is greater than the sum of its parts.