Challenge
The producer sells in three places at once: its own WooCommerce online store and the MauDau and Rozetka marketplaces. Each channel has its own seller account, its own feed format, its own order statuses and its own rules for product categories and attributes.
As a result, the team spent time on routine work every day:
- moving orders and statuses between seller accounts by hand;
- tracking stock separately so as not to sell items that were out of stock;
- creating Nova Poshta shipping labels outside the main system;
- preparing product attributes and translations for listings manually;
- having no shared view of which operators were processing orders and how quickly.
The client needed a single dashboard showing everything: feeds, orders from all channels, stock, shipping labels and prices. Access was a separate requirement. People with different responsibilities work in the system, so each person should see and change only what they need, and permissions can be granted only within the limits of one's own role.
Another task came up along the way: the company keeps its books in 1C and uses Bitrix, so orders and products had to be passed there using 1C item IDs, without manual matching.
What we did
We built a CRM tailored to the producer's processes on Next.js 16, React 19, Tailwind CSS v4 and Supabase, deployed on Vercel. Security is enforced at the database level through RLS policies, not just in the interface.
Integrations
- WooCommerce: products and orders from the client's own store.
- MauDau: product feed and order sync.
- Rozetka: API integration, marketplace categories and feed.
- Nova Poshta: shipping labels created right from the order card.
- Claude API: translating and generating product attributes from XLSX files.
- Bitrix and 1C: since October 2026, an orders and products API based on 1C item IDs.
Automations
Five jobs run on a schedule with no human involvement: product sync daily at 3:00 AM, order sync at 4:00 AM, price monitoring at 6:30 AM and 7:30 AM, and webhook processing every 5 minutes.
Roles
Six roles: super admin, admin, manager, operator, analyst and viewer. Each role can assign only a limited set of other roles, so a manager cannot grant admin rights to themselves or a colleague.
Team performance analytics
We added something off-the-shelf solutions usually lack: operator performance analytics against the shift schedule, a "last seen online" status and cancellation reasons grouped by the party responsible.
Results
Between June and October 2026, the system grew to 18 screens and 74 API routes, with 341 commits in the repository. The project is not frozen: we keep developing it as the business's needs evolve.
What changed for the team:
- orders from WooCommerce, MauDau and Rozetka are collected in one place;
- products, orders and prices update automatically on a schedule, with no manual exports;
- Nova Poshta shipping labels are created in the same dashboard where the order is processed;
- attributes and translations for listings are prepared from XLSX files using the Claude API;
- since October 2026, orders and products can be passed to Bitrix and 1C using item codes;
- the manager can see how operators work during their shifts and why orders are canceled.
We do not cite sales growth percentages, because the main value of this project is operational: fewer manual steps and a single point of control for all channels.
What makes this project special
Typical CRMs work well with a single store but poorly with several marketplaces, each with its own rules. This system is built specifically around the producer's process: from the feed and Rozetka categories to the shipping label and the handoff to 1C. Operator analytics against the shift schedule and cancellation reasons grouped by the party at fault give the manager answers that usually have to be pieced together from spreadsheets by hand. And enforcing permissions at the database level means that even a bug in the interface will not expose someone else's data to a user.
This CRM also became the foundation for the same client's next product, the Hurtom B2B system.
Published: · Updated: