• Online Stores · PostgreSQL

PIM system: one place where product data lives, instead of five spreadsheets and three opinions

In a large store, product data sooner or later spreads out: some in the accounting system, some in the supplier's price list, some in a manager's spreadsheet, and on the website whatever was carried over in time. Then the main question arises: which value is correct. PIM answers it once and for all: it defines the source of truth for every field, and all channels take data from there rather than from people's memory.

See how it works
Price
after a free audit
Guarantee
30 days after project sign-off
Focus
online stores, mostly OpenCart
Price
after a free audit
Guarantee
30
days after project sign-off
Focus
online stores, mostly OpenCart
Timeline
28
to 104 working days
Start
free data source review
Warranty
30
days from the date the acceptance act is signed
Reply
within 2 hours
Terms
under a written contract
What's included

Complete list of work and what you get as a result

  • a single source of truth about the product with a clearly defined set of fields
  • rules for where each field comes from and whose value wins in a conflict
  • scheduled intake of supplier price lists with a discrepancy log
  • publishing data to the website and marketplaces in the required formats
  • a completeness check before publishing: an item without mandatory fields does not go to the channel
  • change history: you can see who changed a field, when and to what
  • separation of roles: who has the right to edit what
  • migration of existing data with minimal losses
  • a guide for the people who maintain the catalog every day
When this service isn't right

What's not included — so there are no surprises at delivery

  • replacing the accounting system — PIM works alongside it, not instead of it
  • filling the catalog with content: photos, descriptions, attributes
  • arrangements with suppliers about the format of their price lists
  • promises of sales growth
  • verifying the accuracy of data provided by the supplier
Who it's for

Situations where this service delivers results

Scenario 1 of 4

A store that sells through several channels

The website, Rozetka, Prom, social media. Each channel wants its own format, and without a single source the data in them drifts apart within a month.

We'll review your situation in a free audit
Free audit

A free review of your data sources

We count how many places your product data lives in right now and where it diverges. The picture usually surprises the owners themselves.

What we measure

  1. How many storage places there areThe accounting system, the website, spreadsheets, price lists, product cards in messengers. The list is almost always longer than it seems at first.
  2. Where the data divergesWe take a sample of items and compare the values in different sources. The discrepancies show which fields need a rule first.
  3. Who edits whatIf one field can be changed by three people in three places, conflicts are inevitable regardless of the system.
  4. Where the data goesEach channel has its own mandatory fields. How many there are determines how complex the readiness check will be.
  5. What happens on a price list importWhether it overwrites your edits. This is the most common reason a corrected field “reverts by itself” to the old value.
  6. Whether there is a change historyWithout it, there is no way to find out where a wrong value came from, and therefore no way to prevent it from happening again.

What you get

  • a source map: where everything lives now
  • a list of fields that diverge between sources
  • proposed source-of-truth rules
  • an estimate of the work broken down by stage

Timeline: 3–6 working days

Why is it free

Without a source map any estimate would be guesswork: stores with the same catalog can have completely different kinds of mess in their data.

What's next

You receive the map and the proposal. What to do next is your decision; the document stays with you.

Short form: your contact and site URL
Contract and paperwork

We work officially

Contract, act and invoice — for every project, not just large ones.

Trusted by6 brands

Trusted by: Kvant Energy, GYPSUN, Naturel Cosmetics, Pancer Protection, LUGI, BeeTech

Terms fixed in writing8 points
  • Contract, act and 30-day warranty

    Every project gets a written contract: scope, deadlines, amount, acceptance procedure. After delivery — act and invoice, then 30 calendar days of warranty.

  • Sole proprietor & bank transfer

    The contractor is a registered sole proprietor. Payment by invoice with closing documents.

  • Rights & access — yours

    Code, design and materials transfer to you after full payment. Domain, hosting, repository and analytics are registered to you.

  • Client portal instead of email chains

    During the project you get access to a portal: contracts, invoices, acts and project status in one place.

  • Sites in nine countries

    Our sites run in nine countries: besides Ukraine — Poland, Germany, Austria, England, Norway, Bulgaria, Moldova and Spain.

  • Verifiable numbers

    Every case in the portfolio comes with a link to a live site and a technical measurement.

  • Audit first, then pricing

    There is no price list on the site intentionally: the scope of the same work differs multiples between clients.

  • We say "no" when unsure

    If the task isn't ours or the deadline is unrealistic — we tell you upfront.

  • Contract, act and 30-day warranty

    Every project gets a written contract: scope, deadlines, amount, acceptance procedure. After delivery — act and invoice, then 30 calendar days of warranty.

  • Sole proprietor & bank transfer

    The contractor is a registered sole proprietor. Payment by invoice with closing documents.

  • Rights & access — yours

    Code, design and materials transfer to you after full payment. Domain, hosting, repository and analytics are registered to you.

  • Client portal instead of email chains

    During the project you get access to a portal: contracts, invoices, acts and project status in one place.

  • Sites in nine countries

    Our sites run in nine countries: besides Ukraine — Poland, Germany, Austria, England, Norway, Bulgaria, Moldova and Spain.

  • Verifiable numbers

    Every case in the portfolio comes with a link to a live site and a technical measurement.

  • Audit first, then pricing

    There is no price list on the site intentionally: the scope of the same work differs multiples between clients.

  • We say "no" when unsure

    If the task isn't ours or the deadline is unrealistic — we tell you upfront.

