Archives par mot-clé : Système d’information e-commerce

Accélérer le chargement des pages pour les sites marchands

Pour un site marchand, avoir des pages qui se chargent très vites est un vrai critère pour « vendre plus », ou, pour le dire d’un point de vue client, pour « donner aux clients une expérience positive ».

Comme toujours sur les sujets commerciaux, ce critère est un critère parmi d’autres. Pour offrir une bonne expérience, il faut être bon sur plusieurs sujets clés comme : pertinence de l’offre, vitesse de chargement des pages, qualité des contenus, SEO, qualité du moteur de recherche, processus achat fluide, …

Il faut voir ça comme une compétition de saut en hauteur par exemple. Le résultat est binaire : on passe ou pas. Mais les critères pour passer l’obstacle sont nombreux : préparation, qualité des chaussures, météo, … Il faut être bon partout pour passer l’obstacle.

La vitesse de chargement des pages est donc l’un de ces critères, et c’est donc très important de bien traiter ce sujet. C’est important pour les clients (qui sont pour la plupart sur smartphone, ou ce critère est encore plus important) et pour le référencement : google pénalise les sites qui se chargent trop lentement.

Pour autant, accélérer le chargement des pages est complexe : c’est un sujet transversal. 

Ce que je veux dire, c’est que ce n’est pas un sujet qu’on peut traiter à la fin ou indépendamment des autres activités : ce sujet concerne des métiers différents, de l’architecture du site marchand, à la réalisation de la couche front, en passant par l’hébergement, …

Au début, l’idée est simple : les différentes pages (page d’accueil, page catégories, ….) doivent s’afficher « rapidement », pour que le client n’ai pas le sentiment d’attendre devant une page blanche, en cours de chargement.

Il existe de nombreux outils pour mesurer ce temps de chargement.

Google propose par exemple PageSpeed.

Exemple avec la page d’accueil d’Amazon : 

Comme on le voit, la mesure de qualité de chargement d’une page est en fait rapidement assez technique, je vous encourage a tester un tel outil, avec différentes pages, et de regarder ce que propose PageSpeed, comme indicateurs et comme informations pour améliorer les choses.

Le temps de chargement est notamment lié à  : 

  • La complexité et la performance des bases de données. Un copain expert commence toujours ses analyses par l’audit des bases de données. On explique en général une bonne partie des ralentissements à ce niveau là. Si une page est construite avec un grand nombre de requêtes, et si il y a des requêtes « lourdes », on tient là un très bon candidat pour réduire fortement le temps de chargement des pages ;
  • La qualité de l’intégration : une page Web peut être composé de dizaines d’appels HTTP, de plusieurs natures : contenus HTML, CSS, javascript et médias. Plus on a d’appels, plus la page est longue à charger. Au delà du nombre d’appels, on doit aussi analyser l’ordre dans lequel les éléments sont chargés, qui permettent (ou pas) d’afficher les premiers éléments de la page rapidement ;
  • La gestion des médias : une page web contient des dizaines d’images. On peut regrouper les images (sprite) et les compresser.
  • Utilisation de solution de cache en ligne, comme Akamai.

Réduire au maximum le temps de chargement des pages doit donc être un chantier à travailler. Ce sujet va être intéressant, car il va impacter pas mal d’équipes, et va probablement challenger l’organisation même de l’entreprise. Exemple classique : un site bien fait va nécessiter la mise en place d’une vrai charte graphique, qui sera appliqué sur l’intégralité du site. La mise en place d’une telle charte demande une certaine maturité.

Ce chantier va prendre du temps, et en parallèle, c’est en général une bonne idée d’utiliser une solution tierce pour accélérer le temps de chargement des pages sans délai. 

Il s’agit de solutions qui se positionnent entre le client et le site marchand, comme un proxy.

La requête du client est donc traité par la solution d’accélération, qui va soit répondre directement avec du contenu pré-calculé (en cache donc), soit aller chercher les infos sur le site marchand.

Je connais deux solutions : 

  •  Zycada : Je viens de découvrir cette boite, car ils viennent d’annoncer une très belle levée de fonds.
  • Fasterize : L’entreprise existe depuis pas mal d’années, et est utilisé par de nombreux sites marchands. La solution marche très bien. Il faut dire qu’elle a été montée par un vrai pro du ecommerce, Mr Stéphane Rios, qui fut le CTO de Rue Du commerce. Il connait donc son sujet 🙂

