Available for projects & agency overflow · Quick reply, from the person who does the work

PrestaShop 1.6 to 8: go through 1.7 or start from scratch

There’s no direct jump between PrestaShop 1.6 and 8 with the official tool: you have to go through 1.7, at least transitionally, or start from a fresh install and migrate the data instead. Here are the two methods, what breaks along the way, and how I choose.

Describe my issue Send a message

Why there’s no shortcut to PrestaShop 8

The official autoupgrade module backs up files and database, then runs the schema scripts needed for each major version step. No version of this tool jumps straight from 1.6 to 8: the database structure changes with every major version, with new tables and renamed columns, and the official scripts run one step at a time.

Two methods remain possible: chain the migrations, 1.6 to 1.7 then 1.7 to 8, with a full backup and theme rebuild at each step; or start from a fresh 8 install and migrate only the data (catalogue, customers, orders), often quicker when the 1.6 theme and modules need rebuilding anyway.

On PHP, PrestaShop 8 needs 7.2.5 minimum, supporting 8.0/8.1, then 8.2 from September 2024. 1.6 works at best up to PHP 7.1: the PHP jump is part of the migration, not a separate option.

What typically breaks in a 1.6 to 8 migration

  • A payment module still using displayPayment (1.6) no longer appears at checkout on 8, where only paymentOptions is called.
  • Modules using the old curly-brace array syntax (e.g. $array{0}) throw fatal errors, that syntax having been removed in PHP 8.
  • The 1.6 theme, built on Default and Smarty alone, has no direct equivalent in 8’s hybrid Symfony/Twig architecture: it needs rebuilding, not copying.
  • A module only declaring compatibility up to 1.7.8 (via config.xml and $ps_versions_compliancy) is blocked from installing on PrestaShop 8.

How I choose and run the migration

  1. Auditing the current setup

    Modules, versions, declared compatibility with 8, plus theme state to decide adapt or start over.

  2. Choosing the method

    Chained 1.6 → 1.7 → 8 if theme and modules pass, or a fresh 8 install if rebuild is unavoidable anyway.

  3. Full backup before each step

    Files, complete database dump, critical module configuration, backed up outside autoupgrade’s own folder first.

  4. Migration or data import on a test environment

    Never on production. I validate each step before the next.

  5. Rebuilding the theme and replacing incompatible modules

    Theme rebuilt on Classic; working equivalent for every module that doesn’t migrate, or a rewrite.

  6. Checking, then going live

    Switch scheduled for a low-traffic window once approved.

What I back up and how I check nothing’s missing

Before the first step: full site tree, database dump, module list with versions, payment/carrier module configuration — kept separately, since autoupgrade’s own backups can be overwritten.

After the final switch, I check orders, customers and catalogue products match, main URLs respond with the right status code, redirects work, and run a full test order to confirm checkout works with paymentOptions.

config.xml
<compatibility>
  <min>1.7</min>
  <max>8.99.99</max>
</compatibility>

To prepare for or complete this migration

  • PHP 5.2 to 7.1 PrestaShop 1.6
  • PHP 7.2.5 minimum, up to 8.2 PrestaShop 8

devdocs.prestashop-project.org

Describe your need in one minute

A few targeted questions so I can reply with an estimate rather than another questionnaire.

version-depart
version-arrivee
catalogue
modules-tiers (facultatif)
conserver (facultatif)
Please provide an email or a phone number so I can get back to you.

Please provide an email or a phone number so I can get back to you.

Frequently asked questions

Can I go straight from PrestaShop 1.6 to 8 with the update module?
Not in a single run. autoupgrade steps through each version in turn and skips none, and the module version able to handle a 1.6 stops at 1.7: you reach 1.7 first, then run the tool again to get to 8. The other route is a fresh 8 install with the data migrated separately.
Is it better to migrate via 1.7 or start from a fresh 8 install?
Depends on the theme and modules. If most has a good chance of surviving the intermediate steps, I chain the migrations; if it needs rebuilding anyway, starting fresh and migrating only the data is often quicker.
Which PHP version does PrestaShop 8 need?
7.2.5 minimum. PHP 8.0 and 8.1 supported from launch, PHP 8.2 from September 2024.
Will my 1.6 modules work on PrestaShop 8?
Rarely without adaptation. Every module must declare compatibility in config.xml and $ps_versions_compliancy. Many 1.6 modules also use curly-brace array syntax, removed in PHP 8, causing fatal errors.
What happens to my theme in this migration?
It needs rebuilding, not copying: the default theme changes (Classic replaces Default) and the architecture moves to a hybrid Symfony/Twig base. A project in its own right, worth pricing separately.