We created a B2B sales portal that we connected to the QAD ERP system for one of the most successful Czech family-owned companies with billions in turnover. Product availability and customer data are self-updating for each of the branches across Europe. In addition, the localised e-shops work with their own products and in the language Hranipex needs.
Our long-term cooperation with Hranipex started back in 2007. At that time, the family-owned
company wanted to modernize their website and, most importantly, create a connector with the
internal ERP QAD system.
Specifically, they needed:
In addition, the customer wanted to keep all data on the servers inhouse for security and stability reasons.
ERP is a piece of information system/software that companies use to manage business processes (e.g. finance, operations or HR). One of the developers of ERP is the Californian company QAD - their system is robust and used by companies all over the world.
Hranipex is one of the largest Czech family-owned companies. In Humpolec they produce the basic component of furniture - furniture edge. You can find it around your desk, it is glued to the edges of the boards for design and safety. The company is the largest manufacturer of furniture edges, adhesives and cleaners in Central Europe with an annual turnover of over CZK 2 billion and branches in 11 European countries.
"The client liked the fact that he would get a modern website for its time and an optimized e-commerce solution connected to his information system in one package. We worked with our partner company Bioport, who focused on design."
We first studied the QAD information system documentation and then met with the supplier to find out how to design the project correctly. The best solution we came up with was to create an API so that the connector could transmit everything we needed:
Just to give you an idea, Hranipex has 88,000 product variants in the system. All of this has to be constantly updated so that the customer doesn't order something that is no longer in stock.
We have implemented a solution that allowed for multiple languages and multiple Hranipex branches that are spread across Europe. It was important to offer all the languages relevant to the local market for a given branch:
However, languages are not everything for individual branches, as each offers slightly different products or even whole different categories. The e-shop reflects this. We have solved this through a branch API that offers the right local data according to the branch parameters, such as available products, their variants, stock levels and prices.
The development started at the end of 2007 and we managed to complete the first phase in 6 months. An update followed four years later, linked to the client's expansion into other European countries. In the following years, we continuously added more European branches in local languages. To this day, we maintain the servers and develop the application in small ways according to the client's requirements.
Start of cooperation
Launch of the first production version of the e-shop
Analysis of new requirements
Major work on the big update
Launch of the production version
Server maintenance and administration and minor development
In an e-shop with thousands of products, search has to work really well. So we investigated what people search for most often and what they mean by that. Because it's hard to remember the exact name of a product, which consists of a colour and numbers.
We have therefore adapted the search algorithm to any typos. It can even search for an edge from a garbled notation of a compatible plate.
An example of what cabinetmakers enter and what they want to find (and find, thanks to us):
We opted for a reliable combination of backend and frontend based on:
You can find out more about the tools and technologies we use at COex on the web technologies page.
During development, we addressed whether the data would sync in real time as the client originally wanted. We found that the constant synchronization of tens of thousands of products was data-intensive and put a disproportionate burden on QAD's ERP. Therefore, we decided to synchronize the data periodically once every two hours for each branch, which still ensures smooth operation.
To avoid inconsistencies in the data, we have identified ERP QAD as the main source of data. In the e-shop administration itself, most of the data is only in the form of reports and read-only tables (except for the CMS with content and the translation system with translations of all texts).
After the connector development, we worked on the localizations. First we took care of branches in the Czech Republic, Poland, Hungary, Romania and Slovakia, and in the following years we took care of branches in Germany, Lithuania, Ukraine, Austria and France, and finally we conquered the UK.
In 2012 we embarked on a major update. We updated the frontend and backend of the application and prepared the system for more frequent updates of data from QAD ERP. The main reason for this update was the growing number of new branches, orders and customers. Thanks to the analysis of the products searched, we prepared a new and significantly faster way of searching for Hranipex customers using Elasticsearch.
When the client first started with the e-shop, almost all customers ordered through merchants. Although merchants are still the main channel in this segment, orders through the e-shop grew from 2% to 30%.
Each branch now has a localised e-shop with the right prices, in the language they need and with the products they need to offer at that location. In addition, we have been able to: