Shopify, solution E‑commerce SaaS
La société Shopify a vu le jour en 2004 à Ottawa. En 2017, Shopify est désormais un leader majeur du secteur des plateformes E‑commerce avec 500.000 boutiques en ligne hébergées générant un volume de vente 40 milliards de dollars.
Le Système E‑commerce Shopify hébergé en SaaS offre une solution complète à moindre coût destinée aux petites et moyennes entreprises. Le périmètre fonctionnel couvert par Shopify est très large et offre de nombreuses possibilités de personnalisation. Un grand nombre de thèmes permet d’adapter rapidement le design du site. Ces thèmes utilisant des templates implémentés dans le langage Liquid (proche de Twig) peuvent être adaptés en fonction des besoins. Un App Store Shopify très riche permet d’ajouter des fonctionnalités au produit.
Cet article fait suite à la réalisation d’un site E‑commerce basé sur Shopify. Tout en présentant Shopify, il vise également à donner un avis sur son utilisation et à présenter les difficultés rencontrées.
Personnalisation Shopify
Shopify permet un niveau de personnalisation très poussé via plusieurs leviers:
- Choix de thème: Shopify met à disposition plus de cinquante thèmes gratuits ou payants. De plus, des éditeurs indépendants proposent également de nombreux thèmes dans des domaines d’activités très variés: Photographies, Prêt à porter, Électronique….
- Personnalisation du thème (CMS management): Shopify offre de nombreuses possibilités de personnalisation du thème: gestionnaire de blog, éditeur de page, configuration des menus de navigations, configuration des domaines…
- Edition des templates du thème: Les pages de template Liquid peuvent être éditées dans Shopify. L’éditeur contrôle la syntaxe du code saisi et ajoute une coloration syntaxique. En plus des templates Liquid, il est également possible d’éditer ou d’ajouter des feuilles de style css, des médias (images, vidéos…), du code javascript… Pour une équipe de développement de plusieurs personnes, il est possible d’utiliser un dépôt Git et d’utiliser « Shopify Theme Kit » pour synchroniser Git et Shopify.
- Ajax API: Shopify fournit une API permettant d’effectuer des requêtes Ajax pour manipuler le panier ou requêter le catalogue des produits.
Fonctionnalités E‑commerce
Les fonctionnalités E‑commerce de Shopify sont assez complètes mais restent généralement très basiques. Voici un survol rapide de quelques unes d’entre elles:
- gestion du catalogue: Elle permet de gérer les produits et leurs variantes (SKU). Pour des catalogues importants, il est possible de procéder par Export/Import. La gestion des Stocks et des Gift cards est également native. Le modèle de données est très peu configurable. Il n’est par exemple pas possible nativement d’ajouter des propriétés.
- gestion et traitement (fulfillment) des commandes: Elle est complétée par un système basique de Fraud Check. A chaque étape du traitement de la commande, un mail peut-être expédié au client. Les templates de mail Liquid sont éditables.
- gestion des promotions: Application de réductions simples de type Percentage, Fixed Amount ou Free Shipping sur des produits ou sur la commande. Un code Promotion peut être associé à toute promotion.
App Store
L’App Store de Shopify contient plus de 1000 Apps permettant d’étendre les fonctionnalités du site: internationalisation du site, gestion des expéditions, plateformes de paiements, extension du modèle de données Client ou Produit…
Les Apps utilisent bien souvent un mécanisme de proxy pour afficher sur le front-end Shopify des données provenant des sites éditeurs de ces Apps.
Ces éditeurs fournissent généralement une interface d’administration du service proposé: Interface de traduction pour l’internationalisation, interface d’impression d’étiquette pour les expéditions… Ces interfaces peuvent être intégrées à Shopify :
- en utilisant l’Embedded App SDK. Elles apparaissent directement dans le Back-Office Shopify. Bien que les fonctionnalités ajoutées semblent natives, elles sont hébergées hors de shopify par l’éditeur et utilisent les API Shopify.
- à l’aide de liens dans le Back-Office Shopify. Ces liens redirigent vers les applications d’administration de l’éditeur sur des domaines hors shopify qui utilisent également les API Shopify
Retour d’expérience
Bien que Shopify semble répondre, sur le papier, à tous les besoins métiers d’un site E‑commerce, dans la pratique, on se heurte rapidement à de grosses lacunes. Citons-en uniquement deux qui nous semblent assez impensables au premier abord:
- Shopify n’est nativement pas multi-langues: En effet, bien que Shopify propose des thèmes internationalisés, c’est à dire déjà traduits dans 5 ou 6 langues, un utilisateur ne peut pas choisir la langue du site. Pour ce faire, il est indispensable d’utiliser une App telle que langify.
- Un utilisateur ne peut pas éditer son compte client: Un utilisateur ayant créé son compte client ne peut pas éditer son compte pour changer son nom ou son adresse email. Il est alors nécessaire d’utiliser une App telle que Customer Fields.
Il est également à noter que les modèles de données des types Product, Client et Order sont très simplistes. Il est donc bien souvent nécessaire de les étendre pour y ajouter des propriétés personnalisées. Ceci passe bien évidemment par l’ajout de nouvelles App.
L’utilisation de ces Apps n’est parfois pas anodine. Nous avons utilisé Langify pour internationaliser notre site. Toutefois, la manière dont elle s’intègre n’est pas très satisfaisante:
- tous les templates Liquid du site sont modifiés pour ajouter du code Langify
- langify crée des clés de traduction différentes de celles de Shopify
- les fichiers et outils de traduction Shopify ne sont pas compatibles avec ceux de Langify
Les Apps sont presque toutes payantes avec des prix allant de quelques dollars à une centaine de dollars. La nécessité d’utiliser un nombre important d’Apps peut donc augmenter de manière importante le coût récurrent du site.
En résumé, Shopify s’appuie fortement sur toutes les sociétés partenaires qui éditent des Apps. L’absence de certaines fonctionnalités E‑commerce indispensables semble donc volontaire afin de faire participer ces sociétés. Ces éditeurs, très actifs sur tous les blogs et forums Shopify, contribuent également beaucoup à la visibilité de Shopify.
Pourquoi choisir Shopify ?
Pour conclure, voici quelques éléments permettant d’aider à choisir ou à rejeter Shopify en tant que solution E‑commerce.
Pourquoi utiliser la plateforme E‑commerce Shopify ?
- Coûts récurrents de plateforme réduits et maîtrisés
- Adaptation du design des pages flexible avec Liquid
- Site E‑commerce classique
Dans quel cas ne pas utiliser Shopify ?
- Modèle de données (Client, Catalogue ou Produit) complexe
- Besoin d’un Checkout spécifique (à moins de basculer sur Shopify Plus)
- Besoin fort d’interconnexions avec d’autres systèmes