SourcePIM
A content-operations layer for the Magento Open Source catalog you already run — completeness scoring, a fast editable grid, category control, and a full audit trail, built as a native admin extension rather than a separate application.
Installation
SourcePIM installs like any other Composer-based Magento extension — it makes no changes outside the standard Magento install/upgrade flow, and introduces no separate database, no separate login, and no separate application to stand up.
- From your Magento root, add the package (credentials for
repo.magento.com-style access are provided with your Adobe Commerce Marketplace purchase):composer require real/module-source-pim - Enable the module:
bin/magento module:enable Real_SourcePim - Run setup upgrade (creates SourcePIM's own database tables —
this never touches
catalog_product_entityor any other core catalog table):bin/magento setup:upgrade - In production mode only, compile and deploy static assets:
bin/magento setup:di:compilebin/magento setup:static-content:deploy -f - Flush the cache:
bin/magento cache:flush
Log into the admin — a new SourcePIM item appears in the left navigation, above System. No further setup is required to start using it against your existing catalog.
Permissions
The Administrators role has full access to SourcePIM by default, the same as every other admin resource. To grant a restricted role access, go to , open the role, and check the resources you want under the SourcePIM node in the Role Resources tree — Dashboard, Products, Categories, Attribute Sets, Change Log, Jobs, and Settings are each their own resource, so a role can be scoped to only the screens it needs (for example, a content editor limited to Products and Categories, with no access to Settings or the Change Log).
Overview
SourcePIM does not replace Magento's catalog or introduce a parallel data model. Every product, category, and attribute set it shows and edits is a real Magento entity, read and written through Magento's own APIs — the storefront, indexers, and every other extension see exactly the same data, updated the moment SourcePIM saves it.
What it adds is the layer most PIM tools ship separately: a grid built for editing hundreds of products at once rather than one at a time, a completeness score that tells you what's actually missing, a category tree you can rearrange by dragging, and a record of who changed what. All of it lives under one SourcePIM menu in the admin sidebar you already use.
Dashboard
The landing screen: catalog-wide completeness statistics — what share of products clear your configured threshold, broken down by Attribute Set — plus shortcuts into whichever area needs attention first.
Product Grid
The main day-to-day screen — a virtualized, spreadsheet-style grid over the full catalog. Rows render as you scroll, so it stays smooth whether the catalog is 500 products or 50,000.
- Search & filters — SKU/name, Attribute Set, status, and Store View, with a fast exact/prefix SKU match before falling back to a slower substring search.
- Inline editing — click a cell to edit it in place. Text, price, and status fields save on blur or Enter; dropdown and select-type attributes save the instant you pick a value, no extra click needed.
- Attribute columns — add any attribute as its own column, from the row's own "Add to grid" checkboxes or from Settings' catalog-wide Default Columns. Dropdown attributes (e.g. Visibility) are fully supported, not just free-text ones.
- Sortable, reorderable columns — every column sorts, attribute columns included, and columns can be dragged into whatever order suits the task, with a drop indicator showing exactly where a column will land. Order and selection persist per browser.
- Bulk attribute edit — select several rows and change one or more attributes across all of them at once, with a before/after preview before anything saves.
- Configurable products — a configurable's own variants aren't shown as separate rows (an admin thinks in terms of the parent product); they're edited in a Configurations matrix inside the parent's own row, with the same inline-editing and bulk-edit behavior as the main grid.
- Jump to Magento — every row (parent and variant) carries a direct link to that product's native Magento edit page.
The row accordion
Expanding a row (via its own triangle, not a click anywhere in the row) reveals everything about that product that doesn't fit as a grid column: its Attribute Set, category assignment, media, and — for a configurable — its Configurations matrix. Categories and Media load only once expanded, not on every row open, so opening a row stays fast even on a large catalog.
Completeness scoring
Every product gets a completeness score — the share of its counted attributes (configured under Settings, or per Attribute Set) that are actually filled in. It's a sortable Product Grid column, so the most incomplete products surface first, and it's summarized on the Dashboard.
Export Completeness Gaps (CSV), above the grid, exports every product below the configured threshold along with exactly which attributes are missing — a ready-made punch list for whoever owns product content.
Category management
A tree-and-panel browser matching Magento's own category hierarchy, with a live product grid for whichever category is selected.
- Drag-and-drop reorder — reorder categories among their own siblings by dragging.
- A real grid per category — search, sort, paginate, and inline-edit the products assigned to the selected category, not just a product count.
- Drag products onto a category — drag a product (or a multi-selection) from the grid onto a category to assign it.
- Bulk removal — select products and remove them from the category in one action, with a warning if doing so would leave a product with no category at all.
- Attach from the product side too — a product's own row accordion also assigns and removes categories directly.
Attribute Sets
Lists every Magento product Attribute Set. Selecting one shows its Attribute Groups and each group's attributes, reorderable by drag-and-drop — this writes back to Magento's own group/attribute sort order, so the same ordering shows on Magento's native product edit page too.
Media
Media lives inside a product's own row accordion, working directly with Magento's native product gallery rather than a separate library.
- Upload straight into a product's gallery — no intermediate library step.
- Family-scoped reuse — a configurable product and its variants share one media pool automatically, so an image linked to one variant is one click to reuse on a sibling.
- Alt text — editable per image, syncing to every product that shares the same file.
- Scheduled main-image rotation — optionally rotate a product's main gallery image on an hourly, daily, or weekly cadence; an individual image can also be given an active date range (e.g. a seasonal photo), which takes priority over the regular rotation while it's active.
Change Log
A chronological, filterable audit trail of every attribute value change SourcePIM makes: which admin user, which product, which attribute, the old value, the new value, and when. Filter by SKU, admin, or date range, and export the result to CSV. The same history is also available scoped to a single product, inside that product's own row accordion.
Jobs
Bulk operations that would otherwise block a browser request — moving a large batch of products between categories, recalculating completeness across the catalog — run as background jobs instead. This screen lists them with status, admin, timing, and succeeded/failed counts, filterable by status, type, and admin, so a large operation's outcome is confirmed without watching a browser tab.
Settings
A dedicated Settings screen inside SourcePIM's own interface, with a Store View selector for the handful of settings that are scoped per store rather than global.
- Admin Startup Page — which SourcePIM screen opens first after logging in.
- Completeness — scoring mode, and the global fallback attribute list used where an Attribute Set hasn't configured its own.
- Product Grid — whether grid state (filters, sort, columns) persists between sessions, and which attribute columns show by default across every Attribute Set.
- Bulk Operations — whether large bulk actions route through a queue instead of processing synchronously.
- Scheduled Main Image Rotation — the on/off switch for the rotation feature described under Media.
Uninstalling
SourcePIM never introduces a parallel copy of catalog data — every product, category, and attribute it shows is Magento's own, read and written through Magento's own APIs. Its own database tables hold only SourcePIM-specific data: per-Attribute-Set settings, the change-log history, and cached completeness scores.
bin/magento module:uninstall Real_SourcePim— disables the module, removes its own database tables, and runs Composer'sremovefor you.
Your catalog, categories, and attribute sets are left exactly as they were — nothing about them was ever specific to SourcePIM.