PrestaShop Tutorials

How to install a PrestaShop 8 module: the complete 2026 guide

Installing a PrestaShop module looks simple in theory. In practice, between modules pulled from the addon store, modules bought on third-party marketplaces, modules built in-house, and the specific constraints of multistore setups, you quickly run into edge cases. This guide covers the three valid installation methods in 2026, the most common errors, and best practices to avoid breaking a production store.

Before you start: back up your store

This step is non-negotiable. Before adding any module to a production store, you must have a fresh backup of both the database and the files. If you use a serious host (o2switch, OVH, Cloudways, SiteGround), an automatic daily backup is already in place — check that it’s recent and restorable.

The ideal setup is to test on a pre-production environment identical to production, then replicate the install. If you don’t have staging, a quick database export through PrestaShop’s built-in tool is better than nothing.

Method 1: install via the back office

This is the most common and safest method. It works for every module shipped as a ZIP file — whether from the official addon store, a third-party marketplace, or an independent developer.

  1. Log into the PrestaShop back office
  2. Go to Modules → Module Manager
  3. Click Upload a module (top right)
  4. Drag your ZIP file into the drop zone, or click to select it
  5. Wait for the confirmation message
  6. Click Configure to access the module’s settings

If the upload fails with a size error, your PHP directives are too restrictive. You need to raise upload_max_filesize, post_max_size and memory_limit in your php.ini or via an .htaccess at the PrestaShop root. Reasonable values: 64M for the first two, 256M for memory.

Edge case: modules locked by PrestaShop Marketplace

If you bought your module on addons.prestashop.com, the ZIP is sometimes signature-protected and requires a logged-in PrestaShop account. In that case, install must go through Modules → Selection and the install button tied to your purchase. This is intentional — PrestaShop blocks unauthorised redistribution this way.

Method 2: install via FTP

This method is useful in two cases: your ZIP file is too big for your hosting’s PHP limits, or you’re installing several modules at once and want to move faster.

  1. Unzip the module on your local machine
  2. You should get a folder named after the module (for example monmodule/)
  3. Upload that folder to /modules/ at your PrestaShop root via FTP or SFTP
  4. Go back to Modules → Module Manager
  5. Find the module in the list and click Install

Watch out: don’t unzip a ZIP that already contains /modules/monmodule/ at the root of your PrestaShop — you risk overwriting existing files. Always check the ZIP’s structure before extracting.

Alternative: Explorer FTP, in the back office directly

If you use Explorer FTP, you can upload your module files directly from the back office, without an external FTP client. Convenient when you work on the go or don’t have access to FileZilla.

Method 3: install via Composer (PrestaShop 9)

This method only applies to modern modules built to Symfony standards — for now, mainly official modules and some developer modules. Composer downloads the module and its PHP dependencies automatically.

cd /path/to/prestashop
composer require prestashop/module-name

You then activate it through the back office like a regular module. The official PrestaShop documentation lists Composer-compatible modules. For third-party modules (marketplaces, independent developers), method 1 remains the norm.

Configuring a module after install

Once installed, a module stays inactive until you’ve configured it. Click Configure next to the module’s name to access its settings.

Serious modules ship a clear configuration page with the essential parameters. Amateur modules leave you alone with a config.xml file to edit by hand — that’s a red flag.

Many modules also need one or more hooks activated. A hook is an attachment point in the page where the module injects its content. For example, a slider module needs to attach to the displayHome hook to show on the homepage. Check in Modules → Positions that the expected hooks are enabled.

Test in a staging environment

On a high-traffic shop, never install directly in production. The sequence to follow:

  1. Duplicate the store to a staging environment (same PrestaShop, PHP, MySQL versions)
  2. Install the module on staging
  3. Test critical paths for 24 to 48 hours: add to cart, complete checkout, payment, multistore if applicable
  4. Check the logs (Symfony, Apache, PHP) — a module can work on the surface but quietly throw errors in the background
  5. If everything’s green, replicate the install on production outside peak hours

Most common errors and how to fix them

“The module doesn’t show in the list”

Three possible causes: the ZIP was extracted to the wrong folder (check it’s at /modules/modulename/), file permissions are wrong (PHP files should be 644 and folders 755), or the back-office cache is stale. To clear the cache, go to Advanced Parameters → Performance and click Clear cache.

“500 error after activation”

The module is probably incompatible with your PrestaShop or PHP version. Disable it by deleting the module folder via FTP, then check versions on its product page. PrestaShop 1.7 vs 8 compatibility is the number-one source of incompatibilities.

“The module works but doesn’t display”

Hook not activated. Go to Modules → Positions, find your module in the list, and check the attached hooks. If nothing is ticked, attach it to the hooks recommended by its documentation.

“Conflict with another module”

Typical symptom: a module works alone but breaks when you enable a second one. Resolution goes through Symfony logs (in var/logs/) and selective disabling to identify the culprit. The most frequent conflicts involve modules that touch the same hooks or templates.

Best practices after install

Once your module is installed and configured, two habits:

  1. Document it — keep a file listing installed modules, versions, licences. On migration or support tickets, you save hours.
  2. Update regularly — most documented PrestaShop security flaws come from outdated third-party modules. Enable update notifications in Modules → Notifications.

What’s next?

To go further, browse our catalogue of PrestaShop 8 modules by category: SEO, checkout, marketing and more. Every DataFirefly module ships with detailed installation documentation and English- and French-speaking technical support.