avr 28, 2011
etienne

La multi-livraison rendue possible sous Magento.

Pour notre client RDV Déco nous avons développé un système de multi-livraison sous magento. Ce système permet à un consommateur de faire livrer plusieurs produits d’une même commande selon plusieurs modes.


Notre client, Rendez-Vous Déco, vend aussi bien du gros mobilier que des petits objets de décorations, il fallait que les utilisateurs du site puissent commander et se faire livrer selon leurs choix.

Par exemple les utilisateurs qui commandent une lampe de chevet et une table en pin massif, doivent pouvoir faire livrer leur lampe par un transport classique (chronopost, colissimo) pour l’avoir rapidement tandis que leur table en pin sera livrée via transporteur privé, avec installation et montage au domicile du client.

Pour permettre cela, nous avons analysé en détail le fonctionnement de magento pour la livraison standard, ainsi que pour le multishipping (livraison à plusieurs adresses). Magento ne permet pas d’utiliser plusieurs moyens de livraison pour une seule adresse, nous avons donc dû reprendre et modifier une grande partie du processus de commande.
Concrètement, lors de l’achat, plusieurs commandes sont créées et regroupées en un seul panier, avec les produits regroupés par mode de transport. (Une commande par mode de transport). Pour l’utilisateur ce processus est invisible et intuitif.
Nous avons surchargé le “Core” de Magento sur le “multishipping” et le “Checkout” pour mélanger plusieurs fonctionnalités et obtenir le résultat sans mettre à mal le fonctionnement normal de la plate-forme.

magento

La première difficulté majeure que nous avons rencontrée était de s’adapter au besoin du client qui spécifiait que la modification soit compatible avec le plugin “OneStepCheckout” qui permet de commander en UNE seule étape au lieu de Six dans un site magento classique.
Nous avons du surcharger le fonctionnement du plugin, autant du côté PHP que du côté Javascript (le plugin est basé sur un fonctionnement JS/Ajax).

La seconde difficulté fût de modifier les modules de paiement Paypal et Atos pour qu’ils gèrent la modification, puisque ces deux modes de paiement ne gèrent pas nativement le paiement de plusieurs commandes en une fois.
Pour Atos, il suffisait de faire la somme des totaux des commandes créées. Pour Paypal, nous avons dû réussir à transposer en plus de la somme, le détails des produits et frais de livraison.

Par la suite, nous soumettrons l’amélioration aux créateurs du plugin ATOS pour Magento.

Laisser un commentaire