Ecrire un module d’e-commerce de A à Z pour Orchard – Partie 1

Introduction 

J’ai commencé à publier une série de tuto que je n’ai pas terminé sur la création d’un module « bonjour » pour Orchard afin d’aider d’autres développeurs. Hélas, par manque de motivations je ne suis pas allé jusqu’au bout et ce d’autant plus que je me suis aperçu qu’en voulant faire simple j’ai finalement fait compliqué pour une simple prise en main.


J’ai décidé de reprendre les choses en main, en m’appuyant sur un module que je suis en train de faire pour le site de ma femme désirant avoir un « mini-site d’e-commerce ». Etant donné le sujet, cela permet d’aborder un ensemble de fonctionnalités assez vastes permettant de faire un tour d’horizon assez global sur la façon dont il faut aborder les choses, mais aussi comprendre comme les choses fonctionnent avec l’API d’Orchard qui est assez bien conçut. Toutefois, cela reste de la démo ce que je vais proposer ici. Il faudra donc bien sur adapter à vos besoins le code que je vous proposerais.


Avant tout, n’hésitez pas à aller voir les pages de documentation suivantes :

http://docs.orchardproject.net/Documentation/How-Orchard-works

http://msdn.microsoft.com/en-us/magazine/hh708754.aspx


Dans ce tutoriel pour créer ce module d’e-commerce, nous allons mettre en place les éléments suivants :

  1. La définition de contenu représentant un produit et comment l’attacher à un Content Type Products pour les lister.
  2. Rendre possible l’ajout de ces produits visible par les clients dans un panier, mais également l’enregistrement de ces clients sur le site
  3. Les clients vont pouvoir procéder à la validation de leur commande selon les produits choisis dans le panier en utilisant un service de paiement (PSP).
  4. Avant la redirection sur le PSP, le système créera un enregistrement de la commande avec les détails de cette dernière.
  5. Après avoir payé le client, aura besoin d’obtenir une confirmation, et un suivi de la livraison du produit. Il faudra prévoir, éventuellement une notification des fournisseurs partenaires afin de les mettre au courant qu’ils ont une nouvelle commande à traiter afin d’être le plus souple possible avec un système de tri, mais aussi de filtre par code barre par exemple.
  6. Une partie donc back office utilisable par l’administrateur qui pourra manager les clients et les commandes.


Nous allons voir tout cela au travers des parties suivantes :

  • Partie 1 : Introduction
  • Partie 2 : Mise en place de l’environnement de développement
  • Partie 3 : Création du module
  • Partie 4 : Création du model « ProductPart »
  • Partie 5 : Création et définition du rendu d’un catalogue comme « ContentType »
  • Partie 6 : Création du service gérant un panier et du controller
  • Partie 7 : Rendu du panier et gestion de l’affichage d’un widget associé
  • Partie 8 : Enregistrement des nouveaux client sur le site
  • Partie 9 : Création des commandes et communications avec les fournisseurs de méthodes de paiements.
  • Partie 10 : Gestion des clients et des commandes sur le backoffice
  • Partie 11 : Personnalisation des produits et du catalogue dans la partie administrative du site.
  • Partie 12 : Intégration avec un système ERP
  • Partie 13 : Gestion des livraisons et des taxes
  • Partie 14 : implémentation de la méthode de paiement Google Checkout
  • Partie 15 : Implémentation de la méthode de paiement PayPal

Choupachoups J

Ps : elles ne sont pas exhaustives et pourront changer au cours du temps, si je m’aperçois qu’elles n’étaient pas judicieuses.



Rejoindre la conversation