Ce sujet, de l’accélération via du cache logique, à un lien avec ce que propose les solutions de personnalisation, comme Target2Sell. En effet, ce que propose un moteur de personnalisation, c’est de proposer du contenu spécifique pour chaque visiteur. Ces contenus ne peuvent donc pas, par définition, être mis en cache.

Il faut donc être attentif à bien traiter ce point quand on met en place une solution de personnalisation avec une solution de « cache applicatif ».

L’ADN d’un CMS

Cet article complète l’article précédent : L’ÉCOSYSTÈME DES SOLUTIONS POUR UN SITE MARCHAND – LE CMS

Chaque entreprise a son histoire, et cette histoire est importante, parce qu’elle défini sa nature, son ADN.

Prenons par exemple Hybris. A la base (1997), Hybris était un PIM, très orienté multi-canal. ensuite, pour élargir son offre, Hybris a racheté iCongo (en 2011), iCongo étant un CMS. Donc historiquement, Hybris n’est pas un CMS, et ça se sent dans le produit. Le « centre de gravité » de l’offre est le PIM

Le cas de l’offre Salesforce est différent, puisqu’elle est basée sur Demandware, qui était bien un CMS, conçu pour être un CMS adapté aux « gros marchands », en mode SAAS. Là aussi, ça se sent : l’offre est très « front », et bien faite pour la partie CMS, la tuyauterie pour gérer tous les aspects back office étant bien moins développé.

Enfin,  Proximis est un troisième exemple différent. Pour Proximis, depuis le début, le sujet est l’omnicanal, ce qu’ils appellent le commerce unifié. Le sujet, c’est de proposer un socle commun, pour présenter une offre cohérente aux clients, quelque soit le canal d’achat utilisé. Un des élément clé est une gestion intelligente du stock, sur les différents points de ventes. Le « centre de gravité » de Proximis est donc plus dans une logique de middleware,  entre l’ERP du marchand, et les différents canaux de ventes.

L’écosystème des solutions pour un site marchand – Le CMS

Ce billet est le premier d’une série, ou je vais essayer de clarifier les choses, sur la façon de concevoir un « système marchand ».

On commence par le premier composant, le plus évident, mais pas forcément le plus simple : le CMS.

Tous les marchands vendent en ligne aujourd’hui, et la crise du Covid a mis en avant l’importance du canal digital.

Les marchands veulent se simplifier la vie. Ils aimeraient autant bâtir leur solution ecommerce avec le moins de composants possibles… Mais la réalité est qu’aujourd’hui, une plateforme complète n’existe pas. Les choses évoluent beaucoup trop vite, la couverture fonctionnelle est beaucoup trop large, les métiers trop différents… En fait, quelque soient les raisons, la réalité est là : pour avoir une solution ecommerce de qualité, il va falloir « faire du Légo ».

Alors, quels sont les composants clés pour un site marchand ?

Déjà, il faut bien voir que le marchand n’a pas attendu le digital pour développer son système informatique. Il y a donc très probablement un ERP, peut être un (ou plusieurs 😉 ) CRM, peut être un PIM, sans doute un logiciel de gestion logistique, des logiciels de caisses, des solutions pour gérer le SAV, … Bref, le système informatique du marchand est déjà un patchwork composé de dizaines de composants.

Le système ecommerce va donc devoir co-exister et surtout coopérer avec cet existant.

Mais revenons à nos moutons : quels sont les composants clés pour un site marchand : 

Le premier composant qui vient à l’esprit est un CMS. C’est l’outil qui va servir de base au site marchand. 

La plupart du temps, on part d’un CMS ecommerce, comme Salesforce Commerce Cloud, Proximis, SAP Hybris, Shopify

(Pour les plus petits marchands, il existe également plein de solutions, comme Wizishop, Prestashop, et bien d’autres)

Un tel outil va proposer les fonctions de bases pour un site : 

  • Gestion du catalogue des produits : gestion de l’arborescence des produits, gestion des pages produits, moteur de recherche ;
  • Gestion du compte client ;
  • Animation du contenu des pages (accueil, …) ;
  • Gestion du panier et du processus achat ;
  • Interface avec une solution de paiement (ou un PSP pour les intimes) ;
  • Gestion du suivi des commandes. 

