B2B raw-material sourcing marketplace

Supplo

A B2B platform that turns raw-material sourcing from a slow, relationship-driven hunt into a single search box — backed by a governed catalog of verified suppliers.

Data normalizationSearch platformNext.jsRole-based portalsOpenAI-assisted ETL
~4Mrecords re-engineered
2 appsone integrated platform
Zerosignup to search
Governedverify before live
All case studies
At a glance
Industry
B2B raw-material sourcing
Build type
Search marketplace + role-based portals
Main challenge
~4M messy, untrusted records
System scale
Governed catalog, zero-signup search
Engagement
Optimize + extend + data normalization
Project context

What this project was for

IndustryB2B sourcing — pharma, cosmetics, food, chemicals
EngagementSite optimization + dashboard + data normalization

Turned raw-material sourcing into a single search box, backed by a governed catalog. We normalized ~4M messy ingredient records into a clean data model and built supplier + admin portals with zero-signup search.

The problem

The problem

For manufacturers across pharma, cosmetics, food, and chemicals, finding the right raw material means word-of-mouth, scattered directories, trade shows, and slow email — and capable suppliers stay invisible to the buyers who need them. Supplo's answer is deceptively simple: search a raw material, instantly see trusted suppliers who carry it. But a search box is only as good as the data behind it.

A search box is only as good as the data behind it. Theirs was four million rows nobody could trust.
What we built

What we built

01

A buyer-facing search that earns trust

one-box search by name, CAS, or INCI number, no signup; matching suppliers appear instantly, then a polled background validation task refreshes with enriched results; filter by country and open full company profile pages.

02

Every dead-end search becomes a lead

a 'no results' page captures the buyer's email and routes a real sourcing request straight to a human.

03

A governed back office

one role-aware app: an admin control center over companies and the master catalog with verified/active/published gates, plus a supplier portal where each company self-manages its own profile and listings.

Built to run in production

Built to run in production

4M flat records into a catalog you can trust

re-architected a single unnormalized table into a normalized company-to-ingredient schema; an OpenAI-assisted pipeline validated every URL, discarded broken ones, and derived clean canonical domains.

Slow backend work that feels instant

render the first batch immediately, poll the validation task, merge richer results as they arrive.

Two very different users in one product

role-aware architecture with separate admin and supplier auth, scoping each supplier to its own data.

Honoring an existing API contract exactly

mapped the domain up front and built a centralized cached data layer.

Results

Results

~4M

Messy ingredient records normalized into a governed, trusted catalog.

2 apps

Public search plus a role-based admin and supplier dashboard.

Zero

Signup required — buyers search and find suppliers instantly.

Governed

Verify-before-live publishing across every listing in the catalog.

Architecture & technical approach

How it was built

The product is a search box, so the real work was the data behind it: we re-architected a single unnormalized table of ~4M rows into a normalized company-to-ingredient schema, and ran an OpenAI-assisted pipeline that validated every URL, discarded the broken ones, and derived clean canonical domains.

Search feels instant despite slow validation work. The first batch of matches renders immediately, a background validation task is polled, and richer enriched results merge in as they arrive — so buyers never wait on the pipeline.

One role-aware application serves two very different users: an admin control center governs companies and the master catalog behind verified/active/published gates, while a supplier portal lets each company self-manage its own profile and listings, scoped to its own data.

4M rows into a trusted catalog

An unnormalized table re-architected into a normalized company-to-ingredient schema.

OpenAI-assisted data validation

Every URL validated, broken ones discarded, and clean canonical domains derived.

Instant-feel async search

Render the first batch, poll a background validation task, then merge richer results in.

Governed two-sided access

Role-aware admin + supplier portals with verify-before-live publishing gates.

Tech stack

What it runs on

public siteNext.js 16 / React 19 · Tailwind · Redux Toolkit / RTK Query · Axios · EmailJS
dashboardNext.js 14 / React 18 / TypeScript · Mantine UI · ApexCharts · Formik / Yup · i18next
dataNormalized relational DB (~4M records) · OpenAI-assisted URL validation + domain extraction · hosted REST API · role-based cookie auth
Start a conversation

Need a production system like this?

Tell us what you're building, fixing, automating, or scaling. Book a technical call to review scope, architecture, and timeline — or get an estimate and we'll come back with honest feedback on feasibility and approach.

Or explore all services.