The project is a responsive, functional online store selling computers, components and related products. On our specialists’ advice, the site was built on OpenCart with a purchased template, custom styling and the necessary plugins developed on top.
The main goal of the website was to attract more buyers, increase conversion and grow sales. The brief also covered process automation, in particular automatic import of products with stock, prices and specifications via API and from external platforms (Brain, Prom).
We had to design and build the missing blocks for the mobile version ourselves, as the Figma mockup provided was incomplete. There were also technical issues on the client’s side, such as a misconfigured internet acquiring terminal in Monobank, and the brief kept growing with new requirements and changes.
The developers implemented automatic import of the product range, finished the payment and credit modules, and built specific features such as FPS display and a PC configurator. After the release on 14 January 2026 and completion of the main scope of work, the team moved to hourly work on the client’s requests.
Project goal: build an online store selling computers, components and related products. Our task was to create a responsive, functional website that would help attract more buyers and increase conversion and sales.
Project requirements
Features and interface
The site needed a sticky top menu, multiple languages, drop-down blocks with contacts and pickup point addresses, dynamic banners and convenient search with autosuggest. Key features for buyers included:
- a detailed catalogue with filtering by specifications and sorting;
- FPS figures in games depending on graphics settings;
- a separate PC configurator on the product page;
- buttons for quick purchase, instalment plans from different banks, comparison and wishlist;
- a customer account with order tracking, prepayment and warranty repair requests;
- a separate page for the TRADE-IN service.
Technical requirements and integrations
Development was to be done on a CMS with data protection. The main task was automatic updating of stock, prices and specifications from suppliers via API. The project also had to include integration with Nova Poshta and payment providers (Privat, MONO, RozetkaPay) and SEO optimisation.
Analytics (Google Analytics, Merchant Center) was installed by the client's contractor after the site went live.
Design, management and timelines
The design was to be responsive, in a red, black, grey and purple palette. The admin panel had to support user roles, product import/export (YML/Excel) and promotion management.
SEO recommendations for site development
Urgent priority
- Site language and hreflang:
- Language switcher in the header that keeps the current URL.
- Full localisation of content, interface and SEO elements for all language versions.
- <html lang="..."> attributes (uk, ru, en) and <link rel="alternate" hreflang="..."> tags (including x-default) in the <head>.
- Canonicalisation:
- <link rel="canonical"> on all pages.
- Pagination (?page=2) points to itself.
- Dynamic pages and sorting (?sort=) point to the clean page without parameters.
- 301 redirects: SSL certificate and a 301 redirect from http:// to https:// for the whole site.
High priority
- URL rules (friendly URLs):
- Hyphens only (no underscores, spaces, Cyrillic, special characters or IDs).
- Folder structure: / (UA), /ru/ (RU), /en/ (EN) with transliterated or translated keywords.
- Image optimisation:
- Templates: alt = product H1, title = H1.
- WebP format, meaningful file names (no IMG_1234), loading="lazy", exact physical dimensions (not a CSS background) and a separate image-sitemap.xml.
- Indexing and sitemap.xml:
- <meta name="robots" content="noindex, follow" /> for search, cart, registration and checkout/order confirmation pages.
- An auto-updated sitemap.xml (only 200 OK pages, up to 50k URLs / 50 MB) linked from robots.txt.
- Meta tag templates (manual edits in the admin panel take priority):
- Categories:
- Title: [Category name] buy in Ukraine |
- Description: Order [category name] at a good price. Delivery across Ukraine, quality guarantee |
- Products:
- Title: [Product name] buy |
- Description: Buy [product name]. Price, reviews, specifications. Fast delivery from
- Categories:
- Structured data: Product, BreadcrumbList, Organization, Review / AggregateRating, LocalBusiness, ImageObject and Open Graph (for social media).
- Home page duplicates: a server-level 301 redirect from /index.php and /home.php to the home page.
Medium priority
- New pages (with unique Title, Description and H1):
- /kontakti/ (Contacts)
- /politika-konfidencijnosti/ (Privacy policy)
- /obmin-ta-povernennya/ (Exchange and returns)
- /pro-nas (About us)
- /dostavka-ta-oplata/ (a combined Delivery and payment page)
- Speed optimisation (PageSpeed): minifying and removing unnecessary JS/CSS, eliminating render-blocking resources, setting up caching.
- Product sorting: in-stock products first by default; additional options: price ascending, price descending, popularity.
Migration requirements and robots.txt
- Migration (Stage ➔ Production): development on a closed test domain; at release, check that no links, tags or resources point to the test domain (e.g. stage.***.com.ua).
- robots.txt: block /admin/, /system/, /storage/, /catalog/, /download/, /compare-products/, /wishlist/ and URLs with route=; allow /image/ and add a link to the sitemap.
Approved sitemap:
The client chose to buy an OpenCart template, with development of the missing plugins and styling close to the design. Our developer and SEO specialist recommended this CMS: OpenCart is the best option for a large online store, and WordPress was not suitable in this case. A move to the ukraine.com.ua hosting was also planned from the start.
However, the Figma mockup of the mobile version needed significant work. Some required blocks were missing, so during layout we had to design and adapt the missing elements ourselves, based on the desktop version of the site.
At the same time we gave the client a metadata template to implement and recommendations on filters from the SEO team.
One of the main tasks was automatic product import from the Brain marketplace and from the client's own store on Prom. Both tasks were completed: products are now imported automatically with all specifications, images, prices and descriptions.
SEO recommendations for site filters
Filters were to be created automatically from product specifications after import, and unnecessary ones were switched off before release.
Protection against duplicates and junk indexing:
- Dynamic filter pages had to have a canonical pointing to the parent category and <meta name="robots" content="noindex, follow">.
- Dynamic filters had to be blocked from crawling in robots.txt (Disallow: /*?filter= and similar).
- When using GET parameters, the order of variables in the URL had to be strictly fixed.
Flexibility for future SEO:
- The system had to allow opening selected important filters for indexing, with friendly URLs (for example /bilij-noutbuk-lenovo/), unique meta tags, their own canonical and an SEO text.
At the same time our developer finished the instalment payment module, with additional code changes. In December 2025 we started importing products according to the catalogue structure.
14 January 2026 – the site went live. For safety, we temporarily closed it from indexing (robots.txt and noindex in the head).
PC configurator. We built it on the basis of the approved site design.
We also tested the Monobank module: we created a test product to check a real payment, but the payment failed. Monobank returned an error:
{"errCode":"FORBIDDEN","errText":"you don't have active terminal for internet acquiring"}.
The cause was on the client's side, in their Monobank account: internet acquiring was not activated or the terminal was not set up. We passed this on to the client.
In January the client sent us a brief on displaying hardware performance and FPS.
Tab functionality: add a new "Tests and performance" tab to the product page, shown only when the data is filled in.
Administration: content managers fill in all figures (static tests and in-game FPS) manually in the product admin panel.
Static tests: three general figures are shown – maximum power consumption (W), 3DMark benchmark score and Blender render time.
Gaming tests (FPS): general parameters (screen resolution and graphics preset) are set once per product, then FPS values are entered for the selected games from the list.
Display logic: empty blocks and games without an FPS value are hidden automatically.
Interface: data is shown read-only, in the site's style, adapted for desktop and mobile.
All additional work was agreed and added to the backlog.
In March 2026 the client expanded the brief and added new requirements.
Choosing a Nova Poshta pickup point had to lead to quick checkout.
Uploading several product photos at once was to be added.
Enhanced e-commerce, Consent Mode and offline conversion tracking had to be set up.
A credit module and a "Buy on credit" button were needed, as well as "Pay in instalments" stickers on product cards in the catalogue.
Changes to visual elements and stickers:
- Payment system icons (Apple Pay, Google Pay, Visa, etc.) in the payment block.
- A "Free delivery" sticker for eligible products.
- A mobile-friendly layout for specifications.
Footer: adding the rating and reviews from Google Maps.
Working out the credit logic for Privat and Mono.
In April we agreed with the client to move to new hosting and set it up.
As of May 2026, the following was still in progress:
- Friendly URLs for filters
- A reworked interface for entering in-game FPS
- Merging the Delivery and payment pages with the Product return form
- The PC configurator
- A slider for mobile devices
- Adjusting the "Pay in instalments" icons
After that we moved to hourly work at the client's request.