Cette nouvelle catégorie du parcours change complètement de terrain. Un thème s'exécute chez Shopify, en Liquid, et affecte uniquement l'apparence publique d'une boutique. Une application fonctionne très différemment : elle vit ailleurs, communique avec Shopify à distance, et peut agir sur des données, pas seulement sur de l'apparence.

Où vit réellement une application

Contrairement à un thème, le code d'une application ne s'exécute pas sur les serveurs de Shopify. Il tourne sur votre propre infrastructure, ou sur un service d'hébergement de votre choix, comme n'importe quelle application web classique. Shopify et votre application restent deux systèmes séparés, qui communiquent entre eux via Internet, chacun de leur côté.

Comment elle communique avec une boutique

Cette communication passe par les API présentées au guide 1 de ce parcours. Votre application envoie des requêtes à l'Admin API de Shopify pour lire ou modifier des données (produits, commandes, clients), et peut recevoir des notifications automatiques de Shopify via des webhooks, un mécanisme que vous découvrirez au guide 24. Dans l'autre sens, Shopify peut afficher une partie de l'interface de votre application directement dans son propre espace d'administration, pour que le marchand n'ait jamais l'impression de quitter Shopify.

Application publique ou application personnalisée

Une application peut être développée pour être installée sur une seule boutique précise (une application personnalisée, pour un besoin propre à Atelier Lumière par exemple), ou pour être distribuée à de nombreux marchands différents via l'App Store de Shopify (une application publique, soumise à des règles de qualité et de sécurité plus strictes avant sa mise en ligne). Ce parcours se concentre sur les bases communes aux deux cas ; la distribution publique demande des étapes supplémentaires, spécifiques, hors du périmètre de ce guide.

Ce qu'une application peut faire, concrètement

Une application peut ajouter un écran entier dans l'administration Shopify, visible uniquement par le marchand : un tableau de bord personnalisé, un outil de gestion spécifique. Elle peut aussi agir en arrière-plan, sans aucune interface visible, par exemple pour synchroniser automatiquement des commandes vers un autre système, le cas évoqué au guide 2 de ce parcours.

Une application n'est jamais automatiquement autorisée à tout faire

Le simple fait qu'une application existe et communique avec Shopify ne lui donne aucun accès automatique aux données d'une boutique. Chaque accès doit être explicitement demandé et autorisé, un sujet couvert en détail dans les deux prochains guides de ce parcours, consacrés à l'authentification et aux permissions.

Vérifiez que vous avez compris

Une application que vous développez doit lire automatiquement les nouvelles commandes d'Atelier Lumière pour les synchroniser vers un logiciel de comptabilité. Cette application s'exécute-t-elle sur les serveurs de Shopify, comme le fait un thème ?

Non. Une application s'exécute sur votre propre infrastructure ou un service d'hébergement séparé, jamais directement sur les serveurs de Shopify. Elle communique avec Shopify à distance, via les API, pour lire les commandes dont elle a besoin.