We love writing case studies — our experience simply obliges us to. But we never set out to describe every single project we do: each ANIART case carries one specific idea, illustrated by an example from practice. This one is no exception — the project for our client, Europa Uno Trade Ukraine LLC, champions the MVP concept (minimum viable product) and shows its advantages in action.
An MVP is a great start for e-commerce
Not every company can afford long project launches. While a project is being launched, money taken out of the company's turnover is invested in it — and the longer the launch takes, the longer that capital stays frozen. That is why we especially recommend a fast start in the form of an MVP to anyone taking their first steps in e-commerce.
This project had to be delivered in the shortest possible time. So instead of racing to build functionality "for every occasion", we launched with the minimum necessary set of capabilities — enough for the simplest but constantly repeated actions: receive an order, clarify the details, hand it over for picking, and so on.
We launched the project in stages. At each stage we listened to the client's employees who were mastering the new working tool, analysed their wishes and built the plan for the next stage around the needs we had identified. Not every wish went into development — we weighed costs against benefits. And the client, managing the development budget in the most literal sense, weighed their own wishes carefully too.
That is how only the functions that really mattered for the work appeared in the project, and in the most natural way: first the things without which work is impossible, then the things that are necessary, then the things that would be nice to have but can wait while something more important is being built, and at the very bottom of the ranking — pleasant conveniences and decorative touches.
Fast start
The store starts working with the minimum necessary functionality instead of waiting for one hundred per cent readiness of every wish on the list.
Feedback
The people who work with the system every day are the ones who point out what is missing. That is the most accurate source of requirements.
Managed budget
The client releases money in portions and at any moment sees exactly what they are buying with the next step.
Typical mistakes
Launching only at one hundred per cent readiness, trying to make everything perfect, changing absolutely everything in how the company works while ignoring the existing business processes — in other words, "starting a new life on Monday".
Of course, not everyone is able to learn from other people's mistakes, but we strongly recommend beginning your "life in e-commerce" according to the scenario described here. If you would rather not gain experience the traditional way, by learning the hard way, entrust your project to us — and working on it will immediately bring you advantages instead of problems.
Defining the problem, the project goal and the plan of work
In 2007 a party goods store called Vesela Zatiia opened in Kyiv. In time it grew into a chain, an online store appeared… And at some point the company's management faced a fact: the market niche was practically empty, there were almost no competitors, and those that did exist could not compare in the quality of their products and customer service. Customers who bought from Vesela Zatiia once became its devotees for good.
But then a problem surfaced: the company could no longer keep up with the growing demands of both the market and its customers. That threatened the customer loyalty it had built up so patiently over the years. An urgent overhaul was needed.
ANIART was given a goal — to quickly develop a striking and effective replacement that met every requirement of the time and, where possible, stayed ahead of them. Specifically: a competitive and convenient online store was needed urgently, one that would inherit the purchase history and personal discounts of every customer. This is the most valuable material a company builds up over years, and losing it would not only have threatened the loss of regular customers but also undermined the company's reputation.
By that time we were ready to produce personalised goods — modern technology makes it possible. We were ready to make balloons personally for a customer or about a customer, to print their text on balloons. People are generally delighted by anything personal, and we were preparing to put that on stream. But at the scale of conveyor production human errors are inevitable, and the price of them is high. That is why all routine operations absolutely must be automated. On our new site we planned to accept orders for personalised balloon designs and lettering, and in small batches at that. On top of that there were local tasks as well — for example, giving customers the ability to lay out the print design for balloons themselves. All of this had to be built into the way the site was organised and tied to production. And it all had to be convenient and accessible, because not all of our customers are experts in web interfaces.Olena Vorona / project manager, Europa Uno Trade Ukraine
Our site is about positivity and joy, about positive emotions from the process of choosing and buying! Customers come to us at the happiest moments of their lives — birthdays, anniversaries, weddings. All of this happens on emotion, and our site has to match that. So our requirements for emotion in the design were at a maximum too.Olena Vorona / project manager, Europa Uno Trade Ukraine
Naturally, besides all of the above, the task list included plenty more:
- integration with the accounting system;
- wholesale purchasing;
- a calendar of holidays;
- requests;
- responsive layout — today a site is obliged to work with any device by default.
And by the way, do you know when it is worth choosing a mobile version instead of a responsive one? We cannot cover that and much else in detail here and now because of length limits, but we will certainly tell you about it in one of our next case studies.
Having analysed the situation, we chose a concept that made it possible to crystallise the must-have tasks within an extremely tight timeframe — the MVP. A minimum viable product lets you get productive feedback from users while the work is in progress, so you understand what they really need — and therefore do not build what they do not need and are not prepared to pay for.
The MVP concept, in turn, determined the plan of work on the project:
- Fast start. We launch a minimum viable product.
- Feedback. We collect it from the client's employees.
- Taking it on board. Mistakes and wishes feed into further development.
- Scaling up. We gradually add functionality as requests come in from employees.
Serious tasks for Vesela Zatiia
For the sales of the Vesela Zatiia online store to really take off, and for buying to become as light and pleasant as the goods the store sells, we had to put in some serious work. There is nothing original about that, of course — work is work. But the tasks we completed really are original, because we never have two identical projects. So what exactly did we do to push the new store past 100 orders a day? Let us sum up the results task by task.
Printing on balloons
One of the client's most exclusive services is printing on balloons: personalisation in its purest form, a guarantee of maximum satisfaction from the purchase, including the process itself. To deliver this task we had to develop a unique layout editor in which the store's customers could create a design themselves and set the required print parameters — one that was clear and convenient to work with. We built exactly that editor: with the ability to choose every print parameter needed — the number of sides, the size, the type and colour of the balloon, the print colour, and uploading an image. At the bottom of the page we added a block that shows additional accessories.

