return

PhytoQuant

A PrestaShop store I have looked after for several years: a full redesign, a suite of custom business modules, and a two-way integration with the client's ERP.

  • Platform: PrestaShop
  • Version path: 1.6, then 1.7, then 8
  • What was done: migration, full redesign, custom business modules, two-way integration with the Dafi ERP
  • Role: sole developer, working directly with the client
  • Ongoing: maintenance and new features, continuously

contact@ivanvujno.com
PhytoQuant, page d'accueil sur ordinateur
PhytoQuant, catalogue sur ordinateur
PhytoQuant, fiche produit sur ordinateur
PhytoQuant, page d'accueil sur mobile
PhytoQuant, fiche produit sur mobile
PhytoQuant, panier sur mobile

The migration and the redesign

A store that works is a store you are not allowed to break. On a site maintained for several years, the work never starts with code: it starts with an inventory of what has been overridden, what has been altered in the theme, and which modules no longer have anyone maintaining them.

Moving from 1.7 to 8 is not about the version number. Between the two, the override mechanism changes, some hooks disappear, and Symfony takes over a growing share of the back office. Custom code does not age gently: it stops having anything to hold on to.

Every function the teams used daily was rewritten for the new version, with no change in use. The goal was not to modernise their habits, but to hand them back untouched the day after the switch.

The site was not updated in place: it was rebuilt entirely on a staging environment, then promoted to production on the day it was ready. A full rebuild means checking everything, function by function, because no part of the site can be taken for granted. The switch happened when that check was complete, not on a date fixed in advance.

What runs behind it

A store like this one is not driven from the front end alone. Most of the work sits with the teams who use it every day, and none of it exists off the shelf.

A back office for phone orders was built for the operators: order entry, discounts, carriers, deferred delivery, and a secure payment link sent to the customer. A referral system connects customers to the practitioners who advise them, with dedicated codes and a restricted admin area. On top of that, a loyalty programme and quantity-based pricing rules.

The store is also connected to the client's ERP in both directions, so that information is entered only once. Orders placed on the site are sent to the ERP in the format it expects; customers and orders created outside the site come back into PrestaShop, giving the teams a single view whatever the channel.

The tricky part is not the exchange itself, it is what happens when it fails. A sync that stops without telling anyone raises no alert: it creates a discrepancy, found later, when someone orders a product that is no longer there. Every exchange therefore logs its own state.

These parts have been maintained continuously for years, and each of them has survived two major version changes without the business stopping. This is the part of the work nobody sees, and it is what decides how long a store lives.

1.0

WHAT THE CLIENT SEES

PhytoQuant, page d'accueil sur ordinateur PhytoQuant, page d'accueil sur tablette PhytoQuant, page d'accueil sur mobile

8 is not a destination. The current version of PrestaShop is 9, and the publisher has announced a full move to Symfony: stores carrying custom code have a step ahead of them, and it is higher than the previous ones.

The work itself is unchanged: inventory first, business functions ported next, and a rollback ready before touching anything. One generation further on.

Direct client, named with their agreement. PhytoQuant's business figures belong to them: I publish none of them, here or anywhere else.

2.0

SIMILAR PROJECTS FOR YOU

CONTACT FORM

If you need a web development solution or have any queries, please get in touch and I’ll get back to you right away.


    Feel free to fill in the form
    or email me