Le CMS doit pouvoir gérer les différents terminaux d’accès : mobile, tablette ou ordinateur.

Pour peu que l’enseigne vende à l’international, il va falloir gérer le multi langue et le multi site (un site par pays). Rien que ce point mériterait un billet (ou un livre !) à lui tout seul.

Alors, vous allez me dire, il fait tout ce CMS, pourquoi avoir besoin d’autre chose ?

Bonne remarque 😉

En fait, pour quelqu’un créant une nouvelle marque, et souhaitant lancer le site marchand directement, il n’en faut pas plus (Qu’en pense Martin par exemple, de Slean ? 😉 )

Mais pour les marchands déjà établis, ou les marques de renom, il va faire bien plus :

Il va falloir en particulier s’interfacer ce CMS avec les composants existants : 

  • Interfacer la base de données Produits avec le site marchand ;
  • Interfacer le système de gestion des commandes du CMS avec le système existant du marchand ;
  • Interfacer la gestion des stocks, pour avoir les bonnes informations de stock, disponibles dans le site marchand ;

En général, la gestion des prix et des promotions est un sujet compliqué : le marchand a déjà ses outils, plus ou moins adaptés au digital. Là encore, il va falloir faire communiquer les solutions.

Le CMS doit faire tout cela en étant capable de gérer les pics de trafic. Il n’y a pas si longtemps, on comptait les sites hors service au début des soldes… Pendant la crise du Covid, on a encore vu quelques sites HS…. 

Le CMS doit être résilient : s’il y a un bug, les choses doivent être gérées de manière « souple » : on n’affiche pas le code de l’erreur interne au client par exemple….

Le CMS doit être robuste face aux attaques « pirates » : il ne doit pas être possible d’accéder, depuis le Web, aux infos confidentielles des clients.

Le CMS soit être « SEO friendly » : il doit être bien fait pour que Google référence bien les pages. Là encore, ce sujet mériterait un livre entier.

Il doit être relativement facile de faire des évolutions : changer les formats des pages, changer des textes, changer des menus…

Cela n’a l’air de rien, mais faire tout ce que doit faire un CMS, en gérant des centaines, voir des milliers d’appels à la seconde est un vrai challenge. C’est bien pour cette raison que les solutions SAAS on « gagné » le marché.

Alors, faut il forcément un CMS pour faire un site marchand ?

Bien sûr que non (ça serait trop simple). 

Il existe plusieurs alternatives : 

Il est possible de construire soi-même ce CMS. On a donc bien un CMS, mais ce n’est pas une solution du marché, on se le fait soi-même. Cette solution est aujourd’hui relativement rare, car cela demande une très bonne maîtrise technique Web. Il est toujours assez facile de faire une première version qui fonctionne « à peu près ». Faire une solution qui fonctionne dans la durée, avec tous les critères évoqués ci dessus (plus tous ceux que j’ai oubliés), cela représente un vrai gros travail. Si aujourd’hui pratiquement personne ne se risquerait à repartir de zéro, on peut par contre partir de frameworks, contenant les briques de base, pour monter son site.

Enfin, la solution à la mode est de faire un site marchand Headless, mais ça, je vous en reparlerai !

Aujourd’hui, plus de 95% des sites marchands sont construits sur des CMS du marché.

 

 

Alkemics, le chaînon manquant

Aujourd’hui, pour avoir un « système digital » de vente, il faut assembler plusieurs composants. Le « tout en un » n’est pas du tout réaliste.

Un marchand doit donc « faire ses courses », et assembler tout un tas de briques, pour avoir une plateforme performante.

Un des sujets clé, c’est la « Data Produit » : le marchand a besoin d’une donnée Produit de qualité. Cette donnée permettra d’alimenter correctement les autres composants : le site marchand, les fiches produits en magasin, les éventuels catalogues, …

Le problème est que c’est un sujet compliqué : 

La donnée doit être structurée, cohérente. Il est ainsi bien plus riche d’avoir des attributs « normalisés » qu’un champ texte, contenant les différentes caractéristiques du produit. Si on a des attributs de qualités, on peut trier intelligemment, on peut alimenter des composants comme la recommandation de produits, la recherche, … avec ces attributs.

Bref, une donnée de qualité, une donnée structurée est la base pour offrir au client une bonne expérience.

