Aller au contenu
Business Agile
Réalisations
E-commerce · Transition écologique et ateliers DIY · En cours

Eco-Actives

Un back-end e-commerce headless unique pour deux marques, avec paiement Stancer et créneaux d'ateliers exclusifs.

En chiffres

marques servies par un seul back-end2
tests sur l'App et l'exclusivité des créneaux10
écarts du contrat de webhook corrigés3
version de Saleor retenue3.20

Eco-Actives est la société de Cécile BERREBI, installée à Boulogne-Billancourt. Elle porte deux marques : Eco-Actives, qui accompagne les entreprises, les associations et les collectivités dans leur transition écologique, et Ti Kosmeo, qui organise des ateliers de fabrication de cosmétiques et de produits ménagers naturels. Les deux marques vendent des ateliers, des cartes cadeaux et des produits. Plutôt que de monter deux boutiques séparées, je construis un back-end commerce unique qui les sert toutes les deux.

Le projet en détail

Avant de choisir, j'ai comparé plusieurs solutions open source sur de vrais essais : Django Oscar à l'automne 2024, puis Saleor au début de 2025. Saleor l'a emporté pour son API GraphQL, sa gestion native de plusieurs canaux de vente et son système d'Apps, qui permet d'ajouter un moyen de paiement ou une règle métier à côté de la plateforme, sans toucher à son cœur. La version retenue, Saleor 3.20, tourne en conteneurs avec son tableau de bord, PostgreSQL et Redis. Elle est configurée avec deux canaux, un par marque, reliés à un entrepôt unique : chaque marque garde son catalogue et ses prix, le stock n'est saisi qu'une fois. Un script importe le catalogue de façon idempotente, ce qui permet de reconstruire l'environnement à l'identique.

Le point délicat était une règle métier. Cécile anime un seul atelier à la fois : pour un même créneau, plusieurs ateliers peuvent être proposés, et dès que l'un est réservé, les autres doivent disparaître. C'est aussi ce qui rend possible la privatisation d'un atelier, c'est-à-dire sa réservation exclusive par un groupe pour un enterrement de vie de jeune fille ou un team building. Le stock par variante de Saleor ne sait pas exprimer cette exclusivité. Je l'ai donc placée dans un service dédié, au sein d'une App Saleor écrite en FastAPI, et couverte par des tests unitaires.

Cette même App gère le paiement par Stancer, prestataire de paiement français, dans sa version 2 à page de paiement hébergée. Je l'ai écrite à partir de la spécification OpenAPI officielle plutôt que de la documentation narrative. J'ai validé l'installation de l'App et la vérification d'un webhook signé contre une instance Saleor réelle, ce qui m'a permis de trouver et de corriger trois écarts entre le contrat de webhook documenté et le comportement effectif. L'App relaie aussi les demandes de devis vers Brevo et choisit l'URL de retour de paiement selon la marque de la commande.

Le projet est en cours et n'est pas encore déployé. La pile tourne et se teste en local, avec une intégration continue qui lance ruff, pytest et mypy en mode strict sur chaque merge request. Le catalogue Eco-Actives est encore provisoire, le paiement réel attend un compte de test Stancer, et le front d'ecoactives.fr reste à construire, sur le modèle du site Ti Kosmeo déjà en ligne.

Ce qui a été fait

  1. 01

    Une seule instance Saleor pour deux marques, avec deux canaux de vente et un entrepôt commun

  2. 02

    Créneaux d'ateliers exclusifs gérés par un service dédié, hors du stock Saleor

  3. 03

    App Saleor en FastAPI intégrant le paiement Stancer v2 à page hébergée

  4. 04

    Webhook signé vérifié contre une instance réelle, trois écarts de contrat corrigés

  5. 05

    Import du catalogue idempotent et CI ruff, pytest et mypy strict sur chaque merge request

Questions fréquentes

Peut-on gérer deux marques avec un seul back-end e-commerce ?

Oui. Pour Eco-Actives, une seule instance Saleor porte deux canaux de vente, un par marque, reliés à un entrepôt commun : chaque marque a son catalogue et ses prix, et le stock n'est saisi qu'une fois.

Comment gérer des créneaux d'ateliers exclusifs dans une boutique en ligne ?

Quand une seule personne anime tous les ateliers, réserver un atelier sur un créneau doit retirer les autres ateliers proposés au même moment. Cette règle est portée par un service dédié branché sur Saleor, plutôt que par le stock des produits.

Quel moyen de paiement français intégrer à Saleor ?

Le back-end d'Eco-Actives intègre Stancer, prestataire de paiement français, par une App Saleor qui crée une intention de paiement et renvoie le client vers la page de paiement hébergée de Stancer.

Autres réalisations

Un projet ? Parlons-en cette semaine.

Un brief court, une réponse sous 48 h, une estimation ferme après cadrage.

Décrire mon projet