From SAP to Shop: Automating Product Data Between ERP and PIM
How to automate product data from ERP to PIM and shop. AI field mapping, enrichment, translation, and a transaction layer that never silently overwrites.
The Bottleneck Nobody Photographs
Let me be direct: the slowest part of most product launches is not manufacturing or marketing. It is a person copying data out of an ERP, rewriting material numbers and technical codes into something a customer can read, translating it into five languages, and pasting it into a shop or a PIM. Every new product waits in that queue.
This is not a chatbot problem. It is a pipeline problem, and it is one of the highest-return automation targets in any company that sells physical products. The ERP already holds the truth. The shop needs a translation of that truth. AI does the translation, a PIM enforces the rules, and a person reviews the exceptions.
Your ERP is the source of truth for SKU, price, and stock. It is not the source of truth for a good product description. Stop making people bridge that gap by hand.
We build these pipelines as part of our data engineering practice, and we run one inside our own Exfinity platform to normalize supplier catalogs at scale. This guide is the architecture. For the business case behind automating back-office work like this, see real AI isn't a chatbot.
Who Cares About What
| Role | The real question | What good looks like |
|---|---|---|
| Head of e-commerce | How fast can we launch a product? | Hours, not weeks, from ERP to live |
| PIM lead | Does data stay consistent and governed? | One schema, enforced quality rules |
| Data engineer | Can we run this reliably at scale? | Idempotent, observable, recoverable |
| ERP owner | Does this respect SAP as the source of truth? | ERP owns SKU, price, stock, untouched |
| CFO | What does the manual process actually cost? | A measured baseline, then the saving |
The Division of Labor: ERP Versus PIM
The first thing to get right is conceptual, not technical. SAP or any ERP manages transactional data: material master records, pricing, inventory, procurement. A PIM manages channel content: descriptions, technical specifications, digital assets, categorization. When you integrate them, the ERP stays authoritative for SKUs, prices, and stock, and the PIM handles enrichment for the shop, marketplaces, and other channels.
| System | Owns | Does not own |
|---|---|---|
| ERP (SAP) | SKU, price, stock, material master | Customer-facing copy, channel attributes |
| PIM | Descriptions, attributes, assets, i18n, quality rules | Pricing, inventory truth |
| AI layer | Translation from ERP language to shop language | The final decision on published content |
Blur this line and you get the classic mess: prices edited in the PIM that drift from the ERP, or descriptions maintained in SAP that no marketer can touch. Keep it clean and each system does what it is good at. Our PIM implementation guide covers the governance model in depth.
The Pipeline, End to End
Here is the shape of the automated flow.
SAP / ERP
│ (material master, feeds, exports)
▼
Extract ──▶ Map ──▶ Enrich ──▶ Translate ──▶ Review ──▶ Publish
│ │ │ │ │
ERP language fill multi- human on PIM / shop
to shop missing language exceptions (governed)
attributes fields
Three places to insert AI, and knowing which to use is the difference between a clean pipeline and an expensive mess.
Pre-processing, before the PIM import: normalize and map raw ERP fields into the PIM schema.
In-PIM enrichment, as a workflow step: generate descriptions and attributes inside the PIM, where the quality rules live.
Post-processing, per channel: shape the enriched content for a specific marketplace or storefront.
For most B2B catalogs, the highest-value insertion point is the transformation between ERP language, material numbers and technical codes, and shop language, customer-friendly descriptions and filter attributes. That is exactly where a model earns its cost.
Extraction and Mapping: Rules First, Model Second
The expensive mistake is asking a model to read every field of every product. It is slow, costly, and hard to audit. The production pattern is hybrid: deterministic rules and field mappings do the structured work, and a model only fills the gaps.
In our own ingestion pipeline for Exfinity, supplier data arrives through connectors, feeds, and a crawler, and a hybrid extractor applies fixed selectors and mapping rules first, then calls a model only for fields the rules could not resolve. It tracks token usage and estimated cost per job, so the model spend is visible and controllable rather than a mystery line item. The same approach works for ERP exports.
// Hybrid extraction: rules resolve what they can, model fills the rest
function extractProduct(raw, mapping) {
const fields = {};
for (const rule of mapping.fields) {
const value = applyRule(raw, rule); // selector / regex / direct map
if (value != null) fields[rule.target] = value;
}
const missing = mapping.fields.filter((r) => fields[r.target] == null);
if (missing.length) {
Object.assign(fields, callModelForGaps(raw, missing)); // model only for gaps
}
return normalize(fields); // one schema, validated
}
Everything converges to one normalized schema, validated against what the target system accepts. Our product data systems guide goes deeper on modeling this cleanly, and the general principle is in our API design for long-term systems guide.
Enrichment and Translation: The Part AI Is Good At
Once the data is mapped, enrichment is where AI shines and where a PIM keeps it honest. A model can turn a terse material record into a readable description, suggest missing attributes, and translate into every language you sell in. The PIM then enforces the rules: no forbidden claims, required attributes present, consistent formatting.
The discipline that separates production from a demo:
- Score completeness. If a generated record is below a completeness bar, it does not auto-publish. It goes to review.
- Keep enrichment reviewable. A wrong attribute at catalog scale is a recall or a returns spike. Generated content is a draft until a human or a rule approves it.
- Translate structurally, not blindly. Preserve units, part numbers, and structured attributes. Translate the prose, not the SKU.
This is the human-in-the-loop pattern applied to catalog data, and it is non-negotiable at scale. A model that publishes unreviewed product claims is a liability, not a feature.
Multi-Language From One Source
Translation is where the manual process hurts most, because it multiplies every product by the number of markets you sell in. A person maintaining five languages by hand is doing the same enrichment five times, and the translations drift as the source changes.
The pipeline handles this by treating language as an output dimension of one source record, not five separate records to maintain. The enriched product is generated once, translated into each locale, and published per language, so a change to the source flows to every market instead of being re-keyed. In our own Exfinity ingestion, each product is indexed once per configured locale, and adding a new market makes existing products available in it without re-entering anything. The same shape works between an ERP and a multi-market shop: one governed source, many published languages, no manual duplication. Structured attributes like units and part numbers pass through untouched, and only the prose is translated, so a SKU never gets "localized" into something a warehouse cannot match.
The Hard Part: Concurrency
Here is the failure mode that sinks naive pipelines. A batch enrichment job and a human editor touch the same product at the same time. Without a transaction discipline, one silently overwrites the other, and now your catalog has lost an edit nobody noticed until a customer complains.
This is why we built PimTx, a transaction and concurrency layer for enterprise PIM work. It refuses to silently overwrite: concurrent writes are detected and resolved by an explicit strategy rather than last-write-wins, so a background job and a human edit cannot quietly clobber each other. When you automate writes into a system that humans also edit, this is not optional.
| Without a transaction layer | With one |
|---|---|
| Last write wins, silently | Conflicts detected and resolved by strategy |
| Lost edits found by customers | Lost edits impossible by design |
| No audit of who changed what | Every write traceable |
We cover the underlying principles in our concurrency and data integrity guide. If your automation writes into a live system, read that before you ship.
Keeping It Fresh: Sync, Not One-Shot
A product catalog is not loaded once. Prices change in the ERP, new products appear, old ones retire. The pipeline has to run on a schedule and handle change without reprocessing everything.
Three properties make sync reliable.
| Property | Why it matters |
|---|---|
| Incremental | Only changed records reprocess, not the whole catalog |
| Idempotent | Running the same sync twice does not duplicate or corrupt |
| Observable | You can see what synced, what failed, and retry it |
Exfinity refreshes its catalog on a schedule per source, dead-letters records it cannot process so nothing is silently dropped, and re-indexes per language without a redeploy. The general pattern is in our event-driven architecture guide. This is standard data engineering discipline, and skipping it is how catalogs rot.
What It Costs and When It Pays Back
The return scales with catalog velocity. If you launch a handful of products a year, automate something else. If you launch hundreds or thousands, and each one currently waits in a manual data queue, the payback is fast, because you are removing a bottleneck that gates revenue, not just a cost.
The honest sizing: one well-scoped ERP-to-PIM pipeline reaches production in weeks, and the model spend is controllable because rules do most of the work. Sketch a rough range with our calculator, then get a real number tied to your catalog through our quote flow. Our consulting team scopes phase one with you.
Common Ways This Goes Wrong
- Letting AI read every field. Slow, costly, unauditable. Rules first, model for gaps only.
- Blurring ERP and PIM ownership. Prices drifting between systems is a data-integrity nightmare. Keep the line clean.
- Auto-publishing generated content. Unreviewed product claims at scale are a legal and returns risk. Review the exceptions.
- No transaction layer. Batch jobs and human edits will collide. Detect conflicts, do not overwrite silently.
- One-shot imports. Catalogs change daily. Build incremental, idempotent, observable sync.
Who Builds This
Oronts is a founder-led software company in Munich. Refaat Al Ktifan, our founder and solution architect, leads a senior team across backend, data, and commerce. We have built product-data pipelines for enterprise catalogs, and we run one inside Exfinity. PimTx is our own answer to the concurrency problem these pipelines create. We design the flow, build the extraction, enrichment, and sync, and hand you a system you own and can operate. See our services and solutions pages.
Takeaways
- Product data automation is a pipeline, not a chatbot, and it is one of the highest-return targets in commerce.
- Keep the ERP authoritative for SKU, price, and stock, and let the PIM own enrichment.
- Extract with rules first and a model only for the gaps, to keep cost and audit under control.
- Review generated content and translate structurally, never auto-publish claims at scale.
- Use a transaction layer so automated writes and human edits cannot silently overwrite each other.
The goal is not to remove people from product data. It is to remove the copy-paste, so your people spend their time on the exceptions and the quality, not the keyboard.
If product launches bottleneck on data entry, tell us about your ERP and PIM. Start at contact or get a scoped quote.
Topics covered
Related Guides
B2B Manufacturing: Automating Product Data and Commerce
How manufacturers move from ERP to a working online catalog. AI enrichment, PIM governance, a concurrency-safe write layer, and headless commerce that fits B2B.
Read guidePIM Implementation Services: Pimcore, Akeneo & Enterprise Solutions
Expert PIM implementation, migration, and integration services. Pimcore, Akeneo, Salsify, inRiver specialists for product data management.
Read guideProduct Data Systems That Actually Work: From ERP to Channel
How to design product data pipelines. ERP to PIM to search to commerce to export. Classification systems, variant management, asset pipelines, and multi-channel distribution.
Read guideBuilding something like this?
We design and ship production systems like the one in this guide. Talk to the engineers who wrote it, no sales pitch.
Start a conversation