C’est là qu’intervient Alkemics.

Leur idée est de se mettre entre les fournisseurs et les marchands : 

Grâce à cette solution, les fournisseurs peuvent directement alimenter la plateforme avec leurs produits et toutes les informations associées : informations techniques et marketing.

Les marchands se connectent à la plateforme et récupère ainsi une information complète et à jour.

La synergie entre Alkemics et Target2Sell est hyper naturelle : quand un marchand utilise Alkemics, cela permet à notre solution de récupérer des informations très riches sur les produits, et ces informations vont alimenter notre plateforme, et l’aider à mieux « apprendre » sur les produits. Par exemple, pour repérer qu’un client aime les produits bio, il est indispensable d’avoir les bons attributs en place.

Au fait, Alkemics vient d’annoncer une levée de fonds de 21 M€

La base de données Produit, un sujet stratégique pour les marchands

La personnalisation, c’est donc la capacité d’adapter le site marchand à chaque visiteur

Pour « apprendre », une solution de personnalisation aura besoin de suivre ce que font les clients sur le site. C’est ce qu’on appelle le tracking. Le tracking fonctionne comme un « tag analytics » : un petit script dans la page permet de faire appel au serveur de personnalisation, et de suivre ce que fait le client : les produits vues, les catégories sélectionnées, les produits mis au panier, achetés (je reviendrais sur ce sujet du tracking).

Mais pour « comprendre », la solution de personnalisation doit également avoir une vue sur le catalogue des produits en vente.

Les clients et les produits, ce sont les deux « pieds » fondamentaux, pour un moteur de personnalisation.

Cette base de données de produits est fondamentale pour un marchand, elle alimente plusieurs composants clés :

  • CMS ;
  • Moteur de recherche ;
  • Moteur de navigation dans les catégories (ces deux sujets étant parfois regroupés, sous le nom de « Searchandising »);
  • Moteur de personnalisation donc.

La qualité de cette base est un critère clé pour « bien vendre ».

Avec des données de qualité, les produits seront facile à trouver, bien rangés dans leurs catégories. Les fiches produits seront riches, avec des descriptions bien adaptés et des visuels de qualités (les visuels ne sont pas stockés dans la base Produit, on ne stocke que les liens vers les médias). Les produits seront enrichis d’attributs de qualités, permettant de filtrer, de comparer… Si vous vendez dans plusieurs pays, les données seront correctement traduites dans toutes les langues. 

Pour le marchand, cela représente souvent un vrai défit : historiquement, les données Produit sont gérées dans des outils de type ERP. La base Produit ERP contient tout un tas d’informations utiles pour la gestion de l’entreprise (code fournisseur, code de gestion, …), mais pas bien adaptées à la vente.

C’est là que des outils de PIM prennent tout leur sens : 

  • Ils se placent entre l’ERP et la couche « Web » (CMS et autres) ;
  • Ils sont alimenté par l’ERP et enrichi de plusieurs façons : a la main, en récupérant d’autres données, …

Les PIMs ne sont pas forcément des solutions inaccessibles. Une solution comme Akeneo est facile à mettre en oeuvre, et permet de bien gérer l’enrichissement Produit.

 

Prestashop 1.6

Petit teasing sur Prestashop 1.6 :

ça a l’air bien sympa tout ça 🙂

Bon, je ne peux pas m’empêcher de vous rappeler que Target2Sell est très facile à installer sur toutes les boutiques prestashop, et que ça permet de gagner en performance commerciale (taux de transfo, montant du panier…). Déjà plus de 20 boutiques en ligne 🙂

Question clé : le passage de la 1.5 à la 1.6 pourra-t-il se faire sans douleur ? A suivre !

Du mille feuille au « one stop shop »

Quand on veut bâtir une solution e-commerce, on a finalement le choix entre deux extrémités :

  • Soit on cherche un acteur polyvalent, qui va vous proposer du « all in one », c’est également ce qu’on appelle le « one stop shop ». Si on prend l’analogie avec le bâtiment, c’est le constructeur de maison. Pas besoin d’architecte, pas besoin d’aller chercher des artisans. Un seul acteur fait tout.
  • Soit on fait soit même sa « liste de course », et on choisi, item par item, les bons composants.

Si on n’a pas de temps, qu’on n’y connait pas grand chose, le « one stop shop » est bien sûr très tentant.

