---
title: "Fleurance Nature - E-Commerce Platform Redesign"
description: "Full redesign of fleurancenature.fr on Magento Enterprise Edition - migration from Solr to ElasticSearch, ERP flux overhaul, multi-site architecture with 60 custom modules across 3 websites."
locale: "en"
canonical: "https://portfolio.josedacosta.info/en/achievements/fleurance-nature-refonte-ecommerce"
source: "https://portfolio.josedacosta.info/en/achievements/fleurance-nature-refonte-ecommerce.md"
html_source: "https://portfolio.josedacosta.info/en/achievements/fleurance-nature-refonte-ecommerce"
author: "José DA COSTA"
date: "2017"
type: "achievement"
slug: "fleurance-nature-refonte-ecommerce"
tags: ["PHP 5.3", "Magento EE 1.10", "ElasticSearch", "Zend Framework", "MySQL", "Varnish", "Apache", "WordPress", "Solr", "LXC", "Pentaho Kettle", "Git"]
generated_at: "2026-04-23T15:45:27.880Z"
---

# Fleurance Nature - E-Commerce Platform Redesign

Full redesign of fleurancenature.fr on Magento Enterprise Edition - migration from Solr to ElasticSearch, ERP flux overhaul, multi-site architecture with 60 custom modules across 3 websites.

**Date:** July 2017 - September 2017  
**Duration:** 3 months  
**Role:** Senior Software Engineer - Full-Stack  
**Technologies:** PHP 5.3, Magento EE 1.10, ElasticSearch, Zend Framework, MySQL, Varnish, Apache, WordPress, Solr, LXC, Pentaho Kettle, Git

### Key Metrics

- Custom Modules: **-** - Magento custom modules
- PHP Files: **-** - Modified or created
- Websites: **-** - FR, International, Mincifine
- Blog Articles: **-** - Migrated from WordPress via RSS
- Environments: **-** - From local to production
- Spec Pages: **-** - Final specification document (v1.6)

## Presentation

_Project scope and business context_

### Domain

B2C e-commerce - natural and organic products (health, beauty, food supplements)

### Target Users

End consumers (France and international) purchasing natural products online. Back-office users managing catalog, orders, and promotions.

**Content:** **Fleurance Nature** is a French company founded in 1972, specialized in natural and organic products (health, beauty, food supplements). The company sells through its website fleurancenature.fr, which runs on Magento Enterprise Edition 1.10.

The project was a full redesign of the e-commerce platform, carried out at Smile (Open Source Solutions agency). The scope covered 3 websites (Fleurance Nature France, International, Mincifine), a migration from Solr to ElasticSearch for the search engine, and a complete overhaul of ERP data flows.

The existing codebase was heavily customized with 60 Magento modules, 1040 PHP files, and complex pricing rules involving 4 customer groups across 3 storefronts. The B2C business model targets consumers looking for natural health and beauty products.

A significant part of the work involved Magento's **EAV (Entity-Attribute-Value) database architecture** - a schema design where product attributes are stored as rows in separate tables rather than columns in a single table. This approach gives maximum flexibility for adding custom product attributes (like "natural actives", "min/max weight", "virtual category identifiers") without altering the database schema. The trade-off is query complexity: a simple product read can require JOINs across 6+ tables (one per attribute type: varchar, int, decimal, text, datetime, and the main entity table).

Equally central was Magento's **XML configuration and class override system**. Every module behavior in Magento 1 is declared via XML files (config.xml, system.xml, layout XML). To customize a core behavior - for instance, how product prices are indexed or how search results are sorted - a developer creates an XML declaration in their custom module that overrides ("rewrites") the original class. The system loads all module XML files at bootstrap and builds a merged configuration tree. This mechanism allowed Fleurance Nature's 60 custom modules to alter Magento's core behavior at any level (models, blocks, controllers, helpers) without modifying a single line of core code. The downside: debugging requires tracing through the XML configuration chain to understand which class is actually loaded at runtime.

**Domain:** Domain

**Target Users:** Target Users

**Functional Scope:** Functional Scope

## Objectives, Context & Risks

_Strategic goals and constraints_

### Context

The platform ran on Magento Enterprise Edition 1.10, a version already aging in 2017. The codebase had accumulated 60 custom modules over the years, making upgrades difficult and risky.

