Wildberries, Ozon, Lamoda and Detsky Mir prices in one window, and no SKU sells below its minimum price, even when a marketplace promotion pushes it down
4 dashboards → 1 window
Where prices are viewed and changed
How we measured: before the project, prices were viewed and changed separately in the Wildberries, Ozon, Lamoda and Detsky Mir dashboards; afterward, all four marketplaces are brought into one platform table, and prices are sent to each marketplace API from there
The company sells on four marketplaces: Wildberries, Ozon, Lamoda and Detsky Mir. Each has its own dashboard, so seeing what price a product shows on the storefront meant going to four places. Changing the price on a hundred SKUs meant doing it four times, in four different interfaces.
The bigger risk was elsewhere: on a marketplace, the seller isn't the only one who changes the price. The marketplace runs a promotion, adds its own discount, and the product starts selling for less than the company is willing to let it go for. That usually comes to light after the fact, when the sales have already happened.
On a marketplace, the seller isn't the only one who changes the price: a promotion can push a product below its acceptable price, and it comes to light after the fact.
And no dashboard answered a simple question: when, and from what to what, the price of this SKU changed, and whether the change actually reached the marketplace.
When the price center was ordered, the company was already running the unit economics system we had built earlier. A second standalone program would have meant two windows, two copies of the catalog and two versions of cost of goods that sooner or later drift apart.
So we proposed building one platform, and the CEO approved the decision. We reworked the unit economics system into microservices and made it the platform's first module, with the price control center alongside it as the second. Company staff work in one interface instead of switching between programs.
Not a second program but a second module: the same catalog, the same barcodes and the same cost of goods from 1C.
What the modules share is what everything else rests on: the catalog of products and sizes, barcodes, connected marketplace dashboards and cost of goods. The cost of goods reference comes from 1C once and serves both modules: unit economics uses it to calculate profit, the price center uses it for margin and minimum prices.
The main screen is a single table: products with their prices and statuses on all four marketplaces, with search, filters and bulk row selection. Products taking part in promotions are marked right in the table.
The product card brings together everything a pricing decision needs: prices by marketplace, cost of goods, marketplace commissions and margin, the price change history, and a link to the product in the marketplace dashboard. A new price is sent to the marketplace API from the "Update price" dialog, without opening the dashboard.
For bulk changes there is Excel import. The template is downloaded from the software, each row finds its product by barcode, only filled-in cells are applied, and before applying the software shows exactly what will change. Every change, manual or bulk, goes into the log: old price, new price, status, and the marketplace error if there was one.
For each SKU the company sets a minimum price: by hand or by bulk calculation, with a preview before applying. On every sync interval, once every 15–60 minutes, the software compares the Wildberries and Ozon storefront price against it and flags products that have dropped below.
What happens next is set by the company with switches. With automatic promotion removal on, an Ozon product pushed below its minimum by a promotion is taken out of that promotion. With automatic restoration on, the price is raised to the minimum by reducing the discount. When the price can't be raised through the discount, the software reports why, and the price is corrected by hand.
The software holds the price floor, even when it's not the company but a marketplace promotion that moves the price.
With the switches off, the software changes nothing and only highlights products below the minimum. The monitoring panel shows how many such SKUs there are right now and how the last check ended.
There are deliberately no automatic repricing rules here: the software holds the floor, and a person sets the price above it.
Each marketplace has its own API, its own rate limits and its own capabilities. Wildberries accepts prices and discounts, Ozon also accepts taking products out of promotions, Lamoda prices and sale periods, Detsky Mir prices. The software respects each marketplace's limits, and price writes are idempotent: sending the same price again doesn't create a second change.
The schedule differs too. Wildberries and Ozon prices sync automatically every 15–60 minutes; Lamoda and Detsky Mir prices, along with tariffs and commissions, sync daily at a set time. The catalog updates on an operator's command, with progress shown in the interface in real time. Only one sync runs at a time, so they don't get in each other's way.
Several dashboards can be connected to one marketplace. A key is checked with a request to the marketplace API at the moment it's connected, so a wrong key shows up immediately, not at the first failed sync.
The platform is deployed in the company's own infrastructure. Price, margin and cost data and the dashboard API keys never leave its servers, and the keys are stored encrypted in the database.
Access to the software is restricted at the infrastructure level: VPN, an IP allowlist or Basic Auth in nginx. Deployment takes a single command, and the system's state is exposed as Prometheus metrics.
Prices for all four marketplaces are viewed and changed from one window. Changing the price on a hundred SKUs now means uploading one file and checking the preview, not going through four dashboards.
A marketplace promotion can no longer quietly push a product below its acceptable price: such a product is either highlighted or brought back to the minimum automatically, depending on how the company has configured the software.
Every price change leaves a trace: whoever made it, a person or the software, the log shows what it was, what it became, and whether the change reached the marketplace.
And all marketplace work now lives on one platform: an SKU's profit and its price are calculated from the same data.
A huge thank you to the VerionGroup team. We used to check prices on four marketplaces by hand, and marketplace promotions would quietly push products below the price we are willing to sell at. Now all prices are in one window, and the software itself makes sure we don't sell at a loss. It has already saved us hundreds of thousands of rubles. It is really hard these days to find people who will do the job well. This team works for the result, and for us that matters most. The bar is genuinely high, and they understand what we need from half a word. This isn’t our first project with them, and it won’t be the last.
The first conversation commits you to nothing: we will look at your situation and tell you whether you need a project like this at all.