// Blog
Your portals should outlive your PIM contract
PIM-native portals die with the PIM. A canonical layer plus a migration bridge lets you change the system underneath without touching a single channel.
8 min readPIM Gate teamIT & architecture
The PIM renewal lands on your desk, and the number has moved. Somewhere in the evaluation of alternatives, someone points out that the customer portal, the wholesale feed and the shop integration were all built inside that PIM — and the project stops being a licence decision and becomes a two-year replatforming.
That coupling is the actual cost of a PIM-native portal, and it is rarely priced at the time you buy one.
What PIM-native portals actually couple
A portal built as a module of your PIM inherits four dependencies at once:
- Licensing. Portal users usually require the PIM's own user or seat model, which is why external-facing portals are frequently the most expensive part of a PIM contract.
- Data model. Entitlements, catalog views and portal content are expressed in that PIM's object model. They cannot be lifted out.
- Release cycle. Your portal's roadmap is the PIM vendor's roadmap. A change your customers want waits on a version upgrade.
- Exit. Replacing the PIM means rebuilding the portal, retraining external users, reissuing credentials, and renegotiating every integration downstream.
The last one is the expensive dependency, because it is the one that removes your negotiating position. A vendor knows the portal is in there.
The alternative: a canonical layer between source and channel
The architectural fix is old and unglamorous: put a layer between the systems that hold data and the channels that consume it, and make that layer, not the source system, the thing channels depend on.
Concretely, it means three properties:
- A canonical schema. Sources are mapped into one product model with typed attributes, units, locales and market flags. A portal, a feed or an API consumer reads the canonical record and never learns which system produced it.
- Entitlements owned by the layer. Who may see which products, categories, markets, languages and assets is configured where the channels are, not inside a source system. This is what makes portal access survive a source change.
- A stable contract outward. A versioned REST API, webhooks, scheduled deliveries, and field-level delta so consumers take only what changed. Adding a source does not touch a channel; adding a channel does not touch a source.
The test of whether you have this is simple: can you add a second source system without any downstream consumer noticing? If the answer requires a release in the shop, you have a pipeline, not a layer.
Why this makes a PIM migration a different project
Given that layer, migration stops being a weekend cutover and becomes a scheduled series of small reversible moves. The mechanism we call the migration bridge works like this:
- Connect the new PIM as a second source. The old PIM stays primary; nothing downstream changes.
- Map it onto the same canonical schema. Now both systems can express the same product in the same shape.
- Compare, field by field. For the same products, see what the old source delivers and what the new one delivers. This is where the surprises are — and finding them here rather than in production is the entire point.
- Cut over per attribute group. Identifiers and marketing texts from the new PIM while technical attributes and assets still come from the old one. One group at a time, each verified before the next.
- Retire the old system once every group runs on the new one.
And the property that makes the other four usable: rollback per attribute group. If marketing texts look wrong after cutover, that group goes back to the old source while you fix the mapping. No restore, no downtime, no channel involvement.
For the customer portal, the wholesale feed and the shop, the migration is invisible. They keep receiving the same canonical records, in the same schema, at the same cadence, throughout.
The same mechanism handles consolidation, which is the more common case in groups: several brand or country PIMs feeding one gate, converging onto one canonical model, then collapsing into a single system at whatever pace the business tolerates.
Versioning is what makes it safe to reverse
Reversibility is not a feature you add at cutover time; it is a consequence of keeping history. If every export is stored as a numbered version and you can compare any two at field level, then:
- Verification is mechanical. Compare the last export from the old source with the first from the new one. Thirty-seven products changed, 112 fields — is that the set you expected? If it is not, you know before a channel sees it.
- Regressions are attributable. When a wholesaler reports that a value went wrong, you find the version it changed in rather than debating it.
- Rollback is well-defined. Going back means going back to a state that exists and that you can inspect.
This is also what makes field-level delta possible at all — you can only send what changed if you know what the previous state was. In our experience it is the single capability that most changes the feel of a migration, because it converts "we think it worked" into a diff someone can read.
Questions worth asking your PIM vendor
Before signing a renewal, and useful regardless of what you decide:
- If we replace the PIM, what happens to the portal — is it rebuilt, and who pays?
- Are portal end users licensed, and at what unit?
- Can our entitlement rules be exported in a form another system could read?
- Is there an API that a channel can depend on independently of the PIM's own release cycle, with a delta mechanism?
- Can two source systems feed the same channel at the same time?
The answers tend to clarify where the lock-in sits. They also sharpen the question of what you should put inside the PIM at all: source-of-truth data, yes; the entitlement model for your external audiences, probably not.
Where PIM Gate sits
PIM Gate is that layer as a product. It runs next to your PIM rather than replacing it — reading via XML, REST or scheduled SFTP, mapping into a canonical schema, and serving customer, supplier and sales portals plus a versioned API from it. It works with Viamedici, Akeneo, Pimcore, Stibo and Censhare as sources; the migration bridge runs old and new in parallel with cutover and rollback per attribute group, and every export is versioned and comparable. Field-level delta sync means consumers receive about 95 % smaller payloads than full exports. Portal end users are unlimited in every version, which removes the licensing coupling as well as the architectural one.
Nothing is written back to your PIM unless you configure it. The PIM stays source of truth; what changes is that your channels stop depending on which PIM that is.
Key takeaways
- PIM-native portals couple licensing, data model, release cycle and exit to one vendor — the exit coupling is the one that costs you leverage.
- A canonical layer between sources and channels is the fix: one schema, entitlements owned by the layer, a stable versioned contract outward.
- Test it by asking whether a second source can be added without any downstream consumer noticing.
- A migration bridge turns cutover into per-attribute-group moves with rollback, not a weekend big bang.
- Versioned exports with field-level compare are what make verification mechanical and rollback well-defined.
- Ask your vendor what happens to the portal at replacement, how portal users are licensed, and whether two sources can feed one channel.
// Related articles
8 min readMarketing & localization
Translating product data: delta, TM, terminology, and AI
Why catalog translation costs more than it should, and the mechanisms that fix it: segment hashing, deduplication, memory, termbase — with AI in its place.
translationlocalizationproduct-dataai
6 min readProduct data
Why you need a customer portal when your PIM already exports
Exports are a delivery mechanism, not an access model. What a customer portal adds: entitlements, live data, self-service and a record of every download.
portalsentitlementsproduct-data