Pricing was particularly complex: 4 customer groups (anonymous, general, loyalty subscribers, company committees) each had different price catalogs across 3 websites. This created a matrix of 12 pricing combinations, each with its own set of rules and promotions.

The specifications went through 7 versions over 2 months (from v1.0 at 30 pages to v1.6 at 50 pages), reflecting the progressive discovery of edge cases and business rules hidden in the existing code.

- Redesign the front-end and back-office of 3 Magento websites with a modern responsive theme
- Migrate the search engine from Solr to ElasticSearch with autocomplete and faceted navigation
- Integrate the WordPress blog into Magento via RSS feed synchronization
- Overhaul the ERP data flows for product catalog, stock, and order synchronization
- Set up the 1000mercis marketing platform integration (tracking, emailing, analytics)

**Objectives:** Objectives

**Context:** Context

**Risks:** Identified Risks

**Risk1 Title:** Backward Compatibility

**Risk1 Desc:** With 60 custom modules, any change risked breaking existing functionality. Each modification required regression testing across all 3 websites.

**Risk2 Title:** Performance Thresholds

**Risk2 Desc:** The production site served real customers daily. Performance degradation during the migration was not acceptable - Varnish caching had to remain operational throughout.

**Risk3 Title:** Blog Integration Fragility

**Risk3 Desc:** The WordPress-to-Magento blog integration relied on RSS feed parsing - an artisanal approach with no transactional guarantee. 512 articles needed to migrate without data loss.

**Risk4 Title:** ERP Data Volumetry

**Risk4 Desc:** The ERP flux handled the full product catalog synchronization. Any error in the flow could corrupt product data, prices, or stock levels across all 3 storefronts.

## Implementation Phases

_Chronological breakdown over 13 months_

- Phase 1 - ERP & 1000mercis Flux
- Phase 2 - Graphic Design & Wireframing
- Phase 3 - Specifications & Development
- Phase 4 - Testing & Delivery
- Phase 5 - Warranty

**Phase1 Period:** January - July 2017

**Phase2 Period:** February - June 2017

**Phase3 Period:** July - October 2017

**Phase4 Period:** September 2017 - January 2018

**Phase5 Period:** December 2017 - March 2018

## The Team & Stakeholders

_Project organization and interactions_

### Validation

Formal sign-off with PV (proces-verbal) documents at each phase. Specifications reviewed and approved before development. Client acceptance testing with written validation before production deployment.

**Content:** The project followed a structured agency workflow with formal validation gates. Each deliverable required a signed acceptance document (PV - proces-verbal) before moving to the next phase. This approach reduced ambiguity but added time to each iteration cycle.

Communication happened through weekly progress meetings, a shared ticketing system, and formal specification reviews. The client had a dedicated project contact (Philippe B.) who centralized all business decisions.

**Team Composition:** Smile Team

**Stakeholders:** External Stakeholders

**Stakeholder Client:** Philippe B. - Client project contact at Fleurance Nature

**Validation Process:** Validation Process

## Results

_Skills acquired and deliverables_

**For Project:** Deliverables

**For Me:** Skills Acquired

## The Project Aftermath

_What happened after delivery_

**Content:** The redesigned site went live and continued serving Fleurance Nature customers in production. The ElasticSearch migration improved search relevance and autocomplete response times compared to the previous Solr setup.

Magento 1 reached its official end-of-life in June 2020. Adobe (which acquired Magento in 2018) stopped providing security patches, forcing all Magento 1 merchants to plan a migration to Magento 2 or an alternative platform.

For Fleurance Nature, this meant the 60 custom modules built during the redesign would need to be rewritten or replaced. The heavy customization that made the platform powerful also made the eventual migration significantly more expensive and time-consuming.

## Critical Reflection

_Honest retrospective analysis_

### Strength

- [object Object]
- [object Object]
- [object Object]

### Improvement

- [object Object]
- [object Object]
- [object Object]

### Lesson

- Well-written specifications reduce surprises during development - the 7-version process proved its value despite the time investment
- Backward compatibility multiplies complexity exponentially - each new module interacts with all existing ones, and testing coverage grows quadratically
- E-commerce pricing is always more complex than what the initial briefing suggests - hidden rules emerge during implementation, not during requirement gathering

**Strengths:** What Worked Well

**Improvements:** What Could Be Improved

**Lessons:** Lasting Lessons
