Catalog Readiness Check for Magento 2

A clear explanation of product availability, without changing your catalog.

Download the user guide (PDF) · Download version 1.0.0

Compatibility

Tested on Magento Open Source 2.4.9 / PHP 8.4. These are native Admin diagnostics: no Luma or Hyva storefront adapter is required. Other editions and Magento versions are not a completed test matrix. Magedia Core ^1.2.1 is required.

Installation

Download the free module without an account or activation. Composer installs the Core dependency automatically:

composer config repositories.magedia-free composer https://store.magedia.com/media/magedia-free-modules/
composer require magedia/m2-catalog-readiness
bin/magento module:enable Magedia_Core Magedia_CatalogReadiness
bin/magento setup:upgrade
bin/magento setup:di:compile
bin/magento setup:static-content:deploy -f
bin/magento cache:clean

For a ZIP installation, extract the module into app/code/Magedia/CatalogReadiness and Magedia Core 1.2.1 into app/code/Magedia/Core. Install any missing Composer dependencies, then run the enable, upgrade and deployment commands above. Back up and test your installation before production use.

Run a check

Open Magedia → Catalog Readiness Check → Run Checks and View Report.

  1. Choose the store view and the placement you want to diagnose.

  2. Enter the affected SKUs or select a catalog page, then click Run Check.

  3. Review blocking issues and warnings; open the product editor to make changes.

Settings

Store View — The storefront scope whose publishing settings and website stock are checked.

SKUs — One SKU per line, up to 200. Leave blank to scan a catalog page.

Intended Placement — Direct product page, Category listing or Search results.

Products per Run — A page size from 1 to 200; default 100.

Catalog Page — A positive product-ID-ordered catalog page; default 1.

Features

Publishing checks — Review enabled status, website assignments and visibility for a direct page, category listing or search.

Website stock — Check native salability for simple, virtual and configurable products in the selected website stock.

Configurable variants — See linked variants and how many are enabled, website-assigned and salable.

Catalog images — Find missing image-role assignments and referenced gallery files.

Category context — Review direct category assignments and active categories within the store root.

Useful reports — Filter results, export CSV or Excel XML, and open the relevant product settings.

Read and export the report

Use the native filters, saved views, sorting and pagination. Export results as CSV or Excel XML. Open Settings leads to native product, category, CMS, attribute or rule editors as relevant. Product/category links preserve the selected store view.

Each administrator sees only their own report. A new run replaces that administrator's previous report. Old reports expire after 30 days when checks run. Configure separate Report and Run Checks ACL permissions under Magento user roles.

Native Magento Admin report

Example

An enabled product can still be absent from search because its visibility excludes search results. The report distinguishes that publishing blocker from an image-role warning.

Scope and limitations

Scans are paginated, not a background queue. Each run replaces your previous report. Checks do not fetch CDN images, prove search-index contents, evaluate all category ancestors, or diagnose arbitrary third-party restrictions. Salability checks cover simple, virtual and configurable products. Invisible child products and inherited images may be intentional.

Reports are snapshots, not a guarantee of live storefront behavior. There is no automatic catalog, translation or pricing-rule repair. For Promotion Inspector, native totals observers and plugins still run on an unsaved quote; custom integrations require their own compatibility checks. For Store View Readiness, identical content can be intentional and is labelled for review.

Troubleshooting

  • No report or Run Check unavailable: check the administrator's module permissions.
  • Check failed: review the Magento application log, confirm the selected store and input bounds, then retry.
  • Unexpected result: verify the selected scope, publishing settings and native index state. Change settings in native Magento and run the check again.
  • ZIP installation cannot resolve Core: install the linked Core package or use Composer so the dependency is resolved automatically.

For help, contact [email protected]. The module is free under OSL-3.0; custom integration and troubleshooting services are separate work.