{"id":922,"date":"2023-06-07T11:48:23","date_gmt":"2023-06-07T08:48:23","guid":{"rendered":"https:\/\/presta.site\/blog\/?p=922"},"modified":"2026-07-23T20:10:56","modified_gmt":"2026-07-23T17:10:56","slug":"guide-rapide-pour-importer-et-exporter-des-donnees-dans-prestashop","status":"publish","type":"post","link":"https:\/\/presta.site\/blog\/fr\/guide-rapide-pour-importer-et-exporter-des-donnees-dans-prestashop\/","title":{"rendered":"Import CSV PrestaShop : guide facile pour produits et clients"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">L&#8217;<strong>import CSV PrestaShop<\/strong> est l&#8217;outil du Back Office pour charger en masse les donn\u00e9es du catalogue et des clients &#8211; grilles tarifaires fournisseurs, nouvelle arborescence de cat\u00e9gories ou produits copi\u00e9s depuis une autre boutique. Ce guide couvre la pr\u00e9paration des fichiers, l&#8217;assistant Import des Advanced Parameters, les options qui comptent et les erreurs qui font le plus souvent \u00e9chouer une importation.<\/p>\n\n\n<!--more-->\n\n\n<p class=\"wp-block-paragraph\">Besoin de <em>t\u00e9l\u00e9charger<\/em> des donn\u00e9es depuis les listes ? C&#8217;est un autre flux de travail (il n&#8217;existe pas de bouton unique \u00ab Tout exporter \u00bb). Consultez <a href=\"https:\/\/presta.site\/blog\/fr\/export-csv-prestashop\/\">comment exporter des donn\u00e9es CSV depuis PrestaShop<\/a> pour le chemin via les listes et le menu engrenage. Ici, on reste sur l&#8217;import.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Ce que vous pouvez importer<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Sous <strong>Advanced Parameters \u2192 Import<\/strong>, vous pouvez charger <strong>les cat\u00e9gories, produits, d\u00e9clinaisons, clients, adresses, marques, fournisseurs, alias et contacts de magasin<\/strong>. Avec la gestion avanc\u00e9e des stocks activ\u00e9e, vous pouvez aussi voir les commandes fournisseur et leurs d\u00e9tails. Les alias sont des synonymes de recherche (Shop Parameters \u2192 Search). Les contacts de magasin se trouvent sous Shop Parameters \u2192 Contacts \u2192 Stores.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Importez <strong>un type d&#8217;entit\u00e9 par fichier<\/strong>, et une langue \u00e0 la fois. Si vous avez besoin de noms en fran\u00e7ais et en anglais, pr\u00e9parez deux fichiers (ou deux passes) et d\u00e9finissez la langue sur le formulaire pour chacun.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Ordre d&#8217;import recommand\u00e9<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Les d\u00e9pendances comptent. Voici une s\u00e9quence pratique :<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Cat\u00e9gories<\/strong> (et marques\/fournisseurs si les produits y feront r\u00e9f\u00e9rence)<\/li>\n<li><strong>Produits<\/strong><\/li>\n<li><strong>D\u00e9clinaisons<\/strong> (une fois les produits parents cr\u00e9\u00e9s)<\/li>\n<li><strong>Clients<\/strong>, puis <strong>adresses<\/strong><\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">Les lignes produit pointent en g\u00e9n\u00e9ral vers des ID de cat\u00e9gorie qui doivent d\u00e9j\u00e0 exister. Les lignes d\u00e9clinaison ont besoin d&#8217;une r\u00e9f\u00e9rence ou d&#8217;un ID produit valide. Les adresses ont besoin de clients.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Pr\u00e9parer les fichiers pour l&#8217;import CSV PrestaShop<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u00c0 partir de PrestaShop 1.7 (y compris 8 et 9), l&#8217;importeur accepte <strong>.csv, .xls, .xlsx, .xlst, .ods et .ots<\/strong>. Les anciennes boutiques 1.6 n&#8217;acceptaient que le CSV. Le CSV reste le choix le plus s\u00fbr : facile \u00e0 modifier dans Excel ou Google Sheets, et facile \u00e0 r\u00e9enregistrer en UTF-8 quand les accents se cassent. La documentation officielle traite toujours le CSV comme le format de r\u00e9f\u00e9rence, m\u00eame lorsque les tableurs sont autoris\u00e9s.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">PrestaShop recommande le <strong>point-virgule (;)<\/strong> comme s\u00e9parateur de champs. Si les descriptions contiennent d\u00e9j\u00e0 des points-virgules, choisissez un autre s\u00e9parateur dans le formulaire et utilisez ce m\u00eame caract\u00e8re dans le fichier. Les champs \u00e0 valeurs multiples (par exemple plusieurs ID de cat\u00e9gorie) utilisent un <strong>s\u00e9parateur de valeurs multiples<\/strong> distinct &#8211; la virgule par d\u00e9faut.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Encodage<\/strong> &#8211; privil\u00e9giez UTF-8 ; sinon ISO-8859-1.<\/li>\n<li><strong>Premi\u00e8re ligne<\/strong> &#8211; les libell\u00e9s de colonnes conviennent ; vous ignorerez cette ligne \u00e0 l&#8217;\u00e9cran de correspondance.<\/li>\n<li><strong>Prix<\/strong> &#8211; utilisez la devise par d\u00e9faut de la boutique.<\/li>\n<li><strong>URL d&#8217;images<\/strong> &#8211; liens absolus que le serveur peut r\u00e9cup\u00e9rer (pas de chemins relatifs).<\/li>\n<li><strong>Dates<\/strong> &#8211; format ISO, par ex. <code class=\"codecolorer text default\"><span class=\"text\">2013-06-21 15:07:27<\/span><\/code>.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1275\" height=\"369\" src=\"https:\/\/presta.site\/blog\/wp-content\/uploads\/2023\/06\/Screenshot_2-3.png\" alt=\"Import CSV PrestaShop - champs disponibles sur la page Import des Advanced Parameters\" class=\"wp-image-770\" srcset=\"https:\/\/presta.site\/blog\/wp-content\/uploads\/2023\/06\/Screenshot_2-3.png 1275w, https:\/\/presta.site\/blog\/wp-content\/uploads\/2023\/06\/Screenshot_2-3-300x87.png 300w, https:\/\/presta.site\/blog\/wp-content\/uploads\/2023\/06\/Screenshot_2-3-1024x296.png 1024w, https:\/\/presta.site\/blog\/wp-content\/uploads\/2023\/06\/Screenshot_2-3-768x222.png 768w\" sizes=\"auto, (max-width: 1275px) 100vw, 1275px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Choisissez le type de donn\u00e9es sur la page d&#8217;import et consultez <strong>Available fields<\/strong> \u00e0 droite. T\u00e9l\u00e9chargez un exemple correspondant via <strong>Download sample csv files<\/strong> (aussi sous <code class=\"codecolorer text default\"><span class=\"text\">\/docs\/csv_import\/<\/span><\/code> sur le serveur). Une autre approche solide : <a href=\"https:\/\/presta.site\/blog\/fr\/export-csv-prestashop\/\">exporter un petit jeu de donn\u00e9es en production<\/a>, le modifier, puis r\u00e9importer &#8211; mais attendez-vous \u00e0 remapper les colonnes ; les exports de listes ne sont pas toujours pr\u00eats \u00e0 l&#8217;import tels quels.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Comment lancer un import CSV PrestaShop<\/h2>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Ouvrez <strong>Advanced Parameters \u2192 Import<\/strong>.<\/li>\n<li>Choisissez ce que vous voulez importer.<\/li>\n<li>Ajoutez le fichier : t\u00e9l\u00e9versement dans le navigateur, ou d\u00e9posez-le via FTP dans le dossier admin <code class=\"codecolorer text default\"><span class=\"text\">import\/<\/span><\/code> et utilisez <strong>Choose from history \/ FTP<\/strong>.<\/li>\n<li>D\u00e9finissez la langue, le s\u00e9parateur de champs et le s\u00e9parateur de valeurs multiples.<\/li>\n<li>Relisez les bascules dangereuses et utiles (ci-dessous), puis cliquez sur <strong>Next step<\/strong>.<\/li>\n<li>Faites correspondre chaque colonne du fichier \u00e0 un champ PrestaShop. Mettez <strong>Rows to skip<\/strong> \u00e0 <code class=\"codecolorer text default\"><span class=\"text\">1<\/span><\/code> si la ligne 1 contient les en-t\u00eates. Enregistrez la configuration de correspondance si vous r\u00e9utiliserez cette mise en page.<\/li>\n<li>Cliquez sur <strong>Import<\/strong> et attendez la fen\u00eatre de progression. Lisez chaque ligne d&#8217;erreur avant de relancer un catalogue complet.<\/li>\n<\/ol>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1359\" height=\"571\" src=\"https:\/\/presta.site\/blog\/wp-content\/uploads\/2023\/06\/Screenshot_3-3.png\" alt=\"\u00c9cran de correspondance des colonnes d'import CSV PrestaShop avant de lancer l'import\" class=\"wp-image-772\" srcset=\"https:\/\/presta.site\/blog\/wp-content\/uploads\/2023\/06\/Screenshot_3-3.png 1359w, https:\/\/presta.site\/blog\/wp-content\/uploads\/2023\/06\/Screenshot_3-3-300x126.png 300w, https:\/\/presta.site\/blog\/wp-content\/uploads\/2023\/06\/Screenshot_3-3-1024x430.png 1024w, https:\/\/presta.site\/blog\/wp-content\/uploads\/2023\/06\/Screenshot_3-3-768x323.png 768w\" sizes=\"auto, (max-width: 1359px) 100vw, 1359px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Options d&#8217;import \u00e0 bien comprendre<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Delete all \u2026 before import<\/strong> &#8211; efface d&#8217;abord les entr\u00e9es existantes de ce type. Utile pour une reconstruction propre ; catastrophique sur un catalogue en production si vous vouliez seulement \u00ab mettre \u00e0 jour \u00bb.<\/li>\n<li><strong>Use product reference as key<\/strong> &#8211; import produit : faire correspondre\/mettre \u00e0 jour par r\u00e9f\u00e9rence au lieu de laisser PrestaShop attribuer des ID. Chaque ligne doit avoir une r\u00e9f\u00e9rence.<\/li>\n<li><strong>Skip thumbnails regeneration<\/strong> &#8211; produits\/cat\u00e9gories : ne pas r\u00e9g\u00e9n\u00e9rer les tailles d&#8217;image depuis les colonnes Image URL (plus rapide ; \u00e0 utiliser quand les images sont d\u00e9j\u00e0 sur la boutique).<\/li>\n<li><strong>Force all ID numbers<\/strong> &#8211; conserver les ID du fichier plut\u00f4t que l&#8217;auto-incr\u00e9ment. Important quand d&#8217;autres syst\u00e8mes pointent d\u00e9j\u00e0 vers ces ID.<\/li>\n<li><strong>Send notification email<\/strong> &#8211; pratique pour les gros fichiers afin de ne pas rester devant la barre de progression.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Pour le d\u00e9tail des champs et les exemples, consultez la <a href=\"https:\/\/docs.prestashop-project.org\/v.9-documentation\/user-guide\/configuring-shop\/advanced-parameters\/import\" target=\"_blank\" rel=\"noopener noreferrer\">documentation officielle PrestaShop sur l&#8217;import<\/a> (version majeure actuelle).<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Probl\u00e8mes courants lors de l&#8217;import CSV PrestaShop<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Mauvais s\u00e9parateur<\/strong> &#8211; Excel dans certaines locales enregistre des virgules alors que le formulaire attend des points-virgules (ou l&#8217;inverse). Ouvrez le fichier dans un \u00e9diteur de texte et v\u00e9rifiez la premi\u00e8re ligne.<\/li>\n<li><strong>Encodage \/ accents<\/strong> &#8211; le mojibake signifie en g\u00e9n\u00e9ral du Latin-1 t\u00e9l\u00e9vers\u00e9 dans une boutique UTF-8 (ou l&#8217;inverse).<\/li>\n<li><strong>R\u00e9f\u00e9rences ou e-mails en double<\/strong> &#8211; les r\u00e9f\u00e9rences produit et les e-mails clients doivent \u00eatre uniques ; les conflits provoquent des ignor\u00e9s ou des erreurs.<\/li>\n<li><strong>Parents manquants<\/strong> &#8211; d\u00e9clinaisons sans produits, adresses sans clients, produits pointant vers des ID de cat\u00e9gorie inexistants.<\/li>\n<li><strong>Fichiers \u00e9normes qui expirent<\/strong> &#8211; d\u00e9coupez en lots de quelques centaines de lignes, ou augmentez <code class=\"codecolorer text default\"><span class=\"text\">max_execution_time<\/span><\/code> PHP et les limites de t\u00e9l\u00e9versement chez votre h\u00e9bergeur.<\/li>\n<li><strong>\u00c9chec de r\u00e9cup\u00e9ration des URL d&#8217;images<\/strong> &#8211; les colonnes d&#8217;images distantes \u00e9chouent si l&#8217;URL renvoie une 404, est bloqu\u00e9e ou si le serveur ne peut pas faire de requ\u00eates HTTP(S) sortantes.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Si un import laisse le Back Office sur une page blanche, traitez-le comme tout autre plantage : v\u00e9rifiez les logs et les limites PHP. Notre <a href=\"https:\/\/presta.site\/blog\/fr\/ecran-blanc-de-la-mort-dans-prestashop-un-guide-etape-par-etape\/\">guide sur l&#8217;\u00e9cran blanc de la mort<\/a> couvre le chemin de d\u00e9bogage habituel. <a href=\"https:\/\/presta.site\/blog\/fr\/comment-creer-une-sauvegarde-dans-prestashop\/\">Sauvegardez toujours la boutique<\/a> avant un import catalogue complet &#8211; le CSV seul n&#8217;est pas un plan de restauration. Quand l&#8217;import s&#8217;inscrit dans un changement de version, associez-le \u00e0 <a href=\"https:\/\/presta.site\/blog\/fr\/un-guide-simple-pour-mettre-a-jour-votre-boutique-prestashop-en-toute-securite\/\">une mise \u00e0 jour prudente<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Conseils pratiques avant de cliquer sur Import<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Testez avec 5 \u00e0 10 lignes que vous pouvez v\u00e9rifier en vitrine.<\/li>\n<li>Privil\u00e9giez la mise \u00e0 jour par r\u00e9f\u00e9rence (ou par ID) pour corriger des produits existants ; une passe de cr\u00e9ation aveugle sur un catalogue en production cr\u00e9e des doublons.<\/li>\n<li>Les fichiers clients contiennent des donn\u00e9es personnelles &#8211; traitez-les comme tout autre export\/import sensible au GDPR.<\/li>\n<li>Pour des t\u00e2ches r\u00e9currentes ou tr\u00e8s volumineuses, un module d&#8217;import d\u00e9di\u00e9 peut aider &#8211; mais apprenez d&#8217;abord le flux natif d&#8217;import CSV PrestaShop pour savoir \u00e0 quoi doit ressembler le fichier.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Bien men\u00e9, l&#8217;import CSV PrestaShop fait gagner des heures d&#8217;\u00e9dition manuelle du catalogue. Mal g\u00e9r\u00e9, il \u00e9crase des prix ou cr\u00e9e des SKU en double en un clic &#8211; pr\u00e9parez donc le fichier, mappez les colonnes avec soin et gardez cette sauvegarde \u00e0 port\u00e9e de main.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Import CSV PrestaShop via Advanced Parameters : pr\u00e9paration des fichiers, ordre d&#8217;import, correspondance des colonnes et options comme delete-all et reference-as-key &#8211; plus un lien vers l&#8217;export CSV.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[87],"tags":[],"class_list":["post-922","post","type-post","status-publish","format-standard","hentry","category-developpement"],"_links":{"self":[{"href":"https:\/\/presta.site\/blog\/wp-json\/wp\/v2\/posts\/922","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/presta.site\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/presta.site\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/presta.site\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/presta.site\/blog\/wp-json\/wp\/v2\/comments?post=922"}],"version-history":[{"count":4,"href":"https:\/\/presta.site\/blog\/wp-json\/wp\/v2\/posts\/922\/revisions"}],"predecessor-version":[{"id":1954,"href":"https:\/\/presta.site\/blog\/wp-json\/wp\/v2\/posts\/922\/revisions\/1954"}],"wp:attachment":[{"href":"https:\/\/presta.site\/blog\/wp-json\/wp\/v2\/media?parent=922"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/presta.site\/blog\/wp-json\/wp\/v2\/categories?post=922"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/presta.site\/blog\/wp-json\/wp\/v2\/tags?post=922"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}