Evrotrans 2.0: from a WordPress store to a Node.js platform with AI

An auto parts store starts with a simple question: will this part fit my car? Behind the answer are names in several languages, OEM numbers, vehicle models, donor cars, photographs, stock levels and delivery conditions. To help a customer find the right item quickly, those details need to work together.
For Evrotrans 2.0, we rebuilt both the public store and the tools the team uses to maintain the catalogue and process orders. The result is a custom Node.js platform with a Next.js storefront, Vendure commerce backend, Payload CMS, a dedicated search engine and AI tools.
You can find the short overview in our Evrotrans 2.0 portfolio entry. Here, we take a closer look at the architecture and what the individual parts do in everyday work.
Speed in numbers
We checked the new homepage across seven consecutive loads. The results show when the browser first displayed content and received the first page data.
1
2
3
4
5
6
7
FCP range: 1.62–2.25 s. The figures above are medians, not the fastest run.
How we measured
21 October 2026. Evrotrans.lv homepage, desktop Chromium 155, 1440 × 1000. Seven consecutive navigations with the browser HTTP cache disabled; server and CDN caches retained. No network or CPU speed emulation. A local laboratory observation, not data from all visitors. FCP records the first visible text or image, not full page readiness. We have no comparable measurements for version 1.0, so we do not claim a percentage improvement.

From the first website to a new platform
Our work with Evrotrans began with a WordPress and WooCommerce website. The first project included an online store, external catalogue synchronisation, an eBay integration and four language versions. That was the first stage from which we developed the next solution.
The second version needed to do much more than update the design. It had to connect parts search, a catalogue serving several markets, warehouse work, payments, shipments, returns and content management. Another part of the brief was to apply AI to repetitive catalogue tasks.
We chose the architecture around those processes. WordPress and WooCommerce remain suitable for many stores. For this project, a custom platform let us define clearer responsibilities for the storefront, commerce data, editorial content and search.
The parts of Evrotrans 2.0
We built the public store with Next.js and React on Node.js. Vendure manages products, customers, carts, orders and commerce rules. Payload CMS handles pages, articles, images and other editorial content. Meilisearch maintains a catalogue index designed for search.
Data is stored in PostgreSQL, with supporting infrastructure for caching and file storage. Longer operations can run in the background. A customer does not need to wait for a batch of photographs to finish processing or for the search index to be updated.
This separation lets us develop each part at its own pace. We can change the storefront, add staff tools or improve search logic while keeping clear data flows between the components.
What changed underneath
Search, commerce and content can be optimised separately. Components exchange data; this diagram shows their responsibilities.

