Back to portfolioEcommerce · 2020

Cosmetics Factory

A Korean-cosmetics distributor sells wholesale and retail from one store: each audience gets its own pricing and loyalty, and orders land in the accounting system instead of a spreadsheet.

  • B2B + B2C in one store
  • Accounting system sync
  • Wholesale account signup

The Brief

Cosmetics Factory imports Korean cosmetics into Ukraine and sells to both resellers and end customers. Running two separate stores would have doubled the catalog work and split the stock picture, so the brief was one storefront that behaves differently depending on who's signed in.

What Was Built

1. A catalog built for a distributor's range

The catalog was structured in 2020 around a three-level category tree, with brand and product-line taxonomies used as first-class navigation, and six facets on top of it — brand, product group, product line, skin type, active ingredients, product type. Today the store runs around a thousand products on that same structure; that number is what it holds now, not what it launched with, and the point of the build was that it could grow this far without the filters being rebuilt.

2. Split pricing and two loyalty programs side by side

Retail customers saw UAH prices, a bonus account, cashback and rewards for reviews. Wholesale partners applied through a form that created a real account rather than just sending a lead, then got a fixed base wholesale price with per-brand volume discount tiers. Two loyalty programs — retail bonuses and wholesale volume discounts — coexisted in one install without contradicting each other.

3. Orders that nobody retypes

Products and orders synced with the client's accounting system, so the warehouse and the store stopped drifting apart — that link is what made one shared store viable instead of two. Checkout covered card payments, bank invoices for legal entities, cash on delivery and Nova Poshta shipping.

The Result

One admin panel instead of two stores.

  • Wholesale onboarding ran without a manager touching every request.
  • The catalog kept growing without the filters being rebuilt.
  • Launched in 2020 and trading ever since.

Stack, honestly: WordPress and WooCommerce, with the pricing, loyalty, catalog and accounting-sync logic written on top. Built in 2020; the site has been run by the client's own team since handover, and the front end sits on a commercial theme and page builder that came later. This is exactly the class of store I now move to a headless stack once the catalog outgrows WordPress — and knowing this machinery from the inside is why the move keeps its URLs, filters and rankings intact.

Need a website built?

Tell me in a few sentences what you need — I'll reply with an estimate and a timeline within 24 hours.

Or go straight to the brief