Tout savoir sur l'importation dans PrestaShop

07/11/2023 Franck Bugnet Catégorie Tuto Vidéo

Importation dans la base de données PrestaShop

Maitriser l'importation PrestaShop, des fichiers les plus simples aux plus complexes, en 5 étapes clef. Notre tutoriel pas à pas vous explique tout dans le détails.


Les 5 étapes clé du processus d'importation dans PrestaShop

Importation csv, xls, xml avec l'admin PrestaShop


Il y a beaucoup de choses à redire concernant cet outil natif :


  • Processus trop complexe.
  • Plante au delà de quelques centaines d'éléments. Impossible de gérer les grosses bases.
  • Structure demandée non standard et trop complexe (ex : format demandé pour les attributs).
  • Ne gère que les sources locales.
  • Trop lent et instable.
  • Trop segmenté, impossible par exemple de créer en même temps les catégories et leur contenu.
  • Trop dangereux (on ne voit pas ce que l'on transfer).
  • Trop rigide (on ne peut pas faire d'imports partiels).
  • Pas de gestion des articles obsoletes, des marges, des valeurs par défaut, etc.
  • Support payant et cher.
  • .../...


Merlin offre une réponse à tous ces problèmes, en particulier sur l'importation du catalogue, sa vraie spécialité.

Import des commandes :



Merlin ne gère pas à ce jour l'importation des commandes ou des clients, car l'utilité d'une telle possibilité reste marginale et très occasionnelle (ex : migration des commandes depuis un autre CMS comme OSCommerce, on ne fait pas cela tous les jours). Vous serez donc obligé d'utiliser le back office de PS pour cette tâche. Voici succintement la démarche. Voir la doc officielle de PrestaShop pour plus de détails :

  1. Allez dans paramètres avancés.
  2. Cliquez sur "Importer".
  3. Choisir le type d'objets à traiter, entre :
  • produits
  • catégories
  • déclinaisons
  • clients
  • adresses
  • marques
  • fournisseurs
  • alias
  • coordonnées magasins
  1. Allez chercher le fichier.
  2. Aidez PrestaShop à comprendre comment lire le CSV (ce n'est pas un standard).
  3. Réglez les quelques paramètres proposées, comme la suppression préalable de l'arborescence.
  4. Cliquez sur "Etape suivante".
  5. Réalisez le mappage, c'est à dire la correspondance avec les rubriques de la base.
  6. Croisez les doigts et importez (conseil : faites une bonne sauvegarde avant).


Comment importer des fichiers CSV avec PrestaShop

Importation CSV ou Excel du catalogue vers PrestaShop, avec Merlin Backoffice : vidéo explicative.

34min

Voyez comme il est simple et rapide de réaliser un import csv ou xls avec Merlin. Dans la première partie de cette vidéo, on vous montrera les 5 grandes étapes et les grand principes, comme le mappage, la protection anti-doublons, le choix des clés de synchronisation. La second partie, facultative pour débuter, survolera rapidement les fonctionnalités avancées.


Pour maîtrisez les imports et aller plus loin, comme apprendre planifier des imports automatiques, il sera nécessaire, après cette "introduction", de suivre les autres tutoriels vidéo, également en accès libre ou le pas à pas en captures d'écran (la suite de cette page)."

resolution


Tutoriel pas à pas d'import d'un catalogue. Commençons par ouvrir le module



  1. Allez dans le tiroir "Import et script" du panneau de controle de Merlin Backoffice.
  2. Cliquez sur le gros bouton d'ouverture de l'outil.
  3. Le module d'import s'ouvre, outil qui va vous guider en 5 étapes.
  4. L'interface existe en trois versions, prise en mains pour l'apprentissage uniquement, simplifiée pour les imports simples et rapides, et complète que nous avons choisie pour ce tuto et que vous utiliserez le plus souvent.
  5. Activer la trace est une bonne idée au début, cela permet de suivre dans une fenêtre indépendante (à fond jaune).
  6. Vous avez trois onglets, le premier contient tous les réglages de la "Tâche" à effectuer, le second est un planificateur (équivalent des tâches cron sur un serveur, mais en version logiciel Windows, c'est bien plus simple d'utilisation), plus une aide (qui sera remplacé prochainement par un lien vers cet article une fois complet).
  7. Pour commencer, donnons un nom à notre scénario, intitulée "Tâche" dans ce logiciel. Elle contient l'ensemble des réglages de la page, du choix du fichier à celui du modèle de correspondance et tous les réglages.

Interface du module d'import PrestaShop Merlin Backoffice

Une tâche peut être exécutée (importée) ou planifiée pour plus tard et réutilisée à l'infini. Le planificateur permet en effet de choisir une ou plusieurs tâches préalablement définies et de leur assigner des dates et récurrences d'exécution.

Première étape, choix et paramétrage des fichiers



Le document contenant les articles doit être au format .xls ou .xlsx), soit un texte .txt ou .csv. Le xml n'est pas supporté pour le moment, mais il est assez simple de les convertir en xlsx avec la dernère version d'Excel.

Vous pouvez utiliser directement les listings fournis par les grossistes ou dropshippers ou faire un export depuis une boutique d'un autre CMS, comme Shopify. 

Conseil : si vous n'avez aucune source de données pré-remplie, il est préféréable d'utiliser Merlin de manière traditionnelle (fonctions de saisie rapide et d'édition en masse) pour remplir directement votre catalogue PS, plutôt que de tout saisir dans un tableau Excel qu'il faudra ensuite exporter vers la base. 


Première étape de l'import, paramétrage du format du fichier

  1. L'emplacement  peut être local (sur le PC ou un disque réseau) ou distant sur un serveur http ou ftp, sécurisé ou pas.
  2. Cliquez sur ce bouton pour parcourir un disque dur et saisissez un fichier local, ou bien copier coller directement son url dans le champ de saisie juste à gauche. Si il s'agit d'une url, des zones complémentaires seront rendus visibles, pour saisir les paramètres de connexion au serveur.
  3. A noter, en mode "Interface complète", la possibilité de gérer les fichiers autodatés ou d'en réaliser des copies autodatées. L'autodatage est utile pour toujours utiliser dans un dossier le fichier le plus récent lorsqu'il conserve le même nom générique.
    Dès la sélection effectuée, le logiciel vous demande si il s'agit d'une liste de produits (avec ou sans leurs catégories) ou de déclinaisons. Si votre document contient les deux, il faudra faire deux imports successifs.
  4. Les Excel multi feuilles sont supportés. Par défaut c'est la première feuille qui est importée, mais vous pouvez indiquer au programme d'en traiter une autre.
  5. Merlin intègre un mini tableur compatible avec Excel et Open Office, permettant de lire et même de modifier les .xlsx sans sortir du module. 
  6. Pour les CSV et TXT, précisez le séparateur de colonnes de votre choix.

    C'est usuellement les caractères "tab" ";" ou ",", mais vous pouvez choisir autre chose, comme par exemple trois ";;;", ce qui vous permet d'éviter la confusion entre le séparateur vertical et les ";" utilisés dans certains textes.
  7. De même, toujours pour les  .csv ou .txt, précisez quel séparateur de fin de ligne (retour chariot) utiliser.

    C'est souvent par défaut RC, LF ou CRLF. Avec d'autres sources, il faut rentrer le code sous cette forme: Caract(10) ou Caract(10)Caract(13) ou encore Caract(10) Caract(13).

    Si vous ne connaissez pas le code de retour à la ligne, vous pouvez le trouver grâce au logiciel libre Geany (à télécharger sur https://www.geany.org/Download/Releases). Ouvrez le fichier dans Geany et dans les options d'affichage, cochez "Afficher les fins de ligne".

    Important: Le séparateur décimal (écriture des chiffres à virgule) utilisé est le point (.).
    Même si Merlin arrive la plupart du temps à gérer le cas, évitez d'utiliser la virgule (,).
    Exemple: 0.01 et non pas 0,01.

    Attention, prenez garde aux textes comme les descriptions qui pourraient contenir des bouts de chaîne égaux aux séparateurs, comme des tab (utilisés dans les tableaux) des ";" ou encore des RC (retour chariot). 

  8. Une base de données PrestaShop est en principe au format UTF8 (UTF8 General CI). Si les données sont dans un autre format (comme ANSI), Merlin Backoffice doit les encoder dans les requêtes, sinon les caractères accentués, spéciaux ou non latin seraient transformés en signes illisibles.
    Si par contre la source est déjà en UTF8, il faut cocher cette case pour le signaler à Merlin afin qu'il ne réalise pas un double encodage.
  9. Chaque colonne doit avoir un titre et un titre unique.
    Si les titres ne sont pas tout en haut, vous pouvez indiquer ici leur emplacement. Les lignes situées au dessus seront ignorées.
  10. De même il est possible d'indiquer le numéro de la première ligne de data.
    Utile lorsque par exemple les colonnes ont un titre et un sous titre, pour ne pas traiter des sous titres. Ceux-ci seront interprétés comme des séparateurs et la lecture sera alors incorrecte. 
  11. Permet d'éviter de traiter une seconde fois un file téléchargé sur un répertoire de serveur, en comparant les tailles et dates.
    Si le fichier n'a pas été modifié depuis l'import précédent, il sera ignoré.
  12. Certains outils de création de CSV rajoutent des " autour des texte, ce qui perturbe la lecture.
    Vous pouvez alors les supprimer à la lecture en cochant la case "Supprimer les " entourant les textes".
    Il arive aussi que ce ne soit pas des guillemets mais un autre caractère, que vous pouvez indiquer ici.
    Une 3ieme option avancée permet aussi de traiter certains listing fournisseurs un peu spéciaux dans lesquel les caractères bordant les zones de texte ont été remplacés par un caractère de substitution dans les textes. Merlin saura lors de l'import remettre d'aplomb ces textes.
  13. Certaines rubriques pouvant contenir des listes (ex: d'images, de tags, etc), il faut aussi préciser le caractère séparant chaque élément. Par défaut il s'agit de la virgule.
  14. Si une colonne contient l'arborescence depuis l'accueil jusqu'à la catégorie mère du produit, précisez également le séparateur utilisé dans la chaîne (par exemple > pour une chaîne comme catég1>sous_catég2>sous_sous_catég3)

Nous conseillons fortement l'utilisation du format Excel xlsx, plutôt que le csv, surtout si vos sources contiennent des colonnes de texte telles que la description longue ou le résumé, car ils ne nécessitent aucun réglage. Pour convertir un csv, txt, xml ou xls en xlsx, il suffit de l'ouvrir sous Excel et de faire "sauver sous..." en choisissant le format xlsx.

Format des fichiers, rêgles à respecter :

Que ce soit PrestaShop ou la plupart des modules disponibles, un format particulier est imposé. Ce n'est pas le cas ici, la seul rêgle imposée est que chaque titre soit non vide et unique.

  • la première rangée traitée sera celle constituée des titres. 
  • Il n'est pas nécessaire que les titres soient identiques aux noms des rubriques des tables de la base. En effet, grâce à l'outil de mappage intégré, il est possible de relier chaque colonne quelque soit son nom, à une des rubriques importables de la base.
  • L'ordre des colonnes, leur nombre, n'ont aucune importance.


Si vous respectez bien la rêgle des titres non vides et uniques, vous pouvez inclure une ou plusieurs (mode multi valeurs) séries par caractéristique (contenant des identifiants ou des valeurs), une par groupe d'attribut (Ids ou valeurs), une  pour les fournisseurs, une autre pour les fabricants, une pour les tags (Ids ou valeurs), autant de suite d'images que souhaitées ou une seule ou plusieurs séries contenant les url d'images.

Les nouvelles caractéristiques et groupes d'attributs, seront automatiquement créés dans la base de données, dés l'étape 3/ de lecture et affichage du contenu. Leurs valeurs peuvent être également créées dès ce stade, ou plus tard, lors de l'import.

Choix du type de données et choix ou création d'un "modèle" de mappage :



  1. Dès le début, le logiciel vous a demandé le type de contenu. Vous pouvez encore modifier votre réponse à l'étape 2 :

Modèle de mappage des colonnes à importer

  1. C'est aussi le bon moment de choisir la langue d'import qui sera utilisée par défaut (bien que vous puissiez aussi inclure une colonne indiquant le numéro de la langue à utiliser pour chaque ligne indépendament).
  2. Cliquez sur ce bouton pour générer un nouveau modèle de mapping, ou utilisez en un déjà créé en le sélectionnant parmi ceux exitants.


Les modèles peuvent être suprimés, renommés, dupliqués et modifiés.


Une bonne habitude à prendre dès le début et d'utiliser un modèle unique par tâche. Si vous souhaitez ré-utiliser une tâche pour faire autre chose, ne cassez pas son modèle actuel mais dupliquez-la et dupliquer également son modèle, renommez les copies et ne modifiez que ces dernières.


Modèle de mapping



Il n'est pas nécessaire de renommer les titres, pour pouvoir les lire et les gérer, grâce à l'outil de mappage.
Le fonctionnement est le suivant (voir capture ci-dessus) :

  1. Le programme lit les titres et ajoute une colonne par chacun dans le modèle (table de mappage). La 1ère rangée de cette table contient donc automatiquement le titre trouvé et est non éditable. 
  2. La seconde permet de choisir, la rubrique de la base à associer (on dit "mapper").
  3. Les troisième et quatrième ne sont utilisées que pour certaines rubriques, comme les fournisseurs, les fabricants, les caractéristiques, les groupe d'attributs ou encore les rubriques libres ou custom.
    Elles permettent de préciser par exemple le nom du groupe correspondant, le type de données (identifiants ou valeurs) et de définir l'action à prendre en cas de valeurs inconnues (créer ou pas).
  4. Les deux dernières, "A utiliser lors des ajouts" et "A utiliser lors des modifications", contiennent des cases à cocher permettant de choisir quelles colonnes doivent ou pas être considérées lors de la lecture complète  et le remplissage de la table puis lors des envois.
    Seules celles cochées seront affichées à l'étape suivante.
    Ceci permet d'utiliser certaines colonnes uniquement pour créer des nouveaux articles, ou uniquement pour modifier des articles existants, ou dans les deux cas.



Il est possible de supprimer des colonnes dans le modèle, ainsi que d'en ajouter suite à une modification du fichier (bouton "Completer ce modèle..."). La mise à jour consiste à conserver le mappage de celles déjà présentes dans le modèle et à rajouter et mapper les nouvelles présentes dans le fichier. Ces nouvelles colonnes sont ajoutées au modèle existant et apparaissent tout à droite de la table.

A NE JAMAIS FAIRE : RENOMMER OU SUPPRIMER DANS LE DOCUMENT DES COLONNES QUI ONT ETE MAPPEES. LA STRUCTURE DES MODELES EST BASEE SUR LES TITRES DANS LES FICHIERS ET ILS NE FONCTIONNERONT PLUS CORRECTEMENT.



Le choix de la rubrique à "mapper" est réalisée automatiquement par Merlin Backoffice, lorsqu'il reconnaît un titre. Ce sera le cas pour toutes les colonnes créées par la fonction d'exportation de Merlin Backoffice (onglet Import/Export de la fenêtre principale). Si Le titre ne fait pas partie la liste connue par Merlin, vous devez manuellement la "mapper" en choisissant une des rubriques proposées, dans la fenêtre de mapping et recherche rapide qui s'ouvre :

Modèle de mappage des colonnes à importer

Cet outil de mapping permet d'identifier la rubrique actuellement associée (surlignée en vert), de chercher rapidement toutes les rubriques contenant tel ou tel mot, de changer l'association en cochant une case, de revenir en arrière.

Notez la présence d'un champ d'aide expliquant le rôle et le sens de chaque rubrique de la base PrestaShop, c'est idéal pour les débutants avec ce cms.

La fenêtre peut au choix de l'utilisateur rester ouverte, permettant ainsi de mapper toutes les colonnes du modèle en une seule opération.

Certaines rubriques nécessitent également de préciser le type de données lues.
Par exemple pour préciser si les cellules contiennent des identifiants (numéros Prestashop) ou des valeurs réelles.
Permet également par exemple de préciser si les cellules contenant les prix de vente des déclinaisons sont HT ou TCC et si il s'agit du prix complet ou juste de l'impact prix s'ajoutant au prix de vente du produit parent.

Les rubriques marquées d'une étoile * ne sont pas importables (n'existent pas dans la base de données ou ne sont par encore gérées par l'outil). Elles seront donc ignorées même si elles sont visibles. Par exemple la rubrique "prix à l'unité" n'existe pas dans la table "product" de Prestashop. C'est la valeur "rapport unité sur prix" qui est sauvegardée, les deux étant liées par calcul.
Autre exemple, vous ne pourrez pas enregistrer directement le taux de taxe d'un produit, mais l'identifiant de cette taxe (ps 1.3) ou du groupe de règles de taxe (ps 1.4+).

Colonnes virtuelles


Une fonctionalité avancée que vous ne trouverez nulle part ailleurs : une colonne virtuelle n'existe pas dans le document fourni, mais qui peut être ajoutée dans le modèle, mappée comme les autres, et lors de l'étape suivante remplie soit manuellement, soit par copier coller depuis un tableur, soit encore grâce à l'utilisation de MagicFormula (on parle alors de "colonne "calculée").
Leur contenu sera ensuite importé comme les autres.

Exemples d'utilisation : taux de marge calculé selon votre propre formule, quantité remplie avec des 0 ou des 1 par calcul.

Exporter pour créer un modèle type


On nous demande souvent si il existe des fichiers type. La question est logique mais n'a pas vraiment de sens ici, car tout type convient. Pour créer vous-même un modèle type, personnalisé selon vos besoin, le mieux et d’afficher quelques éléments dans la fenêtre principale, avec les propriétés de votre choix, puis de cliquer sur le bouton “Actions groupées” et choisir “Exportation”.

Choisir les réglages qui permettent de créer un xlsx prêt à la réimportation avec le même outil (ou csv mais pas xml). Vous réaliserez alors l'export dans un .xlsx contenant les rubriques que vous avez choisies, avec des titres reconnus automatiquement par l’outil, qui va les mapper automatiquement.

Quelques propriétés à ne pas oublier d'exporter selon les cas : Id produit, Id déclinaison, Id ou nom catégorie par défaut, séries de caractéristiques et d'attributs, arborescence, familles associées (ids), url de toutes les images, url simplifiée, références...

Rubriques des catégories des articles



En cas de création de nouvelles fiches, pensez bien à inclure leur catégorie par défaut.
Ce peut être l'identifiant, mais aussi le nom ou encore l'arborescence complete depuis la catégorie Accueil (sans inclure "Accueil").

Merlin Backoffice est capable de créer à la volée les familles manquantes. A la condition cependant que la fonction de base "Gestion des catégories" soit incluses dans la licence.

Vous pouvez aussi inclure une liste de catégories (numéros), dans lesquelles les produits créés  seront rendus visibles (associés) ou invible aux choix (disassociés).
Un signe moins (-) devant un identifiant permet de casser l'association à une catégorie spécifiquement.

A noter que les produits sont automatiquement rendus visibles dans leur famille par défaut.


La catégorie par défaut d'un produit ainsi que son fournisseur par défaut (notion importante avec PS 1.5, car un même produit peut avoir plusieurs fournisseurs, avec une référence fournisseur distincte pour chacun), pourront être soit celle ou celui choisi dans le bloc de valeurs par défaut, soit une valeur spécifique pour chaque ligne en incluant les colonnes adéquates.

Multi langues



Attention à la langue du contenu, pour les rubriques traduisibles. L'importation se fait dans la langue par défaut définie à l'étape 2, sauf lorsque vous incluez la colonne mappée à l'identifiant de la langue à utiliser, ce qui permet de préciser la langue individuellement.

Si la langue n'est pas indiquée pourchaque série, veuillez à utiliser un listing contenant les rubriques texte dans la langue par défaut uniquement.

Si votre tableau Excel contient par exemple la description en anglais et que la langue par défaut est l'id langue 2 (français), le script va remplacer vos traductions françaises par la version anglaise des descriptions, sauf si vous précisez d'utiliser l'id 1 dans la rubrique id langue.

Résumé, conseils pour réussir son mapping :


  • Un export avec les rubriques que vous souhaitez traiter donne un template auto-mappable.
  • Commencez par cliquer sur le bouton "Créer un nouveau modèle...".
  • Donnez lui un nom, puis remplissez le tableau de mapping.
  • Indiquez pour chaque colonne, si elle doit ou non être traitée et dans quel cas (création ou mise à jour).
  • Pour être importée, elle doit donc à la fois être mappée et cochée au moins une fois.
  • Le modèle ainsi créé est automatiquement sauvegardé quand on change d'étape, pour être réutilisé, modifié, dupliqué etc... 
  • Il est possible de créer autant de modèles que nécessaires, par exemple un par fournisseur.
  • Les modèles peuvent être supprimés, dupliqués, renommés et mis à jour.
  • Evitez de réutiliser sans le dupliquer au préalable un modèle pour un autre usage.

Etape 3 : choix des clés de synchronisation. Lecture et affichage du contenu. Indiquez les lignes à traiter



Clefs de synchro

  1. Clés de synchronisation, une notion essentielle


Une clef est la rubrique qui permet d'identifier à coup sur un élément dans la base. Cela permet à Merlin de savoir si l'item existe et doit être mis à jour ou si il n'existe pas et doit être créé de toutes pièces.

99% des échecs d'importation sont dus à un mauvais choix, ou paramétrage, ou absence de clé de synchro.


Les valeurs pour la clé choisie doivent impérativement être uniques pour tous les articles.

Vous avez le choix entre identifiants PrestaShop, référence et références fournisseur, code barres ean13 et upc.
En dernier recours (déconseillé), pour les produits, vous pouvez aussi synchroniser sur leur nom.
Pour les déclinaisons, il est aussi possible de les synchroniser directement sur les attributs.
Pour les catégories, le choix est limité à l'identifiant ou le nom (ou chemin contenant tout ou partie des parentes).

Il est en théorie recommandé de choisir les identifiants Prestashop (id_product et id_product_attribute) comme clés de synchronisation (car les identifiants sont par définition uniques). Mais c'est rarement un choix possible, car les catalogues fournis par les grossistes ne contiennent jamais vos propres identifiants Prestashop.

Donc dans la majorité des cas, vous choisirez référence ou référence fournisseur ou ean13.

Pour créer de nouvelles variantes, bien pensez à inclure une énumération contenant la clé de synchronisation des parents.
Il est en effet obligatoire de préciser à Merlin Backoffice à quel produit doit appartenir la variante à créer. Une nouvelle déclinaison sera créée dans la base, lorsque la valeur de la clé de synchronisation ne correspond à aucune existante.
Si le produit parent n'a pas pu être identifié, la combinaison crée sera "Orpheline".

Le choix de la clé de syncho des familles est également essentiel lors de la création de nouveaux articles. Si cette catégorie n'a pas pu être identifiée, le produit sera créé, mais orphelin, car attaché à aucune famille par défaut.

  1. Absence de doublons et correction


Hormis pour les identifiants, vous devrez vous assurer de l'unicité absolue des valeurs utilisées comme clé, pour tous les articles déjà existants dans la base.

Merlin vous assistera dans cette tâche : si la case "Créer les prod.../déclin... non existants" est cochée à l'étape 4, Merlin Backoffice vérifie l'unicité des clés avant de poursuivre. Si des doublons sont trouvés, il vous demandera de les corriger ou de les supprimer.

Un bouton permet de lancer manuellement la vérification d'absence de doublons et si besoin d'ouvrir la fenêtre de nettoyage.

Bien qu'il soit possible de sauter cette étape, il est fortement recommandé de ne pas poursuivre le processus tant que ce ménage n'est pas effectué (risque majeur de créer d'autres doublons, voir de modifier les mauvais articles).

Il n'est pas possible de modifier une valeur et de l'utiliser comme clé de synchronisation en même temps. Car au lieu de la modifier, le programme créerait un nouvel article avec la valeur de cette clé.

  1. Vérification préalable de l'existence des objets


"Après la lecture du fichier, indiquez si les articles existent" est conseillée. Bien qu'elle rallonge un peu le processus, elle permet d'avoir une bonne visibilité sur les items nouveaux à créer et ceux à simplement mettre à jour.

  1. Mixte de produits simples, produits déclinés et attributs


Des options expertes permettent de gérer automatiquement les catalogues combinant produits et combinaisons.
Ignorer les rangées de  déclinaisons pour ne gérer qu'une fois le produit parent.
Ignorer les rangées qui ne concernent que le produits.
Pour plus de détails et apprendre à maitriser ces fonctionnalités, voir leur bulle d'aide et nos tutos vidéos.

  1. Importation rapides des attributs, caractéristiques, fournisseurs et marques.


Le choix "En une seule fois..." permet de réaliser l'importation de ces éléments, dès l'action suivante (lecture et affichage du contenu).
L'intérêt est de pouvoir enregistrer rapidement ces infos, sans avoir besoin d'importer d'articles.

Cliquez sur le bouton "Afficher contenu". 
Si des suite d'attributs, de caractéristiques, fournisseurs ou fabricants (marques) existes et sont cochées, Merlin Backoffice va, selon les options choisies, soit créer immédiatement toutes les caractéristiques et tous les groupes d'attributs présents dans ces champs, ainsi que les nouveaux fournisseurs et fabricants, soit le faire plus tard, lors du traitement complet.

Attention: Les éléments ainsi créés, le sont dans toutes les langues, sous le même nom. Il faudra penser, plus tard à corriger éventuellement leur traductions. Ces nouveaux éléments apparaîtrons en rouge dans la table lorsqu'ils restent à créer, en vert lorsque qui sont nouvellement créés.

  1. Lecture et affichage du contenu


Les rubriques mappées et cochée sont lues et affichées, avec leur contenu.

D'autres colonnes sont obligatoires est seront affichées même si vous ne les avez pas mappées. C'est le cas de "Statut", "Id produit", "Id boutique", "Id déc.". Ne jamais les masquer lorsque Merlin a lui même décidé de les afficher.

Il existe différent formats de cellules : simple texte ou chiffres (ex : nom, prix,...), rubrique vrai / faux (virtuel /pas virtuel) , listes déroulantes de valeurs pré-définies (ex : choix de la boutique, de la rêgle de taxe, fournisseurs,...), cellules contenant l'identifiant (ou un ? quand non connu) puis un espace puis la valeur (ex : attributs, caractéristiques,...).

Vous pouvez modifier les valeurs affichées (et ensuite importées), individuellement ou avec les outils de modification de masse. Ces modifications réalisées à l'écran, ne sont pas enregistrées dans le document csv ou xls.
L'utilisation de MagicFormula et à préferrer à MagicEdit car son action peut être mémorisée et ré-appliquée automatiquement à chaque relecture du contenu.

Filtrage, sélection, masquer l'inutile...



Une fois le catalogue lu et affiché, avant de réaliser l'importation dans la base, vous devez choisir les données à traiter en sélectionnant les lignes à importer (en utilisant les touches Maj ou Crtl). Les lignes masquées ou visibles mais non sélectionnées seront ignorées.

Il est toujours conseillé de faire un test avec une ou deux éléments seulement, avant de traiter toutes les lignes. La souplesse de Merlin permet de la faire facilement, en ne sélectionnant que quelques lignes, sans devoir fabriquer un listing de test.


Il est aussi possible de masquer automatiquent articles, en mettant en place des filtres.
Pour filtrer : faire un clic droit dans la table et choisir "Filtrer sur cette colonne".
Les filtres sont mémorisés dans la base des "tâches" et peuvent être automatiquement ré-appliqués lorsque l'on change de tâche (en cochant "auto").
Cela permet aussi d'utiliser ces filtres automatiquement lors de l'exécution de tâches planifiées.

Bien qu'il soit préférable de ne pas mapper (ou ne pas cocher) les infos inutiles, il est aussi possible de les cacher ou afficher manuellement après la lecture du fichier. Pour cela, faire un clic droit et choisir "sélectionner les colonnes". Cependant cette méthode est à éviter car n'est pas mémorisée dans la tâche.

A savoir : plus le nombre de rubriques importées est grand, plus le temps de traitement sera long.
Un très grand nombre de paramètres n'ont pas besoin d'être précisés, car Merlin leur appliquera une valeur par défaut. Citons par exemple : "Disponible" à la vente (vrai par défaut), "Action en cas de rupture de stock", quantité minimale qui vaut 1,...

Pour optimiser le processus, il est donc important de cacher toutes les colonnes inutiles, pour ne conserver que celles qui contiennent de nouvelles valeurs à créer ou mettre à jour, et bien sûr les kyrielles de clés de synchronisation.


Phase 4, réglages et options



Ce module d'import inclu de nombreuses fonctionnalités avancées pour traiter tous les besoins, même complexes.
Ne prenez pas peur cependant, la plupart du temps vous ne toucherez même pas ces multiples possibilités, car les réglages par défaut conviennent à la majorité des cas.
Au début, choisissez le mode "Prise en main" ou "Simplifié", pour masquer tout ce qui est "facultatif".

Options et fonctions avancées

  1. Créer les nouveautés



Pour permettre la création de nouvelles fiches, cochez la case "Créer produits non existants".
Un produit nouveau sera créé dans la base, lorsque la valeur de la clé de synchronisation ne correspond à aucun produit existant.

En mode "Attributs", l'intitulé de cette case devient "Créer déclinaisons non existantes" et fonctionne de la même manière. 

Autoriser également la création des nouvelles branches si besoin.

  1. Déplacement


Si activé, lorsque la catégorie par défaut indiquée, soit par son numéro (Id), soit par son nom, est différente de la catégorie par défaut actuelle du produit, il sera déplacé.
A savoir, en multi-boutiques, la catégorie par défaut  est indépendante pour chaque boutique. Si vous ne précisez pas la boutique (en incluant une colonne mappée à la rubrique Id boutique), le mouvement se fera dans la boutique par défaut du produit.

Versions avant 1.6 : attention le produit restera associé (visible en boutique) à son ancienne catégorie par défaut et n'est pas automatiquement associé à sa nouvelle catégorie par défaut. Cela peut être réalisé en incluant une autre colonne contenant le numéro de la nouvelle catégorie et en la mappant à "Liste Id catégories associées".

Si vous activez ce mode en indiquant juste le nom d'une nouvelle catégorie, qui n'existe pas encore, pensez à cocher aussi l'option autorisant la création des catégories, sinon le produit sera déplacé dans la catégorie définie par défaut dans le bloc à droite (souvent l'Accueil).

Le déplacement de produits n'est réalisable qui si votre licence de Merlin permet la gestion des catégories et uniquement en mode création si inexistant.

Aucun déplacement ne sera effectué non plus si vous omettez d'inclure soit l'id, soit le nom, indiquant dans quelle catégorie déplacer le produit.

Si les deux colonnes Id et nom de catégorie sont présentes, le nom pourra être utilisé pour modifier le nom de la catégorie lors de la même opération. Dans ce cas, bien choisir comme clé de synchronisation "Identifiant des catégories".


  1. Ne pas vérifier l'unicité absolue des clés


A utiliser avec beaucoup de précaution, NON cochée par défaut.
Lorsque cette option est désactivée, toute importation commence par une vérification que chaque élément existant possède une valeur unique pour la clé de synchronisation choisie.
De plus, la rubrique correspondante à cette clé de synchronisation, sera déclarée comme clé unique dans la base. Il ne sera alors plus possible de créer de produit avec des valeurs identiques pour cette rubrique. Tout cela pour garantir que les requêtes modifieront à coup sûr le bon article.

Cependant, cette contrainte est parfois génante, car il suffit que la base contienne un doublon, et pas forcément sur les items à mettre à jour, pour que le programme soit stoppé.

Si vous activez cette option, cette vérification n'étant plus effectuée, l'envoi se fera alors même si il existe des doublons dans la base.
Mais il est dans ce cas possible qu'il existe plusieurs éléments correspondant au critère de recherche. Par exemple plusieurs fiches avec le même nom ou la même référence. Uniquement l'une d'elle sera modifiée, mais vous ne pouvez pas savoir à l'avance laquelle (la premiere trouvée par la requête SQL, en principe celle ayant l'id le plus petit mais pas forcément).

C'est donc une source d'erreur potentielle importante. Il est donc de votre responsabilité de vérifier que les éléments à mettre à jour ont bien une valeur de clé uniquede l'utiliser.

  1. Forcer les identifiants


Laissez blanche cette case afin que les identifiants Prestashop (numéros) soient automatiquement générés par PrestaShop (par incrémentation du dernier id créé). 
C'est la méthode par défaut et celle qui est largement recommandée pour éviter des erreurs d'intégrité (même valeur d'id sur deux éléments distincts), et surtout pour éviter de remplacer par erreur un objet existant.

Si vous cochez cette case et si la colonne des identifiants contient une valeur positive, le programme essaiera d'assigner cette valeur comme identifiant à l'objet créé.
Si la cellule contient 0, ou une valeur négative ou est vide, c'est le mode normal d'auto incrément qui sera utilisé.
Si il existe déjà un article sous cet identifiant, et que la clé de synchro est l'identifiant, les données de l'article existant (nom, description, tarifs...) seront remplacées par celles importées.

Il y a donc un très gros risque de commettre des erreurs. Si vous débutez avec les exports / imports, il est vraiment recommandé de ne pas l'activer.

  1. Remplacer caractéristiques actuelles


N'est affichée que si PrestaShop est au moins en version 1.7 ou avec les versions plus anciennes lorsque vous utilisez un module comme "Multiple Features" de notre confrère Presta-Module.
Il en existe trois équivalents sur Presta Addons, tous trois supportés.
Ce type de module change le comportement de Prestashop 1.2 à 1.6 en autorisant à ce qu'un produit ai plusieurs valeurs différentes pour une même caractéristiques (comportement par défaut avec PS 1.7).

Par défaut n'est pas cochée : Merlin Backoffice permettra alors de sauver ces différentes valeurs et de les ajouter aux valeurs déjà existantes. Cependant si une valeur identique existe déjà elle ne sera pas ajoutée une seconde fois au produit (protection contre les doublons).

Si vous cochez cette option et que vous avez une seule colonne par caractéristique, le logiciel fonctionnera comme si la fonctionnalité "Multiples valeurs" n'était pas activé. Merlin Backoffice commencera alors par supprimer (pas de retour en arrière possible) toutes les valeurs déjà assignées au produit pour chaque instance de caractéristiques, avant d'importer la nouvelle valeur. Au final, le produit n'aura qu'une seule valeur pour cette caractéristique. Ceci même si le fichier contient plusieurs fois le même produit (c'est la valeur de la dernière occurence qui sera conservée).

A noter également que si vous avez plusieurs séries d'un même groupe, votre choix sera sans effet, coché ou pas. Autant de valeurs que de colonnes seront ajoutées (pas de doublon d'une même valeur cependant).

Note : cela ne supprime pas les valeurs des autres groupes, lorsqu'ils ne sont pas présents.

  1. Ajouter les images


  • Cochez pour autoriser leur téléchargement.
  • Conservez cochée "Que vers les nouveaux articles" qui permet de ne n'envoyer les images que vers les nouveaux articles et donc d'éviter des doublons chez les anciens.
  • La seconde options permet lors de la première phase (création des produits parents), d'ignorer les images présentes dans leur  variations, lorsque vous savez que vous allez les traiter lors de la second phase (création des combinaisons).
  • Vous pouvez également demander la suppression préalables de toutes les photos actuelles des éélments mis à jour.
  • Les boutons de "Réglages", donnent accés à tous les réglages concernant le transfert des images, gestion des accès ftp ou http protégés, protection anti doublons, légendes automatiques (balise alt).

  1. Valeurs de subsitution par défaut


Cet ensemble permettent à Merlin de prendre une décision lorsque l'information nécesssaire n'est pas fournie par le fichier ou pas affichée dans la table. Saisissez par exemple le numéro de la catégorie de destination ou le fournisseur par défaut. 

Par exemple si la catégorie par défaut n'est pas précisée dans la table, les nouveaux produits seront créés dans la catégorie définie dans le champ "Id catégorie par défaut" ce cet onglet. 

De même si aucune quantité n'est précisée dans la table, il seront créé dans la quantité saisie dans cet onglet.

Si aucun nom n'est précisé dans la table, Merlin Backoffice en créera un générique automatiquement, à partir du contenu de ces champs.
Elles permettent par exemple de construire les noms à partir d'un préfixe commun, suivi du numéro du produit ou de la valeur d'un compteur en auto-incrément.

Enfin, il est possible de demander au programme d'activer par défaut les nouvelles créations.

  1. Calcul du prix de vente HT à partir du TTC (calcul et retrait de la TVA) 


Si aucune règle de taxe n'est précisée dans la table, les articles seront créés en utilisant la rêgle de taxe pré-sélectionnée ici.
Le prix HT, si il doit être calculé à partir d'un prix fourni en TTC, le sera en utilisant la taxe du pays et état définis ici.

  1. Calcul du prix de vente à partir coût d'achat (gestion des marges)


5 modes possibles :
  • Ne rien faire (pas d'impact sur le prix de vente). Le taux de marge peut changer.
  • Commencer par calculer le taux de marge actuel entre le coût d'achat actuel et le prix de vente actuel du produit puis, après avoir modifié le prix d'achat avec la valeur importée, recalcule un nouveau prix de vente HT pour conserver le même taux de marge.
  • Conserver en plus les taux de marge actuels des déclinaisons existantes des produits importés.
  • Définir un nouveau taux de marge pour le produit, puis de laisser le logiciel calculer automatiquement le prix de vente HT pour atteindre cet objectif.
  • Appliquer en plus ce même nouveau taux de marges à toutes les variantes existantes du produit.

Pour les combinaisons importées : même choix, mais modifiant ou non les impacts prix et les taux de marge propres à chacune d'entre elles.


  1. Taux de marge différents par tranches de prix d'achat.


Ce tableau vous permet d'appliquer un taux de marge différent par tranche de tarif.

Ex : appliquer 5 % de marge quand le coût d'achat est entre 0 et 10€ exclu, puis 10% si il est supérieur ou égal à 10 et inférieur à 50 et enfin 13% à partir de 50% (dernière tranche non activée sur la capture).
 
  1. Obsolescence  des articles non disponible chez le fournisseur


Il est possible de demander au programme de modifier automatiquement tous les articles présents dans la base PrestaShop, du même fournisseur par défaut que celui choisi à l'étape 4 (essentiel), et qui ne sont pas ou plus présents dans le catalogue ou du moins dans les lignes qui ont été importées.

4 actions sont possibles, combinables entre elles :

  • Désactiver les articles obsoletes.
  • Les rendre non commandables (et masquer les quantités en stock).
  • Masquer leur tarif de vente.
  • Mettre leur stock à zéro.

A l'inverse, en cochant "Au contraire...", vous demandez à Merlin, lorsque ces mêmes fiches ré-apparaissent dans le listing du même fournisseur, de les réactiver, de les remettre en vente, d'afficher leur prix de vente à nouveau et enfin de ré-importer leur quantité si cette donnée est fournie.

Bien lire les précautions d'usage dans la bulle d'aide, car en cas de mauvaises manipulation avec ces options avancées, il est possible de désactiver par accident tous les articles de la boutique.

Exécution immédiate ou planification.



Exécution de l'importation

    1. Vous pouvez à présent lancer l'envoi en cliquant sur le bouton "Importer les lignes...".
      Le programme mettra à jour les items déjà existants et créera ceux qui ne le sont pas (si la création est autorisée).
    2. Cochez pour rafraîchir automatiquement l'affichage de la fenêtre principale après chaque importation. Pour gagner du temps, il est conseillé de laisser décocher.
    3. Cocher cette case pour que Merlin demande à PrestaShop d'exécuter les hooks de création et de mise à jour sur les objets créés ou modifiés.

      Les hooks sont des scripts permettant d'éxécuter des actions prédéfinies, comme mettre à jour le cache, synchroniser une base externe... voir la documentation de PS pour plus d'information.
      ATTENTION : cela peut fortement ralentir la procédure. Nous vous conseillons de ne pas cocher cette l'exécution des hooks ici et d'éxécuter plutôt les hooks lors de la fermeture de l'application.
    4. "Puis ré-indexer la recherche de PS" permet de lancer la reconstruction partielle de l'index du moteur de recherche de Prestashop.

      Vous pouvez également effectuer cette action manuellement plus tard depuis le panneau de contrôle latéral de la fenêtre principale.
      ATTENTION : cela peut aussi très nettement ralentir l'application, voir même la bloquer si le script PS de ré-indexation plante. On vous conseille plutôt de lancer la reconstruction de l'index avant la fermeture de Merlin ou depuis le back office.
    5. Le curseur "Facteur d'accélération" permet de jouer sur la vitesse de l'ensemble du processus de transfer des données, en regroupant plus ou moins de cellules par requête.

      Réglé à 100% (valeur par défaut), Merlin envoie 32ko de données, soit environ 3 à 5 items par requête (très variable en fonction du nombre et du contenu des colonnes), puis attend la réponse du serveur. Cela permet d'éviter tout risque de time out ou de saturation coté serveur, même sur un mutualisé d'entrée de gamme.
      Avec un facteur de 1000%, le programme va compiler les requêtes SQL de dix fois plus grosses, jusqu'à atteindre le plafond de 320ko. Cela n'ira pas 10x plus vite, mais diminuera le nombre d'échanges http (dans lesquelles sont contenues les requêtes MySQL encryptées et la réponse du serveur) et permettra un gain de temps de l'ordre de 2 ou 3.
      Le maximum permis est de 10 000%.
      Seule l'experience et des tests vous permettrons de déterminer quel facteur maximum convient à votre serveur pour en tirer le meilleur sans le saturer.
    6. A contrario le champ "pause entre 2 requêtes SQL" permet de ralentir le module en insérant un délai d'attente (en centièmes de seconde) entre chaque requête envoyée vers le serveur.

      Ce réglage a été ajouté spécifiquement pour les clients d'OVH, sur serveur mutualisé. Ce type d'hébergement est en effet limité par OVH à un nombre maximum de requêtes par unité de temps. Quand ce nombre maxi est dépassé, OVH ralenti volontairement l'utilsateur, voir bloque la connexion pendant 10 minutes (avec une erreur 500).
      C'est une pratique que nous dénonçons depuis des années mais qui malheureusement perdure chez cet hébergeur au dépend de ses clients.
      Si vous en êtes victime, une valeur de 30 centièmes de seconde devrait vous permettre de travailler, en perdant en fluidité.
    7. Il est aussi possible de demander au programme de travailler en plusieurs passes, afin de traiter les très gros listing (plus de 8000 items), qui peuvent saturer la mémoire du PC.

      L'expérience montre cependant qu'il ne faut utiliser cette option que si vous avez concrêtement observé des blocages de l'application ou de Windows.
      Nombreux sont ceux en effet qui importent avec succès des grilles de 40 000 éléments en une seule passe sans soucis.
      Le record absolu étant à ce jour de 360 000 lignes en une seule passe, sur un serveur dédié, à la vitesse de 0.04 sec/l !

      Après traitement, le programme lance une vérification succincte, en comparant les dates de mises à jour des articles.

      Attention, il ne s'agit pas d'une vérification complète de chaque champ, mais uniquement d'une vérification que les articles ont bien été soit créés, soit modifiés.

      Le résultat est indiqué dans la 1ère colonne ("Statut").

      Il est ensuite possible de trier le tableau selon les valeurs de cette colonne (clic droit), pour corriger par exemple les échecs et les renvoyer.

    8. Vous pouvez aussi cliquer sur le bouton "Planifier l'importation de cette tâche..." maintenant ou après avoir réalisé l'import.


Il est recommandé de ne planifier une tâche qu'après avoir vérifié avec au moins une lancement manuel, que tout le paramétrage est correct et le résultat celui attendu.


Lancement du transfer des images automatique ou manuel



      Si demandé, Merlin procède ensuite en tâche de fond au lancement du téléchargement des images.


      Si vous avez oublié de cocher l'ajout des photos, il est encore possible de le réaliser manuellement, en suivant la procédure ci dessous:


      1. Sauvez le tableau de données après traitement.
      2. Allez dans l'interface principale.
      3. Ouvrez la fenêtre de paramétrage du téléchargement d'images (bouton aimant).
      4. Allez dans l'onglet "Sources.." et cochez "Le fichier contient déjà les colonnes d'Id..."
      5. Cliquez sur le bouton permettant de lire un Excel contenant des chemins ou URL d'images, dans l'onglet "Images" (bouton vert avec une grille blanche).
      6. Cliquez sur le bouton permettant d'optimiser la table (bouton représentant une horloge). -
      7. Vérifiez le contenu, en particulier les colonnes d'assignation aux boutiques avec PS 1.5
      8. Lancez l'upload des photos. Elles sont alors téléchargées via http ou ftp (à configurer avant), assignées aux objets, les vignettes sont créées.

A savoir, le téléchargement des photos se faisant en multi threads pour vous rendre la main et permettre de continuer votre gestion du catalogue, vous ne vous en apercevrez pas forcément. Il faut donc penser avant de fermer l'application, attendre que ces téléversements soient terminés.


Evénements récurrents ou tâches planifiées automatiques (équivalent des tâches cron, mais en mode client lourd Windows)



      Cette fonctionnalité permet d'automatiser entièrement les mises à jour régulières de votre base à partir de mises à jour fournies régulièrement par les fournisseurs. C'est l'équivalent des tâches cron bien connues, mais en beaucoup plus simple à mettre en place, car ne nécessite aucun module de tâche cron et aucune connaissance en programmation de ce type d'actions automatiques.


      Une tâche planifiée est appelée un "événement". Un événement est donc composé d'une "tâche", avec le lien vers le document et son modèle, tous ses réglages et de divers paramètres supplémentaires comme la date du prochain traitement et la récurrence des suivants (périodicité).


      Pour cela :

      1. Sélectionnez une tâche. 
      2. Puis cliquez sur le bouton "Planifier l'importation de cette tâche..." du 1er onglet de cette fenêtre, ou le bouton "Nouvel événement" du second onglet.
      3. Dans ce second onglet ("Planifier les événements"), un nouvelle ligne a alors été ajoutée dans le tableau appelée planificateur.
      4. Pour chaque événement, il est possible de définir la fréquence (ou "Récurrence") des exécutions, comme journalière, hebdomadaire, mensuelle, intervalle de temps, etc
      5. Le gros bouton "Démarrer l'exécution de tous les événements actifs" lance un processus en tâche de fond, qui va toutes les x min (intervalle de votre choix), parcourir le planning de bas en haut et lancer tout événement planifié dont l'heure d’exécution est atteinte ou dépassée.
      6. Seules les événements cochées "Actif" sont traitées.
      7. Il est possible en cochant ici, de sauvegarder pour chaque événement, l'historique et de consulter plus tard ces rapports.
      8. Vous pouvez également cocher "Lancer automatiquement au démarrage" pour que le robot s’exécute tout seul à chaque lancement de Merlin Backoffice.



Importation récurrentes planifiées

Attention, ne fermez pas Merlin Backoffice, car cela arrête aussi le planificateur. Désactivez également la mise en veille.


      Gardez bien à l'esprit que le planificateur importe des "tâches". Si vous modifiez une tâche après l'avoir planifiée, vos modifications seront prises en compte dès le prochain import automatique exécuté par le planificateur.


      De même, si vous supprimez une tâche, les événements utilisant cette tâche sont également supprimées dans le planificateur.


      Pour information, Merlin peut être lancé via une ligne de commande ou une tâche planifiée Windows, en passant en paramètre le nom de la connexion (le choix du site). Combiné avec le planificateur configuré en mode lancement automatique, il est possible d'automatiser complétement la synchro des bases de données à partir d'un Merlin installé par exemple sur un serveur Windows.


Création rapide de fiches par glisser-déposer de photos


      Le saviez vous ? Il est aussi possible de très rapidement créer des nouveaux produits, à partir d'un ensemble d'images présentes sur votre ordinateur.


      Les produits créés seront alors nommés avec soit un nom générique indexé, soit avec le nom des images.


      Cela est très pratique pour les photographes par exemple, pour qui une photo est un produit. Pour cela, rien de plus simple:


      1. Faites un clic droit dans les titres de la table et faites afficher la colonne "Liste de chemins ou d'URLs d'images" (et toute autre rubrique souhaitée, comme la légende, le choix "photo de couverture", ...)
      2. Ouvrez votre explorer Windows, sélectionnez vos images et glissez les directement dans la table de l'étape 3. Un tâche par image est alors ajoutée, qu'il suffit de processer pour créer un produit dans la catégorie par défaut (ou autre en incluant la donnée "catégorie par défaut") et recevant comme nom celui défini dans les réglages.
      3. Activez l'ajout des photos et exécutez le traitement.


Besoin d'aide complémentaire ?



      Cliquez sur le bouton Sitolog QuickSupport présent dans Merlin et appelez-nous.

    Cela nous permettra de partager votre écran et d'interagir et donc de vous expliquer comment réaliser l'opération qui vous pose soucis ou de vérifier vos réglages. Notre support est gratuit.

Articles de la catégorie

Réglages
  • Identification
    • £ GBP
    • $ USD
Menu