26 juillet 2019

Deux solutions sont disponibles pour créer un site e-commerce avec Drupal. Ubercart, module pionnier de l’e-commerce dédié au CMS et Drupal Commerce, apparu quelques années après. Bien que les deux solutions soient dédiées à la vente en ligne, elles proposent des approches différentes, notamment au niveau de la gestion des produits et de leurs attributs.
Cette approche a notamment une influence sur le type de site ciblé par les solutions. Alors que Drupal Commerce est indiqué pour les sites moyens à importants, Ubercart conviendra davantage aux sites ayant des produits avec peu de déclinaisons.

 

drupal-commerce-vs-ubercart.png

Drupal Commerce : le leader

Mi-2019, Drupal Commerce est utilisé par près de 50 000 sites. La première version stable est sortie en 2011. La part de marché de la version 1 compatible avec Drupal 7 reste encore élevée par rapport à la version 2. Cela s’explique notamment par les fonctionnalités de la version 1 qui n’ont pas été directement intégrées à la version 2. Un certain nombre de modules complémentaires n’étaient eux aussi pas compatibles au lancement de la version 2. Aujourd’hui, cet écart de fonctionnalités s’estompe grâce aux efforts de la communauté et de « Commerce Guys », porteur du projet.

 

 

drupal-commerce-statistiques-utilisation.png

Un projet e-commerce avec Drupal ?

Contactez-nous

Ubercart : en perte de vitesse

Ubercart est disponible depuis 2007 et a rapidement bénéficié d’un certain succès. La facilité d’utilisation et la situation de monopole en tant que solution e-commerce Drupal a profité à la solution. Depuis son apogée, en 2015, le nombre de sites utilisant la solution diminue, pour s’établir à 19 000 installations mi-2019.

ubercart-statistiques-utilisation.png

Drupal Commerce / Ubercart : deux approches

Gestion des produits

Drupal Commerce

Pour Drupal Commerce, chaque variante de produit est présente comme une entité distincte. Lorsqu’un produit possède plusieurs déclinaisons, différentes entités sont créées pour chaque combinaison de produits. Par exemple, pour un produit vendu en taille M et L et disponible en 2 couleurs, quatre nœuds seront créés et une entité d’affichage est créée pour le produit « générique ». L’avantage de cette méthode de gestion des produits, c’est qu’elle permet de faciliter l’expédition et le suivi. C’est la solution indiquée pour les sites e-commerce ayant un nombre de références produits important.

Ubercart

La gestion des contenus est simplifiée pour Ubercart : un produit est défini comme un nœud et les déclinaisons, comme les tailles ou couleurs sont gérées comme des attributs du nœud. Cette configuration convient davantage aux sites de vente en ligne proposant des produits avec peu de déclinaisons.

 

Expédition et paiement

Drupal Commerce

Il n’y a pas de modules de paiement et d’expédition directement intégrés à Drupal Commerce, contrairement à Ubercart. La volonté de l’éditeur « Commerce Guys » est de ne pas surcharger la plateforme e-commerce de fonctionnalités qui ne seront pas utilisées. Néanmoins les solutions de paiement peuvent être gérées à l’aide de modules complémentaires ou avec l’API de paiement de Drupal Commerce (version 2). Plus de 90 passerelles de paiement sont disponibles pour la version 2 de Drupal Commerce.

Ubercart

Ubercart est livré avec plusieurs modules de paiement : PayPal Website Payments Standard, Website Payments Pro et Express Checkout. Il est possible d’ajouter d’autres extensions de paiement. Un module de gestion des options d’expédition est également intégré de base.

 

Pourquoi vous devriez choisir Drupal Commerce

Souvent perçu comme une solution facile d’utilisation, Ubercart est tout de même en perte de vitesse par rapport à son rival. La courbe d’apprentissage de Drupal Commerce peut en effet être plus importante, mais les avantages l’emportent sur la « complexité » perçue de prime abord. Drupal Commerce est disponible sous forme de module, mais aussi sous forme de distribution intégrant le nécessaire pour avoir un site « out of the box » quasiment prêt à l’emploi. Cette base préconfigurée permet de gagner du temps lors de la configuration et des développements.

Lors de l’écriture de cet article (mai 2019), Ubercart n’avait pas été mis à jour depuis près d’un an, alors qu’une update de Drupal Commerce était sortie le mois précédant la publication de ce billet. Et l’implication de la société porteuse du projet Drupal Commerce, « Commerce Guys » va au-delà de la maintenance et des évolutions du module. Elle contribue en effet à d’autres projets Drupal, comme l’intégration dans le core de Drupal 8.7 du module JSON:API. Cet investissement sert aussi à Drupal Commerce. Avec par exemple la mise à jour du panier en temps réel possible avec une installation Drupal Commerce en configuration découplée (les modules « Commerce Cart API » et « Cart Flyout » sont concernés).

La vision d’avenir de Commerce Guys pèse dans la balance en faveur de Drupal Commerce. Ubercart semble d’ailleurs être délaissé et le site de l’éditeur n’est plus en ligne.

ubercart-hors-ligne.png

En tentant compte de ces facteurs permettant d’estimer la pérennité des deux solutions, il serait plus judicieux d’opter pour Drupal Commerce, même si une gestion plus simple des déclinaisons de produits suffit.