Search that follows the structure of an auto parts catalogue
Customers look for parts in different ways. One knows the exact OEM number. Another knows the make and model of the vehicle. Someone else starts with the part’s name. A single search journey would not cover all of them.
We built search by name and OEM code, alongside selection by vehicle make, model and year. A category tree takes customers from a vehicle system, such as the engine or brakes, to a specific type of part. Results support filtering and sorting.
OEM search handles variations in the way a code is written. Spaces and separators should not become unnecessary obstacles. The system processes exact and related matches separately to organise results. Compatibility still needs to be checked against the details of the part and vehicle.
The search index is separate from the commerce database and synchronises with the catalogue. This allows search to be tuned independently of order processing.
A shorter path from code to part
- Customer enters an OEM
03L 906 023The system handles spaces and separators. - Search index
03L906023Meilisearch uses a prepared catalogue index. - Grouped resultsExact matches, the same number family and possible relations.
The code illustrates processing, not the availability of a particular item. Compatibility needs to be checked against the part and vehicle details.
Donor vehicles as part of the catalogue
For used parts, the link to the vehicle they came from matters. We built donor vehicle records and relationships between those vehicles and products. The team can work with a particular vehicle and its parts within a shared data model.
The same link is used during photo processing. Before starting a batch, a member of staff can select the donor vehicle. The resulting drafts retain that relationship. The product’s context is recorded during preparation rather than added as a separate task at the end.
19 language and regional versions in one system
The public platform serves 19 language and regional versions. These cover Latvia, the Russian-language subdomain, the United Kingdom, France, Germany, Italy, Spain, Estonia, Finland, Czechia, Romania, Sweden, Slovakia, Bulgaria, Denmark, the Netherlands, Portugal, Austria and Belgium.
This does not mean 19 distinct languages. Austria has a regional German version, while Belgium uses a French version. The distinction matters for both customers and search engines.
Each public domain has a defined locale. Interface copy, product and category translations, email content and SEO data need to stay coordinated. A domain should not unexpectedly change language because of an earlier choice saved in the browser.
We configured domain-to-locale mapping, canonical URLs and hreflang relationships. Regional versions use the appropriate language tags, such as de-AT and fr-BE. A shared catalogue avoids maintaining 19 independent copies of the product data.
Administration built around the team’s work
The public store is only part of the project. If a member of staff has to open several systems and copy the same information for every order, a new design alone will not make that work easier.
We extended Vendure administration with tools for Evrotrans processes. Product lists expose the catalogue and stock information needed for daily work. Order lists show delivery points, tracking and invoice details. Customer records include order statistics and EVRO PLUS information.
We also built donor vehicle management, photo processing, draft review and sales reports. The system includes an in-store sales workflow. The purpose is straightforward: the action a team member needs should be available next to the product or order they are working on.
AI: from a photo folder to product drafts
AI-assisted catalogue preparation is one of the larger parts of the project. A used part may have several photographs from different angles, a close-up and a label carrying a code. Before publication, someone needs to work out which pictures belong together and where the part belongs in the catalogue.
A member of staff uploads a folder of photographs and can select a donor vehicle. AI processes the images in batches, groups them, suggests a category, attempts to read OEM numbers and creates product drafts with image galleries. Uncertain OEM numbers are flagged for review.
Processing runs in a persistent server job queue. Its state and progress are saved, so closing the browser does not stop a recognition job that has already started. Staff can return to the results later.
Before publication, a person checks the category, photographs, OEM numbers, price and stock. A draft cannot be published without a positive price, and flagged OEM numbers need to be reviewed. AI prepares the material; staff retain the decision about what goes into the public catalogue.
That boundary matters. Recognising a part in a photograph does not guarantee compatibility, and a code read from an image may contain an error. Review is therefore part of the workflow itself.
AI also helps with category translations
Adding one category to a multilingual catalogue creates work in several languages. We built a tool that uses an existing translation glossary and, when needed, prepares additional translations through an OpenAI integration.
The translation logic is tailored to auto parts: short, specific terms without promotional wording or an unnecessary vehicle make. Abbreviations such as ABS, ECU and EGR are preserved where appropriate. The results enter the administration workflow for the team to work with.
Payments, invoices and shipping
We integrated Stripe, Klix and bank transfers. Payment and order states are handled on the server, with administration tools for checking payment situations. Invoices can be generated and downloaded as PDFs.
For shipping, we developed integrations with Omniva, DPD, Venipak, Unisend and UPS. The platform includes pickup point selection, shipping label generation, courier collection and tracking workflows. Available actions depend on the carrier, destination and shipment details.
Returns are connected to order information and customer accounts. The available carriers and actions follow the order’s state and return conditions. After-sales work can use information already in the system rather than starting the paperwork again.
Customer accounts and EVRO PLUS
Customer accounts contain order history, addresses, invoices and return requests. We also implemented the EVRO PLUS rewards programme: a 5% bonus on paid merchandise is linked to the customer’s balance and transaction history.
Customers can use rewards towards later merchandise purchases under the programme’s terms. The system also tracks rewards reserved in a cart and releases the reservation if the order is not completed. Customers and staff see information from the same system.
Content and communication after the purchase
Payload CMS gives the team a separate workspace for articles, pages, images and navigation. Localised fields, drafts and versions allow content to be prepared before publication. Editorial work can develop without changing the commerce logic.
For order communication, we built multilingual email templates and scheduled notification workflows. These include order confirmations, shipping notices, review requests and abandoned checkout reminders. An email preview tool in administration allows the team to check content and presentation.
Performance starts with how the work is divided
We addressed performance at several levels: page rendering, data requests, image processing, caching and the search index. Longer operations were moved into background jobs. Catalogue-to-search synchronisation has its own processing logic.
This makes it possible to improve performance where it matters: search, category navigation or image loading. Staff tools and background processing do not need to turn every customer request into an operation spanning the entire system.
The store runs while AI processes photographs
- Search
- Part page
- Cart
- Photographs
- AI draft
- Human review
Photos are processed in their own job queue. A customer request does not wait for the batch to finish. Publication follows staff review.
Migration and SEO across markets
Replacing an existing store means accounting for the data and addresses customers already use. We created migration tools for WordPress and WooCommerce data, together with legacy URL handling and redirects. Product and category links need to connect to the new structure.
Technical SEO includes domain-specific canonical URLs, hreflang, sitemaps, product structured data and localised metadata. Filters and other technical URLs have their own indexing rules to avoid producing unnecessary copies of the same page for search engines.
Deployment includes automated checks and release records, while database backup verification tools support maintenance. These details are less visible than the design, but they matter once the platform is in daily use.
What Evrotrans gained
Evrotrans 2.0 connects parts selection, 19 language and regional versions, staff tools, payments, shipping and content management in one platform. AI helps prepare the catalogue, with review retained wherever an error could affect a customer.
The value lies in the connections. Photo processing leads to a product draft. A reviewed product enters the catalogue and search. An order connects to a payment, invoice, shipment and customer history. Further improvements can build on that foundation.
Visit the Evrotrans store, view the second version in our portfolio, or read about the first version.
If your store needs tailored search, staff tools or integrations with other systems, explore our e-commerce development service. We start with the work your team needs to do and choose the technical solution around it.