We sign NDAs on request. After completing the work, we delete our access to your services ourselves.

What affects the price

Why two seemingly identical tasks are priced differently

  • Number of sourcesOne accounting system and one price list is a simple case. A dozen sources means a separate rule for every field and every source.
  • Number of output channelsThe website is one format. Marketplaces add their own mandatory fields and category directories that have to be matched with yours.
  • Catalog sizeA few thousand items migrate quickly. Tens of thousands require separate work on the migration and on reconciliation afterwards.
  • Complexity of the rules“Price always from accounting, description always ours” is simple. Conditional rules by category and supplier are noticeably more complex.
  • Whether change history is neededA change log costs more, but it is exactly what answers “where did this come from,” the main question when investigating errors.
  • Roles and permissionsIf several people maintain the catalog, separating permissions is mandatory. Without it the system becomes one more place where damage can be done.
Cases

Tasks and results in numbers — all metrics measured by us

Pancer Protection

an online store of tactical and military gear with a catalog of more than 50,000 SKUs

Task
Hold an oversized assortment of tactical gear (body armor, clothing, footwear, backpacks, comms, optics) in a single store with detailed filtering by attributes — without losing page response speed.
Solution
A store on OpenCart 3 (chameleon theme + NeoSeo modules) behind Cloudflare. Two language versions. Full local-store JSON-LD markup: Store, Place, GeoCoordinates, PostalAddress, OpeningHoursSpecification, ContactPoint, WebSite, SearchAction. At checkout: LiqPay, card online, cash on delivery, cash on collection, bank transfer and online installments (dataLayer events). Binotel telephony, eSputnik email marketing, Google sign-in, GTM, GA4, Google Ads.
Result
54,302 products and 635 categories — the figure confirmed by two independent methods: a sitemap index of 32 product files gives 110,096 URLs across two languages, and a cross-check through OpenCart search gives 54,501–54,600 items (a 0.4% discrepancy). A catalog of 54,000 SKUs returns the first response in 0.41 s, full HTML load in 0.51 s at 422 KB. Nine JSON-LD types on the home page. Five payment methods, including LiqPay and online installments. Measured 31 July 2026.

2PM

an online retail underwear store with a catalog of more than 110,000 product items

Task
Sell underwear online across Ukraine so that shoppers can pick their size themselves without consulting a manager, which reduces returns. Every size and color is added as a separate item, so the catalog grows to a hundred thousand pages: the task is to hold such a structure within a single store, keep navigation by category and brand, and leave the pages fit for indexing.
Solution
A store on OpenCart 3 (oct_luxury theme by Octemplates, Apache, HTTP/2, gzip). Three language versions: ru at the root, /ua/ and /pl/. The sitemap is built as an index of 42 sub-sitemaps (39 product ones of 3,000 URLs each + categories, brands, info pages), which is the correct way to serve a catalog of this size. The product page carries full product JSON-LD markup: Product, Offer, Brand, MerchantReturnPolicy, OfferShippingDetails, ShippingDeliveryTime, DefinedRegion, ImageObject. The home page has ClothingStore store markup, WebSite/SearchAction, ContactPoint, PostalAddress, OpeningHoursSpecification, GeoCoordinates. Delivery by Nova Poshta in three options (branch, courier, parcel locker) plus Ukrposhta. Analytics and advertising: GTM, GA4, Google Ads, a remarketing module passing product_id to Google Ads and Facebook.
Result
115,456 product items — the figure confirmed by two independent methods: standard OpenCart search gives 1,154 pages of 100 items plus 56 on the last one (115,456), and the sitemap gives 112,646 unique product URLs, a 2.4% discrepancy. This is the largest catalog in the measured sample. A product page returns the first response in 0.39 s, a category page in 0.47 s. 129 categories, 334 brands, three language versions. Measured 1 August 2026.

Did not find your case?

Describe how it works on your side — we will tell you whether “PIM system implementation” fits and what it means in your situation. No brief and no call: one question, one answer.

Process steps

Transparent stages with approval at every step

