CinfologContactRech.

Réalisation · Marque e-commerce qui produit ce qu’elle vend

Savoir ce que rapporte vraiment chaque produit vendu

Un outil de pilotage achats-ventes alimenté par Shopify : coût complet décomposé et marge réelle de chaque produit vendu, sur une base PostgreSQL et un tableau de bord Bubble.

Le contexte. Une marque e-commerce sur Shopify qui produit ce qu'elle vend. Shopify connaît le prix de vente ; il ne connaît pas ce que le produit a coûté. Matières premières, main-d'œuvre, frais annexes et taxes vivaient ailleurs, et la marge par produit ne se lisait nulle part.

Ce que j'ai construit. Le circuit de données d'un outil de pilotage achats-ventes :

  • une base PostgreSQL, hébergée chez OVHcloud, qui rassemble les ventes et les coûts saisis par l'équipe — matières premières de chaque produit, main-d'œuvre, frais divers, taxes ;
  • l'alimentation automatique depuis Shopify : d'abord par Zapier avec un bloc de code sur mesure, puis migrée sur n8n quand les volumes et la logique l'ont justifié ;
  • un tableau de bord unifié sous Bubble qui présente, pour chaque produit vendu, son coût complet décomposé et la marge qui reste.

Ce qui a demandé le plus de travail : la vitesse. Les requêtes SQL que Bubble envoie à une base externe sont lentes, et un tableau de bord qui en lance beaucoup se traîne. Le travail a consisté à faire faire à PostgreSQL ce qu'il fait bien, et à Bubble le moins possible :

  • les jointures et les cumuls calculés dans la base (vues, vues matérialisées, tables pré-calculées), pour que Bubble lise des résultats prêts ;
  • des index sur les colonnes filtrées ;
  • une seule requête pour tout un écran, plutôt qu'une par élément de liste ;
  • des listes paginées ou chargées progressivement ;
  • un cache côté Bubble, rafraîchi à intervalle.

Résultat : un temps de chargement divisé par trois.

Ce que ça montre. Une intégration ne sert pas qu'à recopier des données : bien faite, elle répond à une question que personne ne pouvait poser avant — « ce produit, est-ce qu'on gagne de l'argent dessus ? ». Et la base appartient au client, pas à l'outil d'automatisation : passer de Zapier à n8n n'a rien changé à ce que le tableau de bord affiche.

Ce qu'on retrouve d'un projet à l'autre

La donnée est rangée dans un endroit qui appartient au client, la logique est écrite là où on peut la rouvrir, et chaque échec se voit au lieu de passer en silence. C'est ce qui permet de changer d'outil, de prestataire ou de volume sans tout reconstruire. Comment je choisis entre réglage natif, connecteur, automatisation et développement.

Le même client a fait construire une synchronisation bilatérale entre Shopify et son CRM, jusqu'au SAV.

Outils : Shopify · Zapier · n8n · PostgreSQL · Bubble

Un projet du même genre ? Décrivez la situation en quelques lignes : je vous dis si elle se règle par un réglage, une intégration ou un développement, et comment je m’y prendrais. Réponse sous 24–48 h ouvrées.

Décrire mon besoin

← Toutes les réalisations

Lien affilié

Ça ne vous coûte rien de plus.

Si vous souscrivez en passant par ce lien, l’éditeur me reverse une petite commission. Pour vous, le prix est exactement le même : pas de surcoût, pas d’engagement en plus.

C’est la façon la plus simple de soutenir le travail que vous venez de lire. La veille, les comparatifs et les guides de ce site sont gratuits, sans publicité, et le resteront.

Les recommandations, elles, ne dépendent pas des commissions : quand un outil gratuit ou une solution plus simple suffit, je le dis — même quand il n’y a rien à gagner.