Printing on soap bubble packaging
Pursuing the maximum personalisation of customer service, Vesela Zatiia did not want to limit its customers to individual balloon designs and offered them an equally unique option — printing on soap bubble packaging. While implementing this feature we added a page with information and recommendations for the layout used for such printing. As with all static pages, its content can be edited by managers.
Purchase history, products and discounts
For our company, customer service is the core of the business, our main competitive advantage. Without the customer history we would turn from a leader into an ordinary market player. Our database stores the history of every interaction, every point of contact with each of our customers. Orders, enquiries, negotiations, preferences. If, for example, a customer says during a conversation with a manager that they "prefer green", we record for that customer that they favour green, and next time the manager will recommend matching products when talking to them.Olena Vorona / project manager, Europa Uno Trade Ukraine
Our accounting system is the centre of our business. At any moment it can answer how much of each product we have. How much is in production, how much is in transit, how much we can promise without letting anyone down. In a dynamic business this information has to be known here and now — by managers and by customers alike. The question of integrating all sales systems, such as the website, with the accounting system and working with up-to-date data is extremely important in our business!Olena Vorona / project manager, Europa Uno Trade Ukraine
Importing users
As a result of our work, all users were migrated from the old site — with their purchase histories in full. After the new online store went live, all users were able to log in with their old usernames and passwords.
Importing products from the accounting system
Initially the client kept product records in the accounting system, so we needed to implement an import of store items from it, taking into account the specifics of the established process. During the product import, only stock balances by warehouse and prices come in. Product prices are passed in euros and roubles, while prices on the site are shown in hryvnias. The conversion happens dynamically when products are displayed, using the exchange rate set by a manager.
Calculating discounts
Our marketing is 100% effective. We are confident of that, but it comes at a high cost in the form of an enormous number of group and individual prices, personal discounts, discount schemes, products taking part in promotions, promotions influencing one another, whole chains of rules about how these promotions should be applied and in what order. And this entire, immensely complex mechanism of business processes is implemented as distributed logic: partly in the accounting system, partly on the site. Combining and synchronising such complex marketing entities is no easy matter.Pavlo Kuriata / director of Europa Uno Trade Ukraine
After a long search for solutions, we built a "universal constructor of marketing activities". Discounts on a product are calculated using a universal discount constructor. Individual discounts are set on the basis of a quarterly import from XML: for customers with a discount it is pulled in once a quarter via an XML file, while for customers without one, discounts are applied depending on the purchase amount. If a customer had a standing discount but it was removed in the accounting system, the discount is removed on the site during the next import as well.
A catalogue that helps you choose
- Product merchandising. The ability to sort products in the catalogue is an indispensable tool for any modern online store; the only question is the quality of the implementation. When building the merchandising mechanism we used prioritisation algorithms: alongside the sort directions chosen by the user, we also brought in ordering by product availability, by newness, and by ascending and descending price.
- Availability information. Product availability is one of the main purchase motivators: most people will choose what they can buy right now. So on the product page we built in a "Check availability" button that opens a dialogue with information about the product's availability at retail locations (without stating quantities).
- Automatic generation of the "Specifications" block. Maximum information for minimum effort and time spent is one of the main conditions for motivating purchases. That is why for the "Specifications" block we implemented automatic generation of the content on the basis of product properties and their values.
- Focus on available products. So that visitors browsing the catalogue are not distracted by products that are out of stock, we provided a display algorithm in which such products always appear at the end of the list — under any catalogue sorting.
- Catalogue filtering. To make it easy for visitors to navigate the range and search more purposefully, we added a filter by product characteristics to the catalogue. Filters are generated automatically from the characteristics and values specified for the products that fall into the catalogue. We also added the ability to filter products by promotion type. Empty filters are not shown.
- Catalogue settings. The ability to tune a tool "to your own liking" speaks to its professionalism and makes life easier for whoever uses it. By default we set the catalogue to display 32 products per page. Loading further pages is triggered at the bottom of the catalogue. And in the store settings you can change the number of products shown by default and the number loaded with each additional load.

