Go back to all Cases
Smart Shop

The e-shop voice chatbot that helps to select a suitable item based on the characteristics specified by the customer

  • Chatbots and voicebots


To create a solution for the online clothing shop that allows to select the appropriate item according to the customer's description - formal and emotional characteristics. 

Our client wanted to create an online shop selling clothes and shoes, with the possibility to select the appropriate item according to the customer's description. 

A regular store offers the customer a choice of size, color and a certain number of parameters that have some fixed set of values, for example, the sleeve can be long or short.

Our client wanted to let the choice be based on less formal features, such as militaristic style or "looks like a certain product of a certain brand" that is also available in the store, or to be based on the client's preferences according to previous purchases. The implementation of these filters will help the customer choose a suitable product and reduce the number of viewed items to no more than a dozen. 

Common filtering options provide the customer with several dozens or even hundreds of options, so it often becomes boring to look at dozens of pages with products, and the customer leaves without making a purchase. 


Creating a voice chatbot imitating human communication - like a good friend or companion that understands the customer's tastes and helps make a choice. 

To implement such a solution, we proposed to create a voice bot whose communication style is very similar to a human one. The idea is that the bot imitates a good friend or companion who understands the tastes of the client. 

It is clear that to "understand" that two blouses are "similar" to each other, this similarity must already be predetermined when the items are placed in the store. This engages more work than usual when receiving goods. The descriptions of the items in this store include not only formal parameters, such as size or color, but also emotional characteristics, such as: strict, eye-catching, and so on. These characteristics are defined by tags. Besides the system operator, customers can also add their tags to the product review if they wish.

In addition, when goods are inserted into the database, the operator checks the items for "similarity" and points out that the goods are similar. The "similarity" assessment will be subjective, but we aim to add an emotional factor to the product recommendations, and not to increase the number of formal characteristics. 

The last point taken into account when recommending a product to a buyer is the previous purchases of those customers who have already bought the particular product.


Amazon Lex Service to implement the voice bot and Amazon Personalize Service to measure the consumer preferences.

The voice chatbot is implemented as a module of the e-shop website. When entering the website, the customer is suggested to talk to the bot. The beginning of the conversation will be standard for most online clothing shop bots: the bot has to find out the gender of the person for whom the clothes are chosen, the type of clothes or shoes, the size. Then there are questions about clothing style, for example, the bot asks how a person wants to look and offers options to choose from: aggressive, calm, elegant, etc. 

The bot offers clothing options to the buyer, using the tags provided when the clothing description was added to the database, and when other customers have rated this item.

The solution consists of mobile and web versions of client applications and includes a web version for maintaining the product database, as well as for analyzing the collected statistics.

PostgreSQL is used as the database. We use REST API to connect mobile and web applications to the cloud.

We use the Amazon Lex service to implement the voice bot. The Amazon Personalize is implemented to measure the consumer preferences.



  • React Native
    React Native
  • Node.js
  • PostgreSQL
  • React Native
  • Amazon LEX
  • AWS Lambda
    AWS Lambda
  • Amazon Personalize