Mes projets : réalisations et participations

C'est en codant qu'on apprend le mieux à coder, ainsi voici les projets auxquels j'ai participé. Ce sont souvent grâce à eux que j'ai rencontré les problèmes ou les besoins qui sont ma source d'inspiration pour mes différents articles.

Retour

Passerelle Quoram-Presta

Passerelle Quoram-Presta

Lors de mon stage chez Akyos, le projet de site pour la boutique Napapijri Megève avait pour contrainte de pouvoir permettre l'échange de données entre Prestashop et leur futur logiciel de caisse Quoram. J'ai donc dû réfléchir à la meilleure solution possible et la confronter aux attentes des différents acteurs du projet.

Dans un 1er temps, il me paraissait intéressant de mettre en place une solution utilisant les web services (basés sur des fichiers .xml) et les hooks de Prestashop. Ainsi, chacune des modifications auraient pu se faire en temps réel. En effet, l'objectif étant de contrôler au maximun le contenu du site depuis l'interface du logiciel Quoram. Toutefois, cette solution a été refusé car elle reportait l'essentiel du travail sur l'éditeur du logiciel de caisse.

Ensuite, l'idée a été de développer notre propre module d'import en utilisant les fonctions de CRUD de Prestashop et l'algorythme du module d'import déjà existant de Prestashop. Cependant, l'éditeur Quoram préfèrait nous envoyer son fichier d'échange CSV type et non devoir en créer un nouveau sur mesure tout spécialement pour nous, ce qui est assez compréhensible.

Ainsi, la solution que j'ai retenu est la création d'un module d'import ultra simple, pour lequel un script de Yannick Kemarec trouvé sur le web m'a beaucoup aidé. Ce script shell permet d'envoyer des fichiers .csv et de les faire passer en cron au travers le module d'import de Prestashop sans avoir à parcourir son interface graphique. Une fois, cescript adapté à mes besoins, il a suffit de transformer le fichier .csv de Quoram déposé chaque heure sur mon serveur, en plus petits fichiers du même type (pour les différentes informations à échanger : catégories, produits, clients, options... le tout en 2 langues) pouvant être utiliser par le module d'import interne à Prestashop. Un crom allant chaque heure chercher le nouveau fichier.

Enfin, chaque vente sur le site donne lieu à la création d'un fichier détaillant la vente pouvant être lu par le logiciel de caisse. Sa création se faisant grâce au hook signalant une nouvelle vente. Enfin, un hook fixé sur le header permet a tout moment de retirer un produit du catalogue s'il n'est plus en stock.


Vous aimez ce post, partagez-le !! Ou laissez-moi un commentaire !!
Commentez

Commentaires

revenir au debut de l'article
Retour