Site search
Simple and effective product search is the first step towards buying. We set up search for a product by its name and SKU, by article title and by collection name.
To avoid putting extra load on the site and to spare visitors flickering search results, search only fires once three or more characters have been entered in the search field. If there are matches, a list of matches in the product name, product SKU, article or collection opens. Clicking an item in the search results takes you to the product page, the collection page or the article. The dropdown shows no more than five items at a time, sorted by the type of result found and by relevance. If more than five items are found, a vertical scrollbar appears in the results list. A "See all" button is also shown: clicking it or pressing "Enter" takes the user to the search results page, where the results are presented in more detail.

The cart and checkout
- Minimum batch and quantity step. Because the store's products come in different pack sizes and different quantities per package, we implemented a different minimum quantity for different products and, accordingly, a different step for changing the quantity.
- Adding products to the cart straight from the catalogue. The fewer actions needed to make a purchase, the more likely it is to happen. So we made it possible to add products to the cart straight from the catalogue — the customer only has to specify the quantity and click the "Buy" button.
- The "Cart" dropdown. The more options and conveniences there are for adjusting an order, the better the chances that the customer will pick up more products while thinking things over and reshuffling. So, for a comfortable real-time view of the products added to the cart, we created a pop-up menu.
- Registration from the checkout. Simple registration is a reliable way to win a customer. So for customers' convenience we made it possible to register straight from the checkout — you simply enter your details. With the same aim, the checkout page also allows existing users to log in.
- Adjusting the order at checkout. The more a customer chooses while adjusting their order, the more they usually buy. So at checkout we made it possible to change the contents of the order: remove products, change the quantity within a single line. The total order value changes dynamically as this happens.
- One-click buying. The faster the purchase, the more likely it is. Since the technology of buying by sheer force of thought is still in development, we added a "Buy in one click" link on the product page. All the customer has to do after clicking it is enter a phone number and an e-mail.
Requesting a call from a manager
When you are fighting for tenths of a percentage point of conversion, you have to account for everything. And here is what often happens: a user did not work the product out, or felt that they did not — and closed your site. But you cannot let them leave that easily, given the money, effort and time you spent finding them and bringing them to the site! So you have to use every bit of interactivity and every capability of the web to start a dialogue with them and help them buy. For that we provided a simple but effective tool — the option to request a call from a manager. In the dialogue that appears, the user only needs to enter their phone number, and once the request is sent a manager calls the customer back.
SMS notifications, delivery and wholesale orders
SMS notifications. Quality service is service thought through to the smallest detail. And there is no such thing as too much information during the buying process. So we set up automatic SMS notifications to customers at checkout, signalling that the order has been placed without any problems.
Choosing a delivery method. The widest possible choice of delivery methods is one of the cornerstones of customer service. In most stores in the capital, a customer at checkout can choose self-pickup, courier delivery within Kyiv, or shipping to other cities by carrier services. In the latter case there is a choice of delivery service. On top of this generally accepted standard set, at the client's request we implemented the ability to change the list of delivery services.
Uploading an order from a file. Since the client needed a convenient tool for placing wholesale orders, we implemented order creation from a file in the customer's personal account. The uploaded file is a table in which each row specifies an SKU and a quantity. An order is created automatically from the uploaded file, and managers process it as usual. The customer can download a file template.
Content, marketing and communication
Making the content manager's job easier. The faster the content manager adds products to the site and corrects data, the richer and more up to date the range. So, in agreement with the client, we implemented editing of the information in the "Warranty and delivery information" and "Product description" blocks on the product page using a WYSIWYG editor.
Setting up a blog. A blog on the site of a company that sells is useful both for the sales themselves, encouraging customers to exchange opinions, and for the reputation of a firm that positions its transparency this way. And a blog's convenience is the key to its popularity. We divided the blog articles into categories and embedded a WYSIWYG editor for publishing them. We also added a function for inserting video and photo galleries and the ability to leave comments on articles.
Calendar of holidays. Reminding people about holidays is a more than logical marketing move for a store like Vesela Zatiia. The holiday calendar we developed makes sure the store's customers never miss an occasion for another purchase.
Mailings. We shared our analytics on the effectiveness of trigger and transactional emails with the client — how to get the maximum effect without doing full-scale email marketing. We will share it with you as well: it turns out that the overwhelming majority of click-throughs and conversions come from simple trigger emails such as "Abandoned cart", "Abandoned browsing" and "We recommend this to go with your purchase…". The most convenient part is that these emails, or chains of them, work very well in practically any e-commerce segment: electronics, home appliances, groceries, clothing and so on.
And as we already said about SMS confirmations, there is no such thing as too much information during the buying process — nor too much information that motivates people to take part in it. To notify customers about changes in order status, and to inform them about the online store's promotions, we did not reinvent the wheel: we used the CMS's built-in tool and configured it.
Site speed and resilience
At first glance it may seem that ours is a calm, measured business. That is not the case, though. It turns out that people buy joyful gifts not only for birthdays and weddings. And our marketing team worked that out long ago. You would not believe it: offer a noticeable discount and our products sell without any occasion at all. At moments like that, when hundreds of interested customers — our customers, loyal customers! — come flooding to the site, it is absolutely not the time for a failure in the shape of a server going down. You have to prepare for such cases. The team at ANIART told us straight away that the problem is solvable: you need to introduce deep caching and not update products and prices during marketing campaigns like these.Olena Vorona / project manager, Europa Uno Trade Ukraine
Caching
To increase performance and raise the traffic ceiling, the site uses a caching system for generated data. The refresh time for each block is specified individually in seconds and can be changed as needed. So that managers could change the cache refresh interval themselves without involving developers, we implemented a convenient information block. Until the next generation time arrives, the data for this block is taken from pre-prepared (cached) files. If the content manager enters data that has to appear on the site before the next block refresh is due, then after entering it they can manually force a refresh of the cache for the page where the data should be shown, using a special button on the control panel.
Compression
While looking for reliable solutions for the site's resilience at moments of "serious traffic", we discussed options for delivering content quickly — in other words, how to make the site load fast. That is how we arrived at compression technologies, which, incidentally, Google strongly recommends. When you order a site from us, we will certainly tell you about them. For now, briefly and in simplified form.
| Goal | What we configured |
|---|---|
| Reduce the volume of data transferred over the network | Resource compression |
| Lighten the design graphics | Image compression; small images combined into large ones |
| Reduce the number of http requests when a page loads | All CSS is kept in a single file; the CSS is minified — comments and extra spaces removed, colour names shortened; all JavaScript is kept in a single file |
Universality
Since there are several main platforms for accessing internet resources today, and countless devices with different screen resolutions have been built on them, it was important for us to make the store universal: to support different resolutions and allow it to be used from different devices. The store had to be comfortable for users regardless of the device and the browser they open it with. To support cross-platform and cross-browser operation, we implemented the generation of the online store's pages using a responsive method.
Results of the work
- A striking and convenient design, adapted to any device.
- An original constructor for printing on balloons.
- An events calendar that reminds customers about holiday purchases.
- A request form for organising a celebration — a full-service offering.
- Import of users from the former site — with purchase history and personal discounts.
- Integration with the accounting system — exchange of products, stock balances and orders.
- Wholesale purchasing from the site.
- A significant rise in orders — from 100 a day.
Conclusions in people's own words
Our field of work is directly connected with celebrations, and it was important to us that shopping on our site should also feel festive, bring joy and be light and pleasant — and at the same time fast and effective. Our specifics demand it. The specialists at ANIART offered us the optimal way of working and, as a result, an equally optimal implementation of our requests. Requests which, incidentally, were largely shaped and refined during the work itself — fully in line with that way of working. So I can recommend the ANIART team as true professionals who are not only able to complete the task set for them well and on time, but also know how to steer the working process itself to deliver maximum efficiency.Pavlo Kuriata / director of Europa Uno Trade Ukraine
Working with the MVP approach is in many ways simpler than delivering a turnkey project. For the client, an MVP means complete transparency and control of the work process; for us, it means the chance to fine-tune how the thing works in real time rather than in test mode. And communication with the client is extremely concrete. So with an MVP both sides win. The project itself is interesting, bright and original in its specifics. The constructor for printing on balloons is a genuinely unique development! Given that thanks to the MVP we were refining rather than redoing, and building only what was really needed, the work was a pleasure. As, in the end, was the communication with the client — the store's management and staff. And when joy comes not only from the result but from the work process itself, that is wonderful!Kostiantyn Perepechaienko / project manager, ANIART
Background information about the client
Europa Uno Trade Ukraine LLC, which owns the Vesela Zatiia chain of stores, is the undisputed market leader in its industry. In Ukraine the company is the official representative of leading manufacturers of balloons and party goods, which is why it offers its customers the best prices available. All products are licensed and certified. The range of the Vesela Zatiia stores comprises more than 5000 products — balloons and festive tableware, carnival costumes and accessories, decor and decorations.
