PrestaShop 9: what really changes in the new version

After two years of collaborative development and high anticipation, PrestaShop 9 was officially released in June 2025, marking a major step forward for the platform. This major update introduces a modernized architecture, new developer tools, and powerful features designed to support the future of e-commerce. Unlike our previous post that focused on the beta version expectations, this article dives deeper into the confirmed changes in the stable release – highlighting what truly changed and what each audience (merchants, agencies/partners, and developers) can expect. Keep in mind that as a major version, some modules and themes might need updates for compatibility, so thorough testing is crucial before upgrading a production store.

Key differences between PrestaShop 8 and 9

  • Updated tech stack: PrestaShop 9 jumps from Symfony 4.4 (used in PS 8) to Symfony 6.4 LTS, and requires PHP 8.1 or higher (compatible up to PHP 8.4). This represents a big leap in performance, security, and longevity compared to PS 8.
  • New native API: Unlike PS 8 (which relied on a legacy webservice), PS 9 introduces a modern Admin REST API built on API Platform, greatly simplifying integrations with CRMs, ERPs, and other tools.
  • Fully migrated back office: In PS 8, a portion of the back office still used legacy code. PS 9 completes the job by migrating 100% of the back office to Symfony/Twig, with all pages (Orders, Products, Customers, etc.) unified under the new architecture. The result is a refreshed admin interface and consistent experience throughout.
  • “Hummingbird” theme: PrestaShop 8 shipped only with the Classic theme. PS 9 brings a new official front-office theme called Hummingbird, built with modern technologies (Bootstrap 5, TypeScript, SCSS with BEM) and aimed at better performance and mobile optimization – a significant difference from the previous front-end.
  • Improved performance & SEO: PS 9 includes native optimizations like WebP/AVIF image support, faster script loading, and SEO enhancements (product URLs without category, configurable redirects), which were not available out-of-the-box in PS 8.
  • Stronger security & stability: Besides leveraging newer, more secure PHP and Symfony versions, PrestaShop 9 implements recommended security practices such as random database table prefixes and blocking direct file access – measures absent in PS 8. The email system was also modernized by switching to Symfony Mailer instead of PS 8’s SwiftMailer, fixing limitations and dropping outdated SSL encryption in favor of TLS.
  • Easier upgrades: The familiar “1-Click Upgrade” module has been revamped into the Update Assistant 7 in PS 9, featuring a more intuitive UI and even a CLI option – making upgrades safer and more convenient, a substantial improvement over PS 8.

Major new features and changes in PrestaShop 9

Symfony 6.4 and PHP 8.1+: modern foundation and performance

A cornerstone of PrestaShop 9 is the update of its technological foundation. The platform now runs on Symfony 6.4, the latest long-term support (LTS) version of the popular PHP framework, which ensures security updates through 2027. This jump from Symfony 4.4 to 6.4 brings significant performance gains (faster execution and lower memory usage) and a cleaner, more robust codebase with less technical debt. Alongside this, PrestaShop 9 requires PHP 8.1 or higher (officially supporting 8.1, 8.2, 8.3, and 8.4), aligning with actively supported PHP versions and leveraging their improvements in language features and security. For merchants, this updated foundation translates to a faster and more secure store in everyday operations. For developers, it means access to modern features, cleaner code patterns, and compatibility with the latest PHP libraries – in short, a more future-proof platform both in performance and maintainability.

New architecture with a fully Symfony back office

PrestaShop 9 at last completes the full migration of the back office to Symfony. Every admin page – orders, products, customers, configuration, and so on – is now rendered using Symfony controllers and Twig templates, replacing the last remnants of legacy code. This results in a back-office interface with a updated, modern design aligned with PrestaShop’s current branding, plus improved layouts and unified navigation across the entire admin panel. In practice, merchants will experience a more consistent and smooth back-office, without the mix of old and new screens. New capabilities have been introduced in the process, such as the ability to manually create guest customers from the back office (to ease creating orders by phone, for example). For agencies and developers, the complete migration means no more juggling two architectures – there’s now a single standardized Symfony framework, simplifying extension and maintenance of the admin. Important: With this migration, some back-office hooks have changed or been removed (for instance, certain admin login hooks were deprecated), so any modules that customized the admin will need review for PS 9 compatibility. On the upside, new hooks were added for the Symfony pages (such as actionBackOfficeLoginForm to customize the login form) following Symfony best practices.

New Admin API for integrations and automation

Addressing a long-standing request, PrestaShop 9 introduces a brand-new Admin API. Built on the API Platform framework (with a RESTful JSON approach), this API provides structured access to store data and functionalities, opening up integration possibilities that were cumbersome before. In practical terms, external systems like ERPs, CRMs, marketplaces or apps can now connect more reliably to the shop to read and write information (products, orders, customers, etc.) through secure endpoints. Beyond integrations, the API enables automation of administrative tasks – for example, updating stock or prices in bulk, syncing catalogs across multiple stores, or generating custom reports, all via API calls instead of manual operations. For developers, this is a big step toward a more developer-friendly PrestaShop, aligned with modern REST API standards and even facilitating headless commerce scenarios (using PrestaShop as a backend only). Note that the PrestaShop 9 Admin API is still evolving – not every operation is covered at launch, and more endpoints will be added in future updates. Nevertheless, it lays a critical foundation for a more open ecosystem. It’s worth exploring the documentation and experimenting with it in your projects.

Hummingbird theme: next-generation front end

Another headline feature of PrestaShop 9 is the debut of Hummingbird, a new front-office theme that represents the next generation of PrestaShop’s storefronts. Developed in response to community feedback, Hummingbird offers a cleaner, more modern base with a mobile-first focus. Technologically, it’s built with Bootstrap 5 (LTS), TypeScript, and a CSS architecture using BEM conventions and modular SCSS. These choices update the theming ecosystem: Bootstrap 5 provides modern responsive components; using BEM for CSS classes ensures maintainable, predictable styling; and SCSS with the @layer rule allows for more scalable and organized styles. Additionally, Hummingbird cuts down on third-party dependencies, leaning on Bootstrap’s built-in features, and cleanly separates Bootstrap styles from PrestaShop-specific ones – making custom theme development easier. The new theme also natively supports dark mode (toggled via a SCSS variable) and has refactored many templates for consistency and modularity. Note: Hummingbird is not replacing the Classic theme as the default in PS 9 – it’s included with the install, but Classic remains the active default theme to maintain compatibility with existing modules Think of Hummingbird as an optional preview of PrestaShop’s future theming direction. Merchants launching new stores might consider it for a more up-to-date look and feel, and front-end developers should explore it, as it indicates where future versions are headed. The coexistence with Classic means nothing will break immediately – you can install PS 9 and test Hummingbird if you choose. However, as it matures and likely becomes the standard in the future, now is a great time for the community to contribute feedback and improvements while the theme evolves.

Enhanced performance and front-office features

Performance has been a strong focus in PrestaShop 9. Thanks to the updated stack (PHP 8.x and Symfony 6.4) and a slew of optimizations, stores should run faster and feel lighter. There’s native support for WebP and AVIF image formats, which offer better compression than JPG/PNG and help speed up page load times without sacrificing quality. Front-end scripts and components have also been optimized – for example, jQuery UI components now load faster, improving front-office responsiveness. Moreover, the use of Presenters (a presentation layer) has been extended for category, brand, supplier, and store listings, standardizing how these elements are rendered and yielding speed gains on those pages. The customer experience benefits from some functional improvements as well: if a visitor is viewing a product that is already in their cart, the shop can now notify them, preventing confusion or duplicate adds. The checkout flow is smoother too, with the option to check out as guest even if an account exists for that email, speeding up purchases (handy if the customer doesn’t recall their password and wants a quick buy). Another small usability tweak: product breadcrumb navigation now reflects the category the user accessed the product from, making it easier to backtrack in the store’s hierarchy. In summary, PS 9 not only runs on a more powerful engine, but it also polishes many aspects of the front-end to deliver faster pages and a smarter shopping experience for customers.

SEO and URL improvements for better visibility

In terms of SEO (search engine optimization), PrestaShop 9 brings important adjustments that make it easier for merchants to improve their store’s search rankings. By default, product URLs are now cleaner – the category path is no longer included in the product URL, avoiding unnecessary text and duplicate content URLs for the same product. (If desired, one can still configure to include categories, but the new default favors short, friendly URLs.) Additionally, you can now remove the default language prefix from URLs. In previous PrestaShop versions, even the default language would show a prefix like /en/ or /fr/ in every URL. In PS 9, you have the option to omit the default language code in URLs, eliminating extra redirects when adding new languages and shortening links for the primary locale. Another addition is control over redirects for disabled categories: if you deactivate a category, you can set a custom 301 or 302 redirect, rather than relying on default behavior – this helps preserve SEO equity when reorganizing your catalog. Lastly, filtered product listing pages (like layered navigation results) are now automatically marked to be excluded from indexing by search engines. This follows SEO best practices, as filter result pages can otherwise generate duplicate or low-value content for crawlers. With these changes, PrestaShop 9 ensures your store is technically aligned with SEO best practices out-of-the-box, reducing the need for additional modules or workarounds to adjust URLs and meta settings.

Stronger security and system robustness

Security remains a top priority, and PrestaShop 9 includes several enhancements that make the platform more secure and stable. One change already mentioned is the upgrade to Symfony and PHP itself – newer versions patch known vulnerabilities and offer a more secure foundation. Beyond that, there are specific adjustments: during installation, the database table prefix is now randomized by default, instead of the fixed ps_. This makes automated SQL injection attacks that target default table names more difficult. Direct access to PHP files is now blocked by default – in other words, measures are in place to prevent someone from directly loading internal script files via URL, adding another layer of protection against common exploits. Debug mode can be limited to a specific user via a cookie now, rather than being on for everyone when enabled. This means developers can enable debug without worrying that customers might stumble upon sensitive debug output. There’s also improved tracking of module actions: installations, updates, and removals of modules are better logged and managed, giving administrators more visibility into changes happening on the system. Taken together, these measures raise the store’s resilience, reducing the risk of intrusions and issues due to misconfiguration.

Modernized email system

PrestaShop’s email sending mechanism has been updated in version 9, although it’s less visible to end users. Under the hood, SwiftMailer (the library used in previous versions for emails) has been replaced with the more up-to-date Symfony Mailer. The reason for this change is to follow modern email-sending practices and improve compatibility with current and future PHP versions. For merchants, this means the shop’s email system should behave in a more reliable and secure manner. One outcome of the switch is dropping support for some outdated protocols – for example, old SSL encryption (SSLv3) is no longer supported, leaving TLS or no encryption as options for secure SMTP. In practice, you might need to adjust your mail configuration if you were using a specific port/protocol, but generally this change brings better security in email communication. Additionally, PrestaShop 9 continues the improvements started in PS 8 regarding email templates: email theme files now follow a more organized structure (stored under a mails/themes/ directory), which makes customization and translation easier. Overall, PrestaShop 9’s transactional emails should face fewer sending issues and offer easier maintainability for developers, ensuring important messages (order confirmations, password resets, etc.) reliably reach customers.

What PrestaShop 9 means for Merchants

For store owners and merchants using PrestaShop, version 9 introduces tangible changes in daily operations and also raises the question of when and how to upgrade. From a practical standpoint, upgrading to PrestaShop 9 you’ll notice a refreshed back-office look and smoother navigation, though without an extreme learning curve – the interface is cleaner and more consistent, but you won’t have to relearn everything. Managing products is easier now that the new product page is the default (it’s faster, especially for large catalogs, and includes improvements like manual or automatic sorting of feature values). You’ll also find small admin conveniences such as the ability to create guest customers from the back office (useful for recording phone orders, for instance). On the storefront side, your customers should experience a slightly faster and friendlier site: pages load quicker, checkout is more accommodating (guest checkout streamlined), and there’s less friction if they view a product already in their cart. In terms of visibility and marketing, the SEO improvements mean better URLs and site structure by default, which can improve your organic search rankings with little to no extra effort.

That said, it’s normal for a merchant to ask: should I upgrade immediately? What are the risks and benefits involved? Let’s break it down:

  • Key benefits of upgrading: You’ll place your store on a state-of-the-art technological foundation, gaining speed, security, and compatibility. This can manifest in faster page loads (improving customer experience and even conversion rates) and fewer security vulnerabilities over time. The new features – from the API (which can translate into valuable integrations) to built-in SEO tweaks – can provide a competitive edge, be it through process automation or attracting more organic traffic. Upgrading sooner also means you’ll benefit from ongoing community improvements, since new features moving forward will target version 9. In short, migrating to PS 9 makes your store future-ready, with more efficient tools to grow.
  • Potential risks and precautions: Being a major upgrade, there’s a risk of some functionality breaking – especially if you rely on third-party modules or a custom theme. Before upgrading, verify that all your modules and theme have updates compatible with PrestaShop 9. It might be wise to wait for your key module vendors to release PS 9 versions or find alternatives that are ready. Always perform a full backup and ideally test the upgrade in a staging environment (a copy of your site) before touching the live site. Remember the official advice: test thoroughly before deploying the new version to production. If you’re not technically inclined, involving an experienced PrestaShop agency or developer to handle the migration is a good investment – it can prevent downtime or lost sales from unexpected issues. Another consideration is the learning curve: although the back office functions similarly, the new design might require a short adjustment period for your staff to locate some options or understand new settings. Overall, with proper planning and caution, the risks can be mitigated. The good news is PrestaShop 9 ships with the new Update Assistant which guides you step-by-step and includes system checks and the ability to roll back if something fails. Make use of this tool to your advantage.

In conclusion for merchants: PrestaShop 9 is a significant advancement that, when leveraged, can improve both your store’s operational efficiency and your customers’ experience. Evaluate with your team and technical partners the ideal timing for the migration – but start familiarizing yourself with the new features now, as they represent the direction PrestaShop is heading in the coming years.

What changes for Agencies and Partners

If you’re part of a digital agency or a PrestaShop partner managing multiple stores for clients, the release of PrestaShop 9 carries important strategic implications. First and foremost, your clients will likely start asking about the upgrade – so it’s crucial to position your agency as knowledgeable about the new version, ready to advise on when and how to migrate. Managing multiple stores means the migration needs to be carefully planned at scale. Here are some key points for agencies:

  • Managing multiple stores and large-scale migration: With numerous installations under your care, standardizing the upgrade process is essential. PrestaShop 9 offers the new Update Assistant with a better UI as well as a CLI mode for automation. This means agencies can script updates for multiple stores in a consistent way, potentially integrating it into a DevOps workflow. Before any mass migration, run a pilot project: select a less critical store or a representative staging environment and perform the upgrade, noting each step, timing, and any hiccups. Then you can replicate that process for other clients with greater confidence. Communicate with clients about expected maintenance windows for the upgrades and have a contingency (backup/rollback) plan for each.
  • Compatibility of clients’ modules and themes: A big challenge in major upgrades is ensuring all modules (especially custom or obscure ones) work with the new core. As a partner, it’s on the agency to conduct an audit of the stores you manage: list all modules and themes used by your clients and check which ones are already compatible with PS 9. Many community and marketplace developers are updating their solutions for the new version – keep in contact with them and monitor releases. For bespoke modules your team has built, allocate development time to update them (e.g., adjusting any calls to now-removed classes, updating use of hooks, ensuring PHP 8.1+ support, etc.). This is a short-term investment but not updating those modules could lead to bigger issues later. Factor this into your migration project timelines and budgets.
  • Strategic positioning and business opportunities: The arrival of PrestaShop 9 is also a business opportunity. Clients with older stores might use the migration as a chance for a broader refresh – perhaps a visual redesign using the Hummingbird theme or performance improvements that previously required multiple extensions. Your agency can offer upgrade packages that include not just the technical core update, but also optimizations (enabling new SEO features, configuring the API to integrate with the client’s systems, etc.). Demonstrating mastery of PS 9 helps build trust that your team is up-to-date with the latest tech. From a marketing standpoint, consider producing content (blog posts, webinars) explaining the benefits of PS 9 to merchants – by educating the market, you establish your agency as a thought leader and may attract new clients who are unsure about migrating. Emphasize the business benefits: for example, highlight that better site performance can boost conversion, that stronger security reduces the risk of costly breaches, or that the new API can integrate the store with tools that save time by automating manual tasks. These points help clients see the value in upgrading beyond just technicalities.
  • Training your technical team: Internally, ensure your developers and designers are prepared to work with PrestaShop 9. This might involve training in Symfony (if they weren’t already proficient), studying the new best practices outlined in PS 9’s documentation, and experimenting with Hummingbird for front-end projects. Make it a habit to start new projects on PS 9 whenever possible to build experience quickly. Having successful PS 9 case studies will be a competitive advantage. Additionally, engaging with the community (reporting bugs you encounter, contributing on forums or GitHub) can give your team visibility and help solve issues preemptively that others might face.

In summary, for agencies and partners, PrestaShop 9 signals the beginning of a new era for the ecosystem. Getting ahead of this transition will ensure not only your current clients’ satisfaction but also open doors for new business. Plan migrations strategically, communicate the benefits, and invest in upskilling your team – this way your agency cements itself as an expert in the next generation of PrestaShop.

What changes for Developers

Developers, whether agency-based or freelancers building shops, modules or themes for PrestaShop, will find PS 9 to be familiar in purpose (the e-commerce fundamentals are the same) but with important differences in how you work. Here are the main points developers should note:

  • Hooks and core extensions: With the complete back-office migration to Symfony, many traditional PrestaShop hooks have been retired or changed. For example, hooks related to the old admin login controller (like actionAdminLoginControllerBefore) no longer exist because the login process is now entirely Symfony-based. In their place, new hooks have been introduced, such as actionBackOfficeLoginForm mentioned earlier, which allows you to modify the Symfony login form. In general, any hooks on pages that have been migrated to Symfony/Twig now follow the Symfony event model or have been relocated. It’s recommended to review your module’s use of hooks and consult the upgrade guide for PS 9 to see if anything changed in signature or context. Front-office hooks remain largely the same, but if you start adopting the Hummingbird theme, note that this theme reorganized many templates and hook insertion points, so modules injecting HTML might need to adjust selectors or provide new override templates for Hummingbird.
  • Module structure and class usage: PrestaShop 9’s core underwent code cleanup and dependency updates. Some libraries used internally were removed or replaced with Symfony alternatives (for example, Guzzle was replaced by Symfony’s HttpClient, and SwiftMailer by Symfony Mailer). If your module relied on any of those libs or used core classes that have gone away, you’ll need to adapt. A best practice is to bundle any external dependencies your module needs (via Composer) instead of assuming they’re present in the core. Also, functions or methods deprecated in 8.x are likely removed in 9.0. Spend time reading the developer changelog/notices, which highlight what’s gone or altered. Another point: PrestaShop 9 runs exclusively on PHP 8.1+, meaning you can (and should) take advantage of type hints, typed properties, enums, and other modern PHP conveniences in your code. On the flip side, legacy code that had patterns incompatible with PHP 8 (e.g. untyped variables that could cause TypeErrors) will need testing and adjustment.
  • Themes and modern front-end: If you develop themes, PrestaShop 9 offers both a challenge and an opportunity with the new Hummingbird theme. It uses a very different front-end stack than Classic: instead of heavy jQuery and mixed styles, we have Bootstrap 5, ES6+/TypeScript, and a strict CSS convention. There’s a learning curve if you’re not used to BEM or modular SCSS, but the maintainability benefits are huge. Creating a child theme from Hummingbird means following its new folder structure (it did away with the old _dev directory present in Classic and reorganized assets). The advantage is this new theme aligns more with industry standards, so integrating custom designs or third-party components should be smoother. However, note that Hummingbird is not mandatory – you can still support Classic in PS 9. Ideally, offer dual compatibility for now: if your module has visual elements, ensure it works on Classic and take the opportunity to test and adapt it for Hummingbird too, since more stores are likely to switch to it in the future. Regarding tooling: the asset build process in PrestaShop 9 now requires Node.js v20 and has been updated – check the front-end docs to adjust your development workflow accordingly.
  • Symfony container and modern development: A behind-the-scenes novelty for developers is the (experimental) introduction of the Symfony service container in the front office. This means that even on the shop’s front-end side, it’s now possible (in early stages) to use dependency injection and Symfony services, something previously limited to the back office. It’s a hint at where PrestaShop is heading: eventually unifying everything around Symfony. For now, as a developer, you can explore this capability to write cleaner front-end modules, registering services and using them in front controllers via the container (check devdocs for usage examples). Additionally, Symfony controllers are now defined as services by default in the back office – in other words, you can inject your dependencies directly into Admin controllers you override/create instead of relying on ServiceLocator or static calls. This improves code design and testability. Keep in mind, however, that the old base controller with a global container was kept for backward compatibility but is flagged as deprecated and will be removed in PS 10. So start now to use the new style controllers and avoid calls like $this->get('...'), preparing your custom code for the future.
  • New best practices and documentation: PrestaShop 9 comes with extensive updates to developer documentation, including migration guides and notable changes. It’s highly advisable to read these official materials to catch non-obvious nuances. For example, details like changes in object validation, removal of old static helper methods (think Tools::displayError and such) in favor of using proper translator services, etc., are covered in the docs. Embracing the suggested best practices – such as using Form Handlers and the Grid system for building custom admin pages instead of hacks – will make your modules more aligned with the core and ready for future updates. In essence, from a developer’s perspective, PrestaShop 9 represents a significant evolutionary refactoring. There is an adaptation curve, but the payoff is working in a more stable, standardized environment. Dive into the new source code, try migrating a simple module from 8 to 9 to see what changes, and lean on the community (forums, GitHub, Slack) to share experiences during this transition.

Finally, remember: a more modern platform also raises merchants’ expectations. That means there will be demand for new modules and solutions that take advantage of PS 9’s features (API integrations, performance enhancements, etc.). Developers who get up to speed quickly have an opportunity to offer products and services that stand out in this new ecosystem.

Need assistance upgrading or making the most of PrestaShop 9? The AGTI team is ready to help with expert support at every step of this transition. Feel free to reach out to us and move to PrestaShop 9 with confidence.


Comentários

Leave a Reply

Your email address will not be published. Required fields are marked *