Total duration:20–90 days

  1. Source map

    3–6 working days

    We find every place where the data lives and check where it diverges. The result is a picture you can already make decisions with.

  2. Source-of-truth rules

    3–8 working days

    For every field we define where it comes from and whose value wins. The decision is yours; we raise the questions and record the answers.

  3. Building the system

    10–45 working days

    We build the data store, price list intake, completeness checks and roles. We work so that the accounting system stays where it is.

  4. Moving the data

    5–20 working days

    We move the existing catalog, reconcile after the migration and record any losses if they are unavoidable. Nothing disappears silently.

  5. Publishing to channels

    5–20 working days

    We set up exports to the website and marketplaces with a check of mandatory fields: an item that is not ready does not go to the channel.

  6. Handover

    2–5 working days

    We train the people who maintain the catalog every day and hand over the guide and the rules. After that, the 30-day warranty applies from the date the acceptance act is signed.

Technologies & integrations

What we build on and what it connects to

Stack

  • PostgreSQL
  • Python
  • SQL
  • Next.js
  • TypeScript
  • OpenCart
  • Git

Integrations

  • 1C
  • BAS
  • XML/YML price feeds
  • CSV exports
  • Rozetka
  • Prom
  • Google Merchant Center
A single source or spreadsheets and agreements

How this option differs from the alternative

Spreadsheets plus verbal agreementsOur approach
Which value is correctdepends on whom you askdefined by a rule for every field
Entering a new channela separate project with data migrationconfiguring an export
What happens after a price list importoften overwritten, and nobody noticesyour edits are kept according to the rule
Finding the cause of an erroran investigation lasting several daysthe change history shows who and when
Starting costzero, but a constant drain on timehigher, one-off
What we need from you

We can't start without this — best to prepare in advance

  1. a list of the places where product data lives now
  2. who is responsible for each source and who edits what
  3. where the data needs to go: the website, marketplaces, partners
  4. which fields are mandatory for each channel
  5. whether the exchange can be paused during the migration
  6. who on your side accepts the work
If something is missing — let us know, we'll help you gather it or do it as a separate task.
FAQ

Most frequently asked questions — with concrete answers

Will PIM replace our accounting system?

No, and this is a matter of principle. Accounting stays accounting: stock, prices, documents. PIM is responsible only for product data: attributes, descriptions, images, mapping to channel categories. The two work side by side, and an attempt to replace one with the other usually ends with both breaking.

Won't this become yet another place where data sits?

It will, unless source-of-truth rules are defined. That is why they are the main part of the work, not a technical detail: for every field it has to be written down where it comes from and whose value wins. Without that, PIM really will be the fifth spreadsheet.

What happens to our edits after a price list import?

That depends on the rule you set. The most common option: price and availability come from the price list, description and attributes are yours. It is the absence of such a rule that makes corrected fields “revert by themselves” to old values, and this is the most common complaint in stores with many suppliers.

How long does it take?

28 to 104 working days. The range is wide because it depends on the number of sources and channels. What usually takes longest is not development but agreeing on the rules: the question “whose value is correct” needs decisions from you, not from us.

Can it be rolled out in parts?

Yes, and for large catalogs that is the better way. First one category and one channel, then the rest. The store keeps working the whole time, and on a small volume you see whether the chosen rules are convenient while they are still easy to change.

Who decides which value is correct?

You do. This is not a technical question: when the price in accounting says one thing and the price list another, the choice depends on how your business works. We raise these questions and record the answers as rules, but we will not answer them for you.

Will this help us get onto marketplaces?

It makes it noticeably easier. A marketplace requires mandatory fields and its own categories; when data is centralized, entering a new channel becomes a matter of configuring an export, not a separate project. But the registration itself and the arrangements with the marketplace are up to you.

What happens to the data during migration?

We move everything that can be moved and record the losses if they are unavoidable, for example when a field in the old source has no counterpart. Nothing disappears silently: after the migration we reconcile and show the difference.

Demo

Your catalogue on a phone screen

This is how your store can look on a phone: a collection banner, popular products and a cart one tap away. Tap “Add to cart” and the counter in the header updates, just like in a real store.

  • Collection bannerThe first screen shows what is new, not a logo.
  • Product cardsPhoto, price and a button — no extra page to open.
  • One-tap cartThe counter in the header updates instantly, like in a real store.
Stores in the portfolio
This is a demo interface, not a client's store. Live projects are in the portfolio.
SHOP
New collectionAutumn / WinterExplore
PopularAll products ›
  • Essentials Hoodie1 290 ₴
  • Urban Backpack1 490 ₴
  • Classic Cap690 ₴
  • Basic Tee590 ₴
  • Street Sneakers2 390 ₴
  • Active Shorts890 ₴

Let's count how many places your data lives in

The source review is free: we will show you the map and the places where values diverge. We reply within 2 hours.

From measured cases54,302 products and 635 categories

View cases
  • Reply within 2 hours
  • No commitment
  • We work under a contract

There is no price list on the site on purpose: the same work differs several times over between two clients, and a “from” figure explains nothing in that case. First a free audit — we count your pages, duplicates and speed — then we name the sum and the deadline and fix both in the contract.