
The Challenge
A Ukrainian merch company was juggling product data from three separate suppliers — DeksGroup via CSV exports, Eney through XML feeds, and Midocean's REST API. Each had its own naming conventions, category trees, and pricing structures. Managing inventory meant manually cross-referencing spreadsheets and recalculating margins for every order.

Our Approach
We built a multi-source data pipeline that ingests CSV, XML, and API data into a unified ConsolidatedProduct model. Duplicate products from different suppliers get merged under a single listing with per-supplier variant tracking.
The pricing engine uses a formula with four tiers — cost-based markup (8 brackets from 100% down to 20%), quantity discounts, origin coefficients for Ukraine vs. European stock, and a 20% minimum margin floor. All configurable from the admin panel without touching code.
Key decisions:
- ●AI-powered categorization — Claude auto-classifies supplier products into 14 canonical Ukrainian categories with confidence scores
- ●AI translation — product names and descriptions translated from English to Ukrainian via Claude
- ●Layered query architecture — routes delegate to queries, which delegate to storage, keeping each layer focused
React 18
Component architecture with Vite for fast development
Express.js
Lightweight API layer with request logging
PostgreSQL
Relational storage for products, variants, and pricing
Drizzle ORM
Type-safe database queries with git-tracked migrations
Key Features
- ●Multi-source product ingestion from CSV, XML, and REST API into a unified catalog
- ●Tiered pricing engine with 4-factor formula configurable from admin panel
- ●Mega-menu navigation with progressive 3-column category reveal
- ●Advanced filtering by category hierarchy, color, size, and availability
- ●AI category mapping with admin review workflow and confidence scoring
- ●JWT + Argon2 authentication with Google OAuth and reCAPTCHA protection
- ●Contact form with SMTP notifications for order inquiries
Outcome
Three fragmented supplier catalogs became one intelligent storefront. Pricing that used to require spreadsheet calculations now updates automatically when tiers are adjusted. The admin team manages categories, reviews AI classifications, and processes orders from a single dashboard — no manual data wrangling.
