🎁 Perplexity PRO offert

30 jours gratuits

Activer l'offre →

PrestaShop vs Sylius: From Module to Product, What if the Future is Hybrid?

Introduction – When a Simple Module Raises a Real Question About the Future

Picture this. You’re working on a classic PrestaShop project. The client asks for something very simple: “I want to display a customizable message in the site header, configurable from the back-office.”

Nothing revolutionary. A PrestaShop module, a displayHeader hook, a configuration field, a Smarty template… job done.

And yet.

If we step back a bit, this “little module” raises a much broader question: how do we design an e-commerce feature today… and especially tomorrow.

With the convergence between PrestaShop and Sylius, we’re no longer just facing a choice of tools. We’re facing two development cultures that are looking at each other, comparing themselves, and potentially… complementing each other.

👉 In this article, I offer you a concrete analysis:

  • how this module would be designed on the PrestaShop side
  • how the same idea would be approached on the Sylius side
  • what each approach does very well
  • and above all, why the future of e-commerce will very likely follow a hybrid model

Part 1 – Context & Challenge: Two Worlds Converging

For a long time, the landscape was clear:

  • PrestaShop = an e-commerce CMS focused on time-to-market, modules, hooks, efficiency.
  • Sylius = an e-commerce framework based on Symfony, focused on architecture, customization, and scalability.

Two different philosophies. Two sometimes distinct audiences.

And then, the convergence happened.

It’s not just a financial or strategic operation. It’s a strong signal sent to the ecosystem:

E-commerce can no longer be just “quick to install” or “perfectly architected”. It must be both.

Today’s challenge is no longer just knowing how to add a feature, but how it will evolve over time.

A message in the header today. A contextualized message tomorrow. Then rules, segments, AI, omnichannel.

That’s where the comparison gets interesting.


Part 2 – Analysis: Same Need, Two Ways of Thinking

🧩 PrestaShop Side: The “Module + Hook” Reflex

In the PrestaShop universe, the answer is almost instinctive:

  • Create a module
  • Add a configuration page in the back-office
  • Save the message via Configuration::updateValue()
  • Inject rendering via a hook (displayHeader)
  • Display in a Smarty template

This model is extremely powerful.

Why?

  • Fast to develop
  • Easy to maintain for simple needs
  • Perfectly integrated into the PrestaShop ecosystem
  • Understandable by the majority of developers and merchants

It’s an approach focused on immediate functionality. You add behavior to an existing system.

And for 80% of e-commerce needs… it’s exactly what’s needed.

🧩 Sylius Side: Thinking “Feature”, Not “Module”

With Sylius, the reasoning changes.

We no longer really talk about “module”, but about:

  • Sylius Plugin / Symfony Bundle
  • Business service
  • Doctrine Entity to store data
  • Symfony Form for administration
  • Twig, Event, or API to expose functionality

In other words:

You don’t “plug in” a feature, you build it as a product.

The advantages are clear:

  • 🧠 Clean and testable architecture
  • 🔌 Extensible (rules, permissions, multi-channel)
  • 🌐 API-first / headless ready
  • 📈 Scalable from conception

However, it’s more demanding:

  • more decisions to make
  • more structure
  • more time upfront

But also much more freedom in the long term.


Part 3 – Concrete Case: Same Need, Two Implementations

Let’s take our very simple example: a message displayed in the header.

PrestaShop Implementation

Typical workflow:

  1. The merchant enters their message in the module’s BO
  2. The text is stored in configuration
  3. The displayHeader hook injects the HTML
  4. The theme displays it

➡️ Simple. Effective. Perfect for a global need.

Sylius Implementation

Same need, different approach:

  1. Create a Message entity (content, language, channel, dates)
  2. Admin interface via Symfony Form
  3. Expose the message via:

    • a Twig block on the storefront side
    • or an API consumed by a headless front
  4. Ability to add:

    • display rules
    • customer segmentation
    • A/B testing

➡️ Longer to set up, but much more scalable.


Part 4 – What if the Real Future is a Mix of Both?

This is where things get exciting.

The future of e-commerce will probably be neither 100% “classic” PrestaShop, nor 100% “from scratch” Sylius.

It will be hybrid.

🚀 The Best of Both Worlds

  • PrestaShop for:

    • speed
    • standard needs
    • ready-to-use product logic
  • Sylius / Symfony for:

    • strategic features
    • complex workflows
    • AI, automation, omnichannel

Imagine:

  • a simple PrestaShop module on the facade
  • connected to a more robust service-side brick
  • powered by automation (n8n), AI, business rules

We move from module to intelligent feature.


Conclusion – The Module is No Longer an End, It’s a Starting Point

A message in the header is never just a message.

It’s a pretext to think about:

  • how we design our features
  • how they will evolve
  • and what role we, as developers, will play tomorrow

The future won’t be made of developers who stack hooks. Nor architecture purists disconnected from reality.

👉 The future belongs to those who know how to orchestrate: tools, frameworks, AI, automation.

And you, your next module… is it just “functional”, or already designed as a building block for the future?