construction-maison-laon

La photo est attrayante, il y a tout ce qu’il faut, et pas besoin de s’embêter avec tous les détails…

Mais si on veut « the best of bread », il faut faire son marché !

bread-534x356

Bien sûr, ça prend plus de temps, il faut comprendre comment les différentes briques interagissent entre elles, les fonctions de chacune, les différents fournisseurs, …

Comprendre les différence entre ce que proposent les fournisseurs est difficile… et prend du temps. Mais c’est le prix de l’excellence !

Autre sujet important : en composant son « mille feuille », il faut bien valider que le prix total est bien raisonnable et bien compatible avec son activité.

Il ne faut donc pas se tromper de brique !

Bon courage 🙂

 

Pré production et data stagging

Sur un site un peu pro, on a deux versions (au moins) :

Une version en production (le site en ligne) et une version en préparation, appelée pré-production.

La version de pré production permet de tester les évolutions qu’on fait sur le site.

Vous demandez une nouvelle fonction, l’équipe technique réalise l’évolution, et envoie ça sur la pré production.

Cela permet de voir ce que ça donne et de valider que ça fonctionne bien.

Pour bien faire ça, il faut que la pré production tourne sur une configuration pratiquement équivalente à celle de production.

L’une des grande difficulté est d’avoir un environnement et des données équivalentes entre les deux environnements. Sans entrer dans les détails, cela coute cher et c’est compliqué à faire…

Bon, ça, c’est pour la partie logicielle, applicative.

Maintenant, on a besoin d’autre chose pour bien travailler, c’est le data stagging.

Le data stagging, c’est un peu la même idée que la pré-production : pouvoir tester en condition quasi réelles des modifications, mais ici, il ne s’agit pas de modifications faites sur les programmes mais sur les données.

Exemples : vous préparez le catalogue de la rentrée, vous mettez à jour les éléments marketing du site, vous préparez des éléments de merchandising (promotions, bannières, …).
Le data staging permet de tester tout ça dans un environnement équivalent à celui de la production, mais sans prendre le risque d’impacter le site en ligne.

Il y a plusieurs façon de faire du data stagging. On peut faire du data stagging logique : tout se fait sur le site en ligne, mais les données sont « dupliquées » entre les deux environnements : la production et le data stagging.
L’autre approche est physique : on crée physiquement deux versions du site, avec des mécanismes de synchronisation entre les sites.

Sans data staging, on est en « direct live » : on fait des modifications, et on regarde sur le site ce que ça donne.

Enfin, une autre solution est de faire ce que fait Apple : fermer le rideau.

apple-store-down

C’est une alternative intéressante, car elle évite la mis en place du data stagging, et permet de tester une mise en ligne avant de la proposer aux internautes.

Finalement, les meilleures solutions sont rarement les plus compliquées 😉

Prestashop : Go Go Go !

J’ai entendu, ou plutôt lu, par ci par là, des critiques plutôt sévères à l’égard de Prestashop.

Je ne me sens pas en phase avec ça !

Bien sûr, Prestashop n’est pas parfait, et la direction n’a pas toujours pris les bonnes décisions.

Et oui, c’est vrai, la nouvelle direction a décidé de réduire les effectifs.

Mais, quand vous connaissez les choses de près, le revers du décors, vous en connaissez beaucoup de boites ou tout est parfait ?

L’entrepreneuriat, c’est fait d’essais / erreurs. Après, certains font croire qu’ils avaient tout calculé… La vie d’une entreprise n’est jamais un long fleuve tranquille.

Par exemple si on parlait de Magento, on pourrait en dire des choses, sur la non focalisation, ou d’autres histoires pas toujours claires.

Donc Prestashop :

C’est une très bonne solution, plutôt bien faite, plutôt bien adapté pour mettre en ligne des boutiques, plutôt souple pour correspondre à pas mal de cas.

Pour de petites boutiques, la solution est très bien, facile et légère a installer.

Pour de plus grosses boutiques, Prestashop peut se brancher par dessus un système d’information interne, et ça tourne très bien.

La boite avance, et qu’ils aient décidé de simplifier le contour fonctionnel de la solution est de mon point de vue un très bon signe.

Si vous me lisez, vous savez que l’un de mes motos est : focalisation.

Donc, Prestashop : GO GO GO