Les liaisons articles / fournisseurs

Le 28 avril 2020 par Admin
4 minutes de lecture · Référence du webservice : #SWO-P024

Comment ajouter de nouvelles liaisons articles/fournisseurs directement dans OpenSi ?

Attention, il s’agit d’un webservice spécifique à PrestaShop. Cette fonctionnalité n’existe pas sous Magento !

Ce flux possède la particularité d’être paramétrable dans un sens comme dans l’autre (sens Boutique › OpenSi en standard mais il est possible d’inverser son sens de synchronisation – OpenSi › Boutique).
Attention, un seul sens de synchronisation est possible !

Parfois, la quasi-totalité des articles vendus sur une boutique en ligne provient d’un même fournisseur, mais la plupart du temps, les e-commerçants constituent eux-mêmes leurs achats auprès de plusieurs fournisseurs.

La gestion des achats est une fonction stratégique dans l’entreprise : sélection des fournisseurs en fonction  de la qualité des marchandises, mais aussi des prix, des délais de livraison, des stocks disponibles…

OpenSi propose donc de pouvoir synchroniser ces informations directement en son sein afin de pouvoir les gérer plus facilement et rapidement.

Les commandes fournisseurs s’automatisent alors dès que vos stocks sont bas et vous n’avez plus qu’à les valider !

Nous allons voir dans cet article de quelle manière il est possible de récupérer ces informations et quelles sont celles qui transitent dans les synchronisations entre OpenSi et votre boutique.

Cet article aborde les sujets suivants :

La mise en place et la récupération des liaisons articles / fournisseurs

La synchronisation des liaisons articles / fournisseurs s’effectue de la boutique vers OpenSi en standard mais il est possible d’inverser son sens de synchronisation.

Afin de pouvoir réaliser des commandes auprès de vos fournisseurs de manière automatique, il est nécessaire, dans un premier temps, de renseigner ce que l’on appelle communément des liaisons articles / fournisseurs pour chacun d’entre eux.

Cette opération est effectuée sur la boutique (via le backoffice PrestaShop) à plusieurs niveaux :

De ce fait, la première opération à effectuer est de créer vos fournisseurs dans OpenSi (leur attribuer une référence).

Par la suite, vous devez renseigner cette référence dans le nouveau champ « Référence fournisseur OpenSi » au niveau de la fiche du fournisseur sur votre boutique (via le backoffice) :

Schéma représentant comment renseigner la référence fournisseur OpenSi dans PrestaShop

Enfin, les articles concernés par des liaisons articles / fournisseurs doivent également respecter certaines conditions :

Schéma représentant la sélection d’un fournisseur par défaut dans PrestaShop
Schéma représentant l’importance des champs obligatoires à renseigner

Dans l’exemple ci-dessus, seules les 3 premières liaisons pourront être synchronisées. Le dernier article, ne possédant ni référence fournisseur, ni montant, ne sera donc pas envoyé à OpenSi.

Attention

Ce flux permet seulement d’ajouter des liaisons dans OpenSi, pas de les mettre à jour et encore moins de les supprimer. Si vous devez modifier ou supprimer des liaisons, vous devez le faire manuellement dans OpenSi.

Schéma représentant les différentes étapes de la récupération des liaisons articles / fournisseurs sur la boutique

La synchronisation avec OpenSi

La synchronisation des liaisons articles / fournisseurs est effectuée en standard toutes les 10 minutes (cette fréquence peut néanmoins être modifiée par nos soins selon vos besoins).

Le webservice de récupération des liaisons articles / fournisseurs va s’occuper de récupérer différentes informations que vous aurez au préalable renseignées sur votre boutique. Celles-ci seront alors envoyées à OpenSi où elles seront créées/ajoutées.

A noter que ce flux possède la particularité d’être à double sens. Il est ainsi possible de l’executer dans un sens comme dans l’autre. En standard, ce flux s’opère dans le sens Boutique › OpenSi mais il est possible de le faire tourner dans le sens inverse OpenSi › Boutique.
Attention toutefois, un seul sens peut être activé !

Liste des informations synchronisables avec OpenSi

Voici la liste exhaustive des champs que vous pouvez synchroniser avec OpenSi (récupération des composants sur la boutique).
Tous ces champs sont obligatoires.

ProductReference *Référence de l’article (Chaîne de 40 caractères max.)
SupplierReference *Référence OpenSi du fournisseur (Chaîne de 40 caractères max.)
ProductSupplierReference *Référence de l’article chez le fournisseur (Chaîne de 40 caractères max.)
ProductWholesalePrice *Prix d’achat de l’article chez le fournisseur (Nombre décimal de 14 chiffres au total dont 4 chiffres après la virgule)
(*) Champs obligatoires

Exemple de flux XML

Voici ci-dessous l’exemple des liaisons articles / fournisseurs d’un article retournées par la boutique et envoyées à OpenSi (flux XML) :

<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://www.opensi.fr/xsd" xmlns:ns2="http://www.opensi.fr">
   <SOAP-ENV:Body>
      <ns2:getProductSupplierReferencesResponse>
         <ns2:return>
            <ns1:ProductReference>demo_1_bm</ns1:ProductReference>
            <ns1:SupplierReference>Adidas</ns1:SupplierReference>
            <ns1:ProductSupplierReference>demo_1_bm_adidas</ns1:ProductSupplierReference>
            <ns1:ProductWholesalePrice>9.46</ns1:ProductWholesalePrice>
         </ns2:return>
         <ns2:return>
            <ns1:ProductReference>demo_1_wm</ns1:ProductReference>
            <ns1:SupplierReference>Adidas</ns1:SupplierReference>
            <ns1:ProductSupplierReference>demo_1_wm_adidas</ns1:ProductSupplierReference>
            <ns1:ProductWholesalePrice>9.46</ns1:ProductWholesalePrice>
         </ns2:return>
         <ns2:return>
            <ns1:ProductReference>demo_1_bs</ns1:ProductReference>
            <ns1:SupplierReference>Adidas</ns1:SupplierReference>
            <ns1:ProductSupplierReference>demo_1_bs_adidas</ns1:ProductSupplierReference>
            <ns1:ProductWholesalePrice>9.46</ns1:ProductWholesalePrice>
         </ns2:return>
         <ns2:return>
            <ns1:ProductReference>demo_1_ws</ns1:ProductReference>
            <ns1:SupplierReference>Adidas</ns1:SupplierReference>
            <ns1:ProductSupplierReference>demo_1_ws_adidas</ns1:ProductSupplierReference>
            <ns1:ProductWholesalePrice>9.46</ns1:ProductWholesalePrice>
         </ns2:return>
      </ns2:getProductSupplierReferencesResponse>
   </SOAP-ENV:Body>
</SOAP-ENV:Envelope>