---
title: Exporter des produits depuis Shopify au format CSV
date: 2025-03-28
categories:
  - ai
  - data-integration
  - json
  - xml
tags:
  - ai-assistants
  - data-mapping
  - json-editor
  - pdf
  - xml-editor
description: Les outils graphiques de MapForce facilitent l'exportation des données de Shopify et leur conversion vers d'autres formats, tels que XML, des bases de données ou Excel.
---
Status: #blog

Tags:  #mapforce #shopify

Categories: [data-integration](/blog/fr/category/data-integration.md) | [etl](/blog/fr/category/etl.md) 
# Exporter des produits depuis Shopify au format CSV

Shopify est une plateforme de commerce électronique extrêmement populaire, utilisée par de nombreuses entreprises de vente au détail, grandes et petites. Bien que Shopify offre des outils faciles à utiliser pour créer et gérer une boutique en ligne, la gestion du grand volume de données qui se cachent derrière, comme les catalogues de produits, les informations sur les clients, les enregistrements de commandes et les stocks, peut rapidement devenir complexe.

Les entreprises ont souvent besoin d'intégrer les données de Shopify avec des bases de données internes, des systèmes ERP, des CRM, des entrepôts de données ou d'autres plateformes, afin de rationaliser leurs opérations, de réaliser des analyses plus approfondies ou de prendre en charge des processus automatisés.

C'est là qu'un outil de mappage de données compatible avec Shopify devient indispensable, permettant aux entreprises de transformer, de structurer et de transférer les données entre Shopify et d'autres systèmes de manière efficace et précise.

Examinons un exemple de situation courante : l'extraction de données de produits depuis Shopify vers un fichier CSV, en utilisant les outils visuels de MapForce.

![Article de blog Shopify](/blog/images/Shopify_CSV1_blog.jpg)

<!--more-->
## How Can You Get Data Out of Shopify?

Bien que Shopify fournisse aux entreprises les outils nécessaires pour créer et gérer leurs boutiques en ligne, l'extraction des données dont elles ont besoin pour d'autres tâches depuis la plateforme est un peu plus complexe.

