Free PrestaShift Module: A Game-Changer for PrestaShop 1.7, 8, and 9 Migrations

Introducing PrestaShift: A New Free Migration Module for PrestaShop 1.7, 8, and 9

The PrestaShop community thrives on innovation, often driven by developers solving their own challenges and then sharing their solutions. Marcin Gajewski, a dedicated PrestaShop developer, has recently contributed a significant tool to this ecosystem: PrestaShift. Originally developed to facilitate his own shop's migration to PrestaShop 9, this module is now freely available under an MIT license, promising to simplify the often complex and daunting task of upgrading or moving PrestaShop stores.

Comprehensive Data Migration at No Cost

What sets PrestaShift apart immediately is its commitment to being completely free, with no hidden tiers, record limits, or license keys. It's a robust solution designed to handle a wide array of critical e-commerce data, ensuring a thorough migration process. The module meticulously transfers:

  • Products: Including combinations, features, and attributes.
  • Categories: Maintaining your store's structure.
  • Customers: With associated addresses and customer groups.
  • Orders: Complete with status history and invoices.
  • Images: Crucially, it includes thumbnail generation for proper display on the new shop.
  • Carriers: Along with their zones and delivery pricing.
  • CMS Pages: Preserving your informational content.
  • Taxes, Cart Rules, and Stock Movements: Essential operational data.
  • SEO Metadata: To protect your search engine rankings.

The module boasts compatibility across PrestaShop versions 1.7, 8, and 9, intelligently handling schema differences, such as the redirect_type conversion coming from 1.7, and providing upfront warnings for significant version mismatches.

Flexible Architecture for Diverse Setups

PrestaShift employs a clever two-module architecture to accommodate various migration scenarios:

  • psconnector: Installed on the old shop, this acts as a read-only API, secured by a token, to expose the source data.
  • prestashift: Installed on the new shop, this is the wizard that pulls data across the bridge established by the connector.

This design allows for migrations between shops residing on different servers. For shops on the same host, the process can be streamlined by pointing the prestashift module directly at the source database, offering a faster transfer method.

Key Features for a Smoother Migration Experience

Marcin Gajewski has incorporated several practical features based on real-world migration challenges:

  • Batch Processing with Pause/Resume: If a migration is interrupted, it can be resumed from the exact point of failure, avoiding the need to restart.
  • Incremental Migration: The module supports re-running to transfer only data that has changed since the last pass, ideal for keeping shops in sync during a cutover period.
  • Intelligent Language Matching: Languages are matched by ISO code, not numeric ID, preventing content from being silently swapped if language IDs differ between shops.
  • Post-Transfer Optimization: After migration, it automatically rebuilds the search index, category tree, and faceted search index, then clears caches for immediate optimal performance.
  • 301 Redirect Map Generation: A crucial feature for SEO, it generates a 301 redirect map to preserve search rankings from old URLs to new ones.
  • Dry-Run Preview: Before committing any changes, a dry-run provides a preview of record counts, offering peace of mind.

Open Source, Community-Driven, and Cautiously Released

Available on GitHub, PrestaShift is open source under the MIT license, encouraging developers to read the code, fork it, adapt it, and contribute fixes. The author notes that while it has been tested end-to-end on specific 8.2.4 → 9.0.3 and 1.7.8.9 → 9.0.3 migrations, it's a fresh release. Users are advised to back up their databases and ideally perform trial runs on a copy of their shop. An optional error reporting feature can be enabled to send anonymous diagnostic data to the author in case of failure, aiding in quicker bug resolution.

Marcin's initiative to provide such a comprehensive tool for free is a testament to the collaborative spirit of the PrestaShop community. For many, this module could save significant time and effort, making daunting migrations far more manageable.

Start with the tools

Explore migration tools

See options, compare methods, and pick the path that fits your store.

Explore migration tools