Connecteur PrestaShop
Mise en oeuvre de la synchronisation entre Open-Prod et PrestaShop.
Présentation et objectif
Le connecteur PrestaShop a pour but de permettre la synchronisation d'un site e-commerce PrestaShop avec l'ERP Open-Prod.
Il s'appuie sur plusieurs briques fonctionnelles :
- Le module myfab File Interface (MFI) : le module permet coté Open-Prod de paramétrer et planifier des exports / imports de données dans Open-Prod,
- Le module EDI Open-Prod : le module EDI Open-Prod est équivalent à MFI mais fonctionne sous forme de requêtes SQL,
- Un connecteur PrestaShop de notre partenaire DMConcept packagé et pré-paramétré pour Open-Prod.
Ce connecteur permet les liens suivants :
- Client PrestaShop vers Open-Prod,
- Commande PrestaShop vers Open-Prod,
- Article Open-Prod vers PrestaShop (+ tarif simple, + stock global),
- Etat commande Open-Prod vers PrestaShop (créée, préparée, expédiée, facturée),
- Remontée facture en format PDF vers PrestaShop.
L'ensemble de ces flux transite via MFI (myfab File Interface) coté Open-Prod.
Configuration PrestaShop
Configuration du module dans PrestaShop sur base des ressources fournies par DM Concept.
Installation Module d'Import des Produits
Ce module va permettre de la remontée des informations des Produits d'Open-Prod vers PrestaShop.
Les archives de module PrestaShop mentionnées dans cette documentation sont fournies par la société partenaire DM Concept.
1. Créer le module d'import
Les champs de la fiche Produit qui seront communiqués à PrestaShop sont les suivants :
- Nom du produit,
- Code du produit,
- Unité du produit,
- Stock boutique du produit,
- Description du produit,
- Poids brut du produit,
- Note imprimée dans la commande de vente du produit,
- Prix de vente HT Presta (sans eco taxes) du produit,
- La valeur de l’écotaxe de la fiche des taxes si la case « Export Eco Taxes » est cochée.
Pour cela, aller dans l'onglet Personnaliser à Modules à Gestionnaire de modules. Sélectionner l'archive du module d'import de données.
Une fois installé, aller sur le module et cliquer sur Configurer puis Activer le module à l'aide du bouton radio.
2. Créer le modèle d'import des données
Aller ensuite dans l'onglet VENDRE à Catégories à Import configuration puis cliquez sur le bouton "+"
Créer le modèle d’import comme ci-dessous :
Ensuite, cliquer sur Gérer les paramètres.
3. Paramétrage d'import des données
Créer le mapping correspondant au fichier qui sera généré depuis Open-Prod.
Voici un exemple de format de données sortant d'Open-Prod :
Paramétrage correspondant
Installation du module d'Import des Clients et Commandes
Ce module va permettre de descendre les Clients et les Commandes de PrestaShop vers Open-Prod.
1. Créer le module d'import
Pour cela, aller dans l'onglet Personnaliser à Modules à Gestionnaire de modules. Sélectionner l'archive du module d'import de données.
Une fois installé, aller sur le module et cliquer sur Configurer.
2. Configuration du module d'import
2.1. Onglet GLOBAL
Aller dans le premier onglet GLOBAL puis renseigner les informations comme ci-dessous :
- ID entreprise est le nom de votre société sous Open-Prod,
- ID société est le même que ID entreprise sauf si vous avez plusieurs boutiques PrestaShop,
- Entrepôt de départ est le nom de votre entrepôt sous Open-Prod,
- Emplacement de l'entrepôt de départ est l’ID Open-Prod de votre entrepôt sous Open-Prod,
- Référence produit boutique permet de donner une référence unique aux produits PrestaShop qui n’ont pas référence,
- Référence de votre produit "Remise" est la référence du produit remise sous Open-Prod,
- Période de validité est la durée de validité des devis sous Open-Prod,
- Utiliser la facturation Open-Prod permet de désactiver l'utilisation des factures de PrestaShop au profit de celles d'Open-Prod.
2.2. Onglet IDENTIFIANTS FTP
Dans le deuxième onglet IDENTIFIANTS FTP, renseigner le mot de passe FTP :
2.3. Onglet STATUTS DE COMMANDE
Dans le troisième onglet STATUTS DE COMMANDE, renseigner les informations d'état de commande :
- Etats de commande pour générer les fichiers JSON permet de définir quel état dans PrestaShop va générer un fichier JSON à envoyer à Open-Prod.
Lors de l’installation du module, des états supplémentaires vont être créés dans PrestaShop pour faire le lien avec Open-Prod.
Les statuts de commande pouvant remonter dans PrestaShop
Voici un exemple de liste de statuts de commande pouvant remonter dans PrestaShop. Cette liste est bien sûr non exhaustive et correspond à un exemple d'installation effectuée. Elle est à adapter en fonction de chaque projet.
- Lorsque la commande est importée en « Brouillon » dans Open-Prod, Prestashop reçoit le statut suivant OP - Commande intégrée dans Open-Prod
- Lors de la préparation de commande au niveau du BL, Prestashop reçoit le statut suivant OP - Commande en cours de préparation dans Open-Prod
- Lorsque du traitement du BL (via le bouton "Traiter" du BL), Prestashop reçoit le statut suivant OP - Commande expédiée depuis Open-Prod
- Lorsque de la validation de la facture, Prestashop reçoit le statut suivant : OP - Expédition facturée dans Open-Prod à La facture d'Open-Prod est alors envoyée à PrestaShop
- Lors de l'envoi de la facture par email au client, Prestashop reçoit le statut suivant : OP- Facture disponible dans PrestaShop à La facture est alors disponible sur Prestashop dans l’espace client
- Lorsque le paiement est enregistré dans Open-Prod (via le bouton « Enregistrer un paiement »), Prestashop reçoit le statut suivant : OP - Commande réglée dans Open-Prod
Tous ces statuts ne sont visibles qu'en back-office de PrestaShop et non visibles par les clients.
2.4. Onglet TAXES
Vous pouvez laisser ici les valeurs par défaut.
2.5. Onglet POSITION FISCALE
Aller dans le cinquième onglet POSITION FISCALE et renseigner les informations comme ci-dessous :
- Nom comptable du partenaire permet de ramener à la création d’un client le compte comptable à associer dans Open-Prod.
- Sélectionner le groupe professionnel dans la liste permet de définir le groupe pour les clients professionnels dans PrestaShop.
- Utiliser l'adresse pour le B2B permet de définir quels sont les clients professionnels dans PrestaShop.
- Si le client n’appartient pas au groupe défini précédemment mais que son adresse contient un numéro de TVA ET que le champ Société n'est pas vide, il est considéré comme un client professionnel.
- Nom catégorie B2C permet de définir à quelle catégorie est rattaché le client dans Open-Prod
- « Boutique B2C » si particulier et « Boutique B2B » si c'est une entreprise. Le changement doit s’effectuer si le numéro de TVA est renseigné ou non dans PrestaShop.
- Nom catégorie B2B permet de définir à quelle catégorie est rattaché le client dans Open-Prod
- « Boutique B2C » si particulier et « Boutique B2B » si c'est une entreprise. Le changement doit s’effectuer si le numéro de TVA est renseigné ou non dans PrestaShop.
- Méthode de facturation permet de définir quelle méthode de facturation est remontée dans la commande client sur Open-Prod.
- Équivalences des moyens de paiement permet de mapper les moyens de paiement entre PrestaShop et Open-Prod.
- Utiliser le champ third_party_accounting_code permet de faire remonter la valeur du champ Code comptable tiers dans la fiche client de Open-Prod.
- Code comptable tiers permet de définir quelle valeur PrestaShop remonte dans Open-Prod.
2.6. Onglet TRANSPORTEUR
Dans le sixième onglet TRANSPORTEUR, renseigner les informations comme ci-dessous :
- Sélectionnez le transporteur "Retrait en magasin" dans la liste permet de choisir le transporteur permettant le retrait des produits en magasin.
- Référence de votre produit "Retrait en magasin" permet de définir la référence produit associée dans Open-Prod.
- Référence de votre produit "Transport" permet de définir la référence produit associée dans Open-Prod.
- Utiliser le nom du transporteur dans le produit "Transport" permet de ramener la description du transporteur de PrestaShop dans la ligne de commande Open-Prod liée au produit transport.
- Taxe à 0% pour les transporteurs pour expédition hors EU permet de définir quelle taxe appliquer au produit de transport dans Open-Prod.
Créer ensuite la catégorie Client HT permettant de faire le lien avec la configuration du module.
3. Règles des positions fiscales
Client appartenant à la catégorie Client :
Un client est identifié comme professionnel si les champs "Numéro de TVA" et "Société" sont remplis Sinon, il est considéré comme particulier.
Règles particulières à la catégorie "Client" :
- Si le client est particulier ou pro et que son adresse de livraison est France et que son code postal est inférieur à 97000 (Départements d'outre-mer) alors on retourne la position fiscale "France",
- Si le client est particulier ou pro et que son adresse de livraison est France et que son code postale est supérieur à 97000 (Départements d'outre-mer) alors on retourne la position fiscale « Import/Export + DOM-TOM",
- Si le client est particulier et que son adresse de livraison est en Europe alors on retourne la position fiscale "nom du pays",
- Si le client est pro et que son adresse de livraison est en Europe alors on retourne la position fiscale "Intra-EU B2B",
- Si le client est particulier ou pro et que son adresse de livraison est à l'étranger alors on retourne la position fiscale "Import/Export + DOM-TOM".
Client appartenant à la catégorie Client HT :
Un pro est identifié parce que celui-ci appartient à la catégorie "Client HT". On ne regarde pas si les champs "numéro de TVA" et "Société" sont remplis.
Règles particulières à la catégorie "Client HT" :
- Si le client appartient au groupe "Client HT" alors on retourne les conditions des clients pro ci-dessus.
Pour ce faire, il faut que ces positions fiscales soient présentes sur la base de production :
- France,
- Import / Export + DOM-TOM,
- Intra-EU B2B,
- Le nom de chaque pays européen libellé de la même manière que dans PrestaShop.
Installation et configuration sur Open-Prod
Installation des modules myfab
Installer et / ou mettre à jour les modules suivants depuis le menu Configuration > Applications d'Open-Prod :
- myfab Base
- myfab File Interface
- myfab Connecteur PrestaShop
Création des champs personnalisés Open-Prod
Créer dans Open-Prod le champ suivant et l'ajouter à la fiche produit dans l'onglet Vente : x_prix_de_vente_ht_presta
Ce champ servira à remonter le prix des produits dans PrestaShop.
Créer ensuite le champ suivant et l'ajouter au Modèle Taxes : x_export_ecotaxes
Ce champ permettra de remonter dans PrestaShop la valeur de la taxe.
Configuration de myfab File Interface
Vous pouvez vous reporter à la documentation spécifique du module myfab File Interface en cas de besoin.
1. Activation des droits d'accès MFI
Si cela n'est pas déjà fait, il faut ajouter à l'utilisateur Open-Prod les droits d'accès au module MFI : aller dans la Configuration d'Open-Prod à Utilisateurs et sécurité à Utilisateurs. En bas, dans la section "Autre", cocher les options "Exports fichiers myfab" et "Imports fichiers myfab".
2. Configuration des exports de Produits
2.1. Ajout champ prix de vente HT
L'installation du module myfab Connecteur PrestaShop va créer une configuration standard des exports de produits. On la retrouve dans la liste des exports fichiers de MFI : onglet Configuration à myfab APIs à Export fichier.
Dans cette configuration, ajouter l'export du champ prix de vente HT (sans éco-taxes) :
2.2. Ajout filtre sur Taxes
Ajouter également un filtre sur les taxes à exporter comme suit :
Aller dans le modèle à exporter "Taxes" :
Puis dans l'onglet "Filtrage" et ajouter un nouveau champ à filtrer. Sélectionner le champ personnalisé x_export_ecotaxes :
Ajouter un opérateur de filtrage comme ci-dessous :
Faire de même pour le modèle enfant à exporter UdM :
2.3. Filtre sur produits E-Commerce
Pour information, sur le modèle d'export par défaut, il existe un filtre permettant d'exporter uniquement les produits dont le champ "E-Commerce" est coché.
2.4. Création du Cron associé
Enfin, le module va également créer le Cron associé à l'export pour automatiser son exécution à un intervalle de temps donné. Il est présent dans l'onglet Cron et modifiable en fonction du besoin. Il faut bien veiller à l'activer dès que nécessaire.
Si toutefois il n'était pas créé automatiquement, vous pouvez le créer avec les informations ci-dessous.
3. Configuration des imports de Clients et Commandes
Afin de pouvoir récupérer les différents clients et commandes créés sur le site marchand, le module va créer deux modèles d'import de données pour récupérer les Clients et les Commandes ainsi que son Cron associé. Si toutefois ces éléments n'étaient pas automatiquement créés, il faut les créer avec notamment les noms des répertoires liés où les données sont déversées par PrestaShop.
Par exemple l'Import des données Clients :
Configuration du FTP
Avec l'installation du module myfab Connecteur PrestaShop, deux onglets sont créés dans le menu Configuration des modules myfab dans la configuration d'Open-Prod :
- FTP
- PrestaShop
1. Configuration FTP
Aller dans Configuration > myfab configuration> Configuration des modules > menu myfab configuration > Onglet FTP. Cliquer sur Modifier pour créer ou ajouter une nouvelle adresse FTP.
Cliquer sur Ajouter un nouvel élément puis sur Créer :
Remplir le formulaire et cliquer sur Sauvegarder :
Renouveler l'opération pour chaque adresse FTP à créer et cliquer finalement sur Sauvegarder de retour dans myfab configuration.
FTP pour les Etats de commandes :
FTP pour les factures :
FTP pour les Produits :
2. Configuration FTP PrestaShop
Cette configuration permet d'indiquer le rapport Jasper (modèle de facture) envoyer au serveur FTP lors de l'édition de celle-ci ainsi que l'emplacement du fichier produit.
Aller dans Configuration > myfab configuration> Configuration des modules > menu myfab configuration > Onglet PrestaShop. Cliquer sur Modifier pour accéder à la configuration.
Sélectionner dans la liste déroulante le modèle de facture, puis saisir le dossier de la fiche produit :
Enfin, cliquer sur Sauvegarder pour valider les modifications.
Récupération des Clients et des Commandes
L'étape suivante est de paramétrer la récupération des Clients et des Commandes sur le serveur FTP. Pour cela, il faut paramétrer deux Transformations EDI dans Open-Prod : une pour les clients et une pour les commandes.
Aller dans Configuration > Communications > Transformation EDI > Transformation > Récupération de fichier. Cliquer sur Créer puis remplir le formulaire comme ci-dessous mais avec les données propres à l'environnement Client.
Créer également le Cron associé pour automatiser la récupération.
Renouveler l'opération pour chaque récupération de fichiers nécessaire.
Crons associés
Après avoir suivi toutes les étapes de la configuration, les Crons suivants devraient être créés et activés sur votre environnement :