Shopify a toujours proposé plusieurs API et outils conçus pour aider les développeurs à accéder et à exporter des données, mais elle a récemment standardisé sur [**GraphQL**](https://graphql.org/) comme format d'API privilégié. En fait, elle exigera bientôt que toutes les nouvelles applications Shopify utilisent GraphQL. L'approche GraphQL permet de formuler des requêtes très ciblées, permettant aux commerçants de demander uniquement les données spécifiques dont ils ont besoin dans un seul appel d'API, ce qui améliore les performances et réduit tout transfert de données inutile.

![Logo de Shopify avec le symbole GraphQL](/blog/images/shopify-graphql.png)

Shopify propose deux principales API GraphQL pour aider les développeurs ou les professionnels de l'informatique à accéder aux données des boutiques :

- **API GraphQL pour l'administration Shopify** : Il s'agit de l'API principale pour les opérations côté serveur. Elle permet d'accéder aux données de la boutique en ligne, telles que les produits, les commandes, les clients, les stocks, les informations de livraison, et bien plus encore. Les développeurs peuvent utiliser l'API GraphQL pour l'administration afin d'extraire et de structurer les données pour les intégrer à d'autres systèmes.

- **API GraphQL pour l'interface de vente en ligne (Storefront API)** : Bien que l'API Storefront soit principalement utilisée pour alimenter des expériences d'achat personnalisées et des applications frontales, elle permet également d'accéder aux données publiques de la boutique, telles que les listes de produits, les collections et les processus de paiement. Cela est particulièrement utile pour les entreprises qui souhaitent intégrer les données de Shopify dans des plateformes destinées aux clients, comme des applications mobiles personnalisées.

## Utilisation de MapForce pour l'intégration des données Shopify

Les développeurs peuvent utiliser MapForce pour [intégrer les données de Shopify](https://www.altova.com/fr/mapforce/convert-shopify-graphql) avec d'autres formats de données et systèmes en créant des correspondances personnalisées qui appellent directement ces API GraphQL. Grâce à la prise en charge des appels Shopify comme source ou destination de tout projet d'intégration de données, MapForce agit comme un pont, transformant les structures de données de Shopify dans les formats requis par la structure de données cible, ou inversement.

Pour commencer, les développeurs doivent créer une **application personnalisée** au sein de leur boutique Shopify. Une application personnalisée fournit les informations d'identification et les autorisations d'API nécessaires pour interagir de manière sécurisée avec les API de Shopify. Contrairement aux applications publiques répertoriées dans la **boutique d'applications Shopify**, qui sont proposées par des partenaires Shopify pour une utilisation générale, les applications personnalisées sont développées spécifiquement pour un cas d'utilisation privé pour une seule boutique et ne sont pas disponibles pour d'autres boutiques. Cela donne aux entreprises un contrôle total sur la manière dont les données sont accessibles et utilisées dans leurs projets d'intégration de données ou de [ETL](https://www.altova.com/fr/etl).

## Connecter MapForce aux API GraphQL

Pour intégrer les données de Shopify dans d'autres systèmes en utilisant l'API GraphQL de l'interface d'administration ou de la boutique en ligne, plusieurs étapes clés doivent être réalisées par les propriétaires de boutiques au sein de Shopify :

1. **Permettre le développement d'applications personnalisées** 
	Shopify limite par défaut la création d'applications personnalisées afin de protéger les commerçants contre les accès non autorisés à l'API. Avant de créer une application personnalisée, le propriétaire ou l'administrateur de la boutique doit d'abord activer le développement d'applications personnalisées dans les paramètres d'administration de Shopify.

2.   **Créer une application personnalisée ("Développement d'applications")**
	Une fois le développement d'applications personnalisées activé, l'étape suivante consiste à créer l'application elle-même. Cela se fait via la section "**Développement d'applications**", où le propriétaire du magasin ou le développeur peut définir une nouvelle application spécifiquement pour l'intégration d'API.

3.   **Attribuez les autorisations d'accès à l'API appropriées**
	Shopify utilise des niveaux de permissions très précis pour contrôler les données auxquelles une application peut accéder. En fonction de l'utilisation prévue, l'application devra se voir attribuer les autorisations appropriées pour l'API d'administration ou l'API de la boutique en ligne (par exemple, lecture des commandes, écriture des produits, lecture des clients).

4.   **Installez l'application personnalisée dans votre boutique Shopify**  
	Une fois l'application configurée et les autorisations définies, elle doit être installée directement dans la boutique Shopify. Ce processus d'installation génère les informations d'identification API nécessaires, notamment le jeton d'accès à l'API.

5.   **Récupérer et stocker le jeton d'accès à l'API**  
	Le jeton d'accès permet un accès sécurisé et authentifié aux API de Shopify. Ce jeton sera utilisé par votre outil de mappage de données externe pour authentifier les requêtes API.

## Associer les données de Shopify à un fichier CSV 

Passons maintenant à un exemple de mappage GraphQL dans MapForce. Ce projet de mappage répond à une exigence courante : l'extraction des données de produits Shopify vers un fichier CSV, afin de les importer dans un autre système, ou simplement pour les intégrer dans Excel pour analyse.

Lors de l'intégration d'un composant Shopify dans un projet de cartographie, MapForce vous guide à travers les étapes suivantes : saisie du nom de votre boutique, sélection de l'API d'administration ou de l'API de la boutique en ligne, et saisie de votre jeton d'accès à l'API. Ensuite, vous pouvez définir les paramètres de connexion, configurer les paramètres de sécurité HTTP (si nécessaire), ajouter les paramètres d'en-tête pertinents, et créer une requête ou une mutation.

![Paramètres de l'API Shopify](/blog/images/shopify-api-settings.png)

Pour ce faire, vous pouvez construire dynamiquement la requête GraphQL à gauche en sélectionnant des éléments parmi les options disponibles à droite, ce qui vous guidera tout au long du processus. Vous pouvez également appuyer sur le bouton "Obtenir le schéma" pour demander à MapForce de créer automatiquement la définition du schéma JSON pour la réponse de l'API, en se basant sur l'introspection du serveur et la requête GraphQL. Vous pouvez également enregistrer une version mise en cache de ce schéma localement pour une utilisation ultérieure lorsque vous ouvrez la configuration de la transformation.

Pour cet exemple, nous utiliserons une requête pour les produits et nous spécifierons les données que nous souhaitons obtenir pour chaque nœud, en construisant la requête : l'identifiant, le titre, et les variantes, avec leur code SKU et leur prix respectifs. Nous ne traiterons pas tous les détails du fonctionnement de GraphQL dans cet article de blog, mais de nombreuses ressources en ligne sont disponibles, telles que [https://graphql.org/learn/](https://graphql.org/learn/) et [https://www.shopify.com/partners/blog/getting-started-with-graphql](https://www.shopify.com/partners/blog/getting-started-with-graphql), que vous pouvez utiliser pour en apprendre davantage.

Ensuite, MapForce insère l'appel Shopify en tant que composant graphique qui affiche la structure de la requête et de la réponse de l'API.

![Appel de l'API Shopify dans MapForce](/blog/images/shopify-api-call.png)

C'est à ce point que les choses se compliquent un peu : l'API GraphQL de Shopify est basée sur la pagination et ne renvoie qu'un nombre limité de résultats par requête (= une page de résultats). Par conséquent, nous devrons effectuer plusieurs requêtes à l'API pour récupérer tous les éléments résultant de notre requête. Nous allons procéder en encapsulant cet appel à l'API dans une fonction personnalisée que nous appelons "getProducts", que nous pourrons ensuite appeler de manière récursive si d'autres pages de résultats doivent être récupérées.

Voici ce que vous pouvez voir dans le coin inférieur droit de la représentation graphique, à l'intérieur de la fonction `getProducts` :

![Fonction MapForce](/blog/images/MapForce-function.png)

En résumé, lorsque le premier appel à l'API renvoie la valeur "vrai" pour le paramètre "hasNextPage", nous allons appeler à nouveau la même fonction de manière récursive, en définissant la variable "$after" à la position du "endCursor" renvoyée par l'appel précédent à l'API. De plus, nous allons faire une pause d'une seconde entre chaque appel à l'API afin d'éviter de dépasser les limites de débit de l'API.

Et, bien sûr, le résultat de cet appel récursif à la fonction `getProducts` est également ajouté au résultat de la fonction `getProducts` principale, de sorte que, à la fin, nous renvoyons tous les résultats à la fonction principale.

En encapsulant l'appel d'API réel dans cette fonction `getProducts`, nous obtenons également une conception très propre et élégante pour la partie principale, où nous prenons les résultats de l'appel d'API et les convertissons en un fichier CSV

![Extraire des données depuis Shopify](/blog/images/Shopify-data-mapping%201.png)

Ce projet d'exemple est fourni avec MapForce, et vous pouvez y entrer le nom de votre propre boutique Shopify ainsi que votre jeton d'accès pour le faire fonctionner. Pour cela, ouvrez l'exemple Shopify_ExportAllProducts.mfd depuis le projet d'exemples, puis double-cliquez sur la fonction "getProducts", et enfin double-cliquez sur l'objet d'appel de service web POST. C'est ici que vous devez entrer l'URL de votre boutique, ainsi que la chaîne de caractères correcte pour votre jeton d'accès Shopify.

Une fois que vous aurez fait cela, vous pourrez passer à l'onglet "Sortie" et visualiser un aperçu de la liste de tous vos produits, générée au format CSV.

![Données Shopify exportées au format CSV](/blog/images/Shopify-CSV.png)

Vous pouvez enregistrer le résultat directement, ou bien déployer ce projet de mappage sur [MapForce Server pour une automatisation performante](https://www.altova.com/fr/mapforce-server).


Les outils graphiques de MapForce permettent d'exporter facilement les données de Shopify vers des fichiers CSV, ainsi qu'au format XML, vers des bases de données, vers des fichiers Excel, et vers d'autres formats.



**Essayez-le par vous-même grâce à une [version d'essai gratuite de 30 jours de MapForce](https://www.altova.com/fr/mapforce/download).**



Pour en savoir plus sur l'intégration des données Shopify, consultez notre article sur la création d'une application mobile pour.. [collecter les informations sur les stocks et les associer à Shopify](https://www.altova.com/blog/updating-shopify-inventory-from-a-mobile-app/) en temps réel.

---

