A furniture marketplace

Business Area:
  • Furniture and home accessories
  • Russia

Vobaza is a furniture maker and distributor from Russia. With the onset of the pandemic, the offline sales dropped, and the owners decided to shift to an online marketplace format to sell furniture. They needed an IT partner to bring the offline business processes to the online environment. The Company owners first addressed the AWG group, an IT agency with an expertise in building full-fledged eCommerce projects. The agency helped build business processes, develop an overall architecture, and select the IT system developer. 

The main requirement of Vobaza was to launch their online project in just 3.5 months before winter holidays. As the time was short, it was decided to proceed with a ready-made eCommerce platform. They decided to turn to the CS-Cart marketplace platform as it met their requirements the most. 

The AWG group recommended us for the platform customization. Development started in October 2020, and the site went live within 2 months, in December 2020. All improvements, integrations, back- and frontend design were carried out by a dedicated team of Simtech Development. Starting with a few items, the marketplace now has about 25,000 products. Despite the massive load on the site, the site works fast thanks to optimizations performed on the backend by our team.

Implementing the project

Integration with Order Management System

Starfish24 OMS is the service that implements the work of the company’s call center. The website transmits the information on products and orders to Starfish where this data is being processed. Managers receive information about the order from Starfish and contact customers. Orders can be placed at Starfish by a call center operator while all information is transferred back to CS-Cart.

Starfish also acts as a shipping cost calculator and allows displaying estimated delivery dates and possible time slots. On the checkout, the customer sees the cost of delivery, the cost of door-to-door delivery and the cost of furniture lifting and assembling – data that Starfish returns to CS-Cart.


Door-to-door delivery (cargo or passenger) and assembly are additional services integrated from Starfish to CS-Cart. The assembly service allows the marketplace to select any product and set a certain condition, for example, free assembly if the order includes furniture lifting to the door or assembly of the soft furniture.


Data on the type of delivery is transferred from Starfish to CS-Cart: regular delivery, express delivery (on the same day) and pickup.

On the storefront, you can filter products depending on the availability of express delivery (toggle switch on the screenshot).


Integration with Accounting System

The 1C accounting system is present in the default CS-Cart, but with limited functionality. For Vobaza, a separate integration with 1C was done. They use 1C for managing stock, finances, employees, etc. Products are created on the side of CS-Cart, then these entities are sent to 1C. As for orders, they are created in CS-Cart, then sent to Starfish, and from there they are transferred to 1C.

After integrating, the website is always in sync with the stock and finances. The 1C integration allowed the company to expand the efficiency of their eCommerce site in the shortest time possible, and manage it conveniently.

Integration with SMS provider

In the default version, registration with email is only possible, which is not always convenient. We introduced registration by phone number for greater user convenience.
The user only needs to select Register, enter his or her phone number, and get a verification code. That’s it. Authorization completed.
At the same time, the country code is filled in automatically when the user selects a country.


The SMS service integration allowed sending an sms to customers with the order information: the order successful placement and the order ID.


Integration with the system to determine user’s location

We integrated MaxMind for geolocation with the ability to change the city if the user opts for doing this. The default Yandex Maps allows the same for the user, but its backend configuration can cause conflicts between Java Scripts. MaxMind defines the user location using IP address without the need to refer to a script. This reduces risks of script conflicts.


We made it possible to output a popup to confirm the city of the user location. The popup has a field to search for a city where the Starfish hints are displayed to help the visitor. Hints come up at the time the customer starts typing the city name.


Determining the user location is a valuable feature. The cost of delivery may vary depending on the user location. Besides, the product availability in stock is dependent on a particular region of the user location.

User Profile Enhancement

We have redesigned the user profile to make it more user-friendly, intuitive and eye-catching.
After entering the number and registering, a personal account is created for the user.
Here you can add your personal information, a photo, view your Wishlist, and also see information on the latest orders and the list of orders.


We introduced a new section “My addresses” where the customer can save an address and use it later on the checkout page. For example, you can save your home, office address, or the address of your parents and friends. It is very convenient because you do not need to re-enter the address every time you order an item. All you need is just to select from your favorites.


You can assign a default address that will be automatically added at checkout, and you can add a new address at checkout which will be saved in the customer profile.


Design Integration

We have integrated the design according to the Customer’s mock-ups. It is worth noticing that the mockups were well-thought-out, challenging and informative. That was a very challenging and mutually fruitful work where both sides were involved at full. It allowed us to produce the best look-n-feel for the store that is possible.

All main pages – Homepage, Catalog, Product Page, Cart, Checkout, User Profile, and popups – were redesigned.

The Homepage got a compact header with an informative footer, a super mega menu, a block with quick links for navigating through categories, and collections.
The Blog page got a gorgeous look.


The Catalog page became a perfect hub to display products with more information on the hover. The color of the product changes when putting the cursor over a variation. You can go directly to the desired variation by clicking product features.


We added a slider filter to hide additional product filters.


Product page was redesigned to improve showcasing of product variations, displaying the main features of the product on the first page with ability to proceed to more detailed information. It shows the delivery information and the product preview. The page was extended with the infinite scrolling under the main image, and got extended reviews.

We designed product variations. The thumbnails show a sofa variation with a different color.


The Product Page displays information on delivery, product features and reviews with the ability to add photos.


The infinite scroll is located under the main image to allow people to enjoy a frictionless browsing experience.


The Checkout was made as one page. It is not cluttered with fields, as some of them are hidden in the sliders.


We have improved the order page and made it informative and user-friendly for the customer.
The order page provides all the information the customer needs including:

  • Product weight and size
  • Cost of delivery
  • Delivery date and time
  • Assembly and lifting to the floor
  • Payment method
  • Privacy Policy

We developed the user-friendly mobile version of the site. It is similar to a mobile application with the navigation bar implemented as icons at the bottom of the screen.


The menu on mobile and desktop versions can be edited. Icons allow their manual editing with the ability to enter a SEO-friendly text with a link that leads to the desired URL.

The mobile version was enhanced with the Hamburger menu to allow compact arranging of all menu items


Order consolidation and splitting

When the user adds products from different vendors, the cart is split by warehouses. At this, if the orders can be shipped on the same date, deliveries are consolidated. Multiple deliveries are also available when there are items with deliveries on different dates. For the customer, it looks like one order with different deliveries. In this case, the cost of delivery is calculated depending on the location of the warehouse, and includes the cost of additional services being part of the order (such as delivery, assembly and door-to-door delivery).


Bulk product import

By default, you have to manually map each field in the import file. We modified the way the fields are mapped with the product fields in the system. The automatic mapping greatly reduces the manual work.


Sales reports

We made it possible for vendors to generate a detailed sales report for the accounting needs. The report shows the information about every order placed in the system – products, order status, product price, cost of delivery, date of delivery, the amount accepted by the marketplace and the amount accepted by the vendor in case the vendor delivers the order. It also displays the amount of money that the marketplace owes the vendor or vice versa. Reports can be downloaded in the PDF format for a certain period.


Website optimization

Since the launch of the site, the product base has grown tremendously. At present, the marketplace sells about 20,000 products. This creates significant load on the site speed. We have optimized processes to speed up the website work.

We introduced fast adding of an item to the cart without calculating the shipping cost. The system does not need to calculate the shipping cost at the stage of adding it to the cart. After this optimization, adding happens quickly, without extra load on the site. Shipping cost is calculated when the user places an order.

Lazy loading implemented for the Category page, Products and Banners allows the marketplace not to download all the images of the site at once, but as you browse information. This sequential loading has a positive effect on the site speed. The website loads faster.

All requests from Starfish are cached. We introduced a delayed sending of orders and email notifications to optimize performance of the site.

At Checkout, clicking Place an Order is triggered by the cron. Thereafter, the order is sent. This allows an optimal distribution of the load on the site, since the event is triggered at the time of the least load.

Extended logging of sellers’ actions

By default, if vendors change something in the product settings, the product is sent to the administrator for pre-moderation. But the administrator can see only the state of things telling that something has been changed without details. We have expanded the logging of vendor actions. Now, the administrator dashboard shows what was done with the description of changes.

The screenshot below shows the dashboard with the detailed logging. Red means the previous state. Changes are shown in green. With this modification, it is easier for the site administrator to track the vendor actions.


Product log

A product log was introduced in the admin area of ​​the store. Here, changes involving products are shown. For example, the screenshot below shows how the price of the goods was changed. Green states for the new price.



The website is redesigned and is eye-catching. It loads instantly and sustains high load due to extensive optimization: the site runs smoothly even with 20,000 items on it. The dashboard is detailed allowing the administrator to view vendors’ actions, form sales reports, and monitor product changes. SMS registration and convenient geolocation with the ability to change cities makes the onboarding of new customers quick and comfortable. Integration of 1C and Starfish makes processing of new orders more efficient and empowers the overall functioning of the Multi-Vendor platform.

Default functionality is not sufficient?​ Let’s discuss your idea!