Facturation et paiement par vendeur

  • Posts: 99
  • Thank you received: 3
7 years 8 months ago #170787

-- HikaShop version -- : 2.3.2
-- HikaMarket version -- : 1.4.3
-- Joomla version -- : 3.3.3
-- PHP version -- : 5.4.30

Bonjour,

la version actuelle d'Hikamarket génère une facture par commande, payable au vendeur principal qui reverse ensuite le montant dû à chaque vendeur de la boutique.

Est-il prévu dans une future release d'offrir la possibilité de sortir autant de factures que de vendeurs lorsque le client a rempli son panier avec des produits de plusieurs vendeurs, le client payant directement chaque vendeur ?

Cette possibilité de transaction directe entre le client et le vendeur serait très intéressante pour le projet auquel je contribue. La ventilation des frais de port, des commandes et leur statut vers les différents vendeurs est parfaitement fonctionnelle, pour nos besoins reste juste la facturation.

Please Log in or Create an account to join the conversation.

  • Posts: 25259
  • Thank you received: 3909
  • MODERATOR
7 years 8 months ago #170796

Bonjour,

D'un point de vue strictement technique c'est assez complexe voir impossible.
Une commande corresponds a un seul paiement. Si vous choississez "payer sur place" forcement vous allez pouvoir payer directement les vendeurs un par un. Mais pour tout autre méthode de paiement (sans compter "paypal adaptive), vous ne pouvez pas payer plusieurs personnes avec une seule transaction.
Et même si "paypal adaptive" permet cela, vous ne pouvez pas sélectionner plusieurs méthodes de paiement pour une seule commande (et faire le découpage des commandes, faire plusieurs paiement sur différentes platesformes, etc etc).

Cette possibilité de transaction direct avec le vendeur est possible avec HikaMarket à partir du moment ou vous utilisez une limitation sur le nombre de vendeur dans le panier.
Au lieu de vous faire payer "vous", le vendeur touchera directement l'argent via ses méthodes de paiement à lui ; et par la suite il devra vous payer vos commission. Il s'agit du deuxième mode de fonctionnement d'HikaMarket.

Mais techniquement parlant (de manière générale, ce n'est pas une limitation propre à HikaShop), on ne peut pas avoir plusieurs méthodes de paiement pour une seule commande.

Cordialement,


Jerome - Obsidev.com
HikaMarket & HikaSerial developer / HikaShop core dev team.

Also helping the HikaShop support team when having some time or couldn't sleep.
By the way, do not send me private message, use the "contact us" form instead.

Please Log in or Create an account to join the conversation.

  • Posts: 99
  • Thank you received: 3
7 years 8 months ago #170819

Ok, je pensais qu'il serait possible lors de la validation du panier de créer autant de commandes et donc de factures que de vendeurs.

Mais on va faire avec ce qui est possible, merci pour ces précisions.

Please Log in or Create an account to join the conversation.

  • Posts: 25259
  • Thank you received: 3909
  • MODERATOR
7 years 8 months ago #170820

Bonjour,

Puisqu'HikaMarket génère une sous commande pour chaque vendeur, chaque vendeur peut générer sa propre facture pour le client final.
Mais d'un point de vue comptable, une facture = un réglement (donc une transaction banquaire).
C'est à ce niveau là que des choses peuvent coincer.

Cordialement,


Jerome - Obsidev.com
HikaMarket & HikaSerial developer / HikaShop core dev team.

Also helping the HikaShop support team when having some time or couldn't sleep.
By the way, do not send me private message, use the "contact us" form instead.

Please Log in or Create an account to join the conversation.

  • Posts: 99
  • Thank you received: 3
7 years 8 months ago #170831

Jerome wrote: Mais d'un point de vue comptable, une facture = un réglement (donc une transaction banquaire).
C'est à ce niveau là que des choses peuvent coincer.

Cordialement,

Oui, cela reviendrait à produire 2 factures pour une même commande.

On va donc s'adapter, merci en tous cas pour vos explications.

Please Log in or Create an account to join the conversation.

  • Posts: 99
  • Thank you received: 3
7 years 7 months ago #176140

Bonjour,

Je dois trouver une solution pour que les vendeurs puissent être payés directement par les clients. La solution que j'envisage est d'adapter les emails envoyés lors de la création d'une commande :
- Actuellement si un client achète des produits de plusieurs vendeurs, un email est envoyé au client avec la totalité de son panier, et un email est envoyé à chaque vendeur avec la sous-commande qu'il doit traiter.
- Je souhaiterais qu'un email supplémentaire par sous-commande soit envoyé au client. On lui indiquerait dans le mail les coordonnées du vendeur pour envoyer son paiement, puisque sur notre site le seul moyen de paiement est le chèque.

Pour créer cet email supplémentaire je souhaite :
1) Partir sur la base de l'email envoyé à chaque vendeur (Market : notification de commande)
2) Adapter cet email pour ajouter notamment les coordonnées du vendeur pour l'envoi du paiement
3) Déclencher l'envoi de l'email au client, juste après l'envoi de l'email de notification de commande à chaque vendeur

Pour le 1) et 2) a priori je sais faire. J'ai déjà modifié des emails, et je sais récupérer les champs qui manquent (adresse, téléphone et email du vendeur notamment). J'ai vu qu'en dupliquant sous media/com_hikamarket les fichiers order_notification.html.php et order_notification.preload.php, un nouvel email apparaissait sous Système-Emails. Bien que ce ne soit pas essentiel, est-il possible de modifier le nom de l'email ?

Reste le point 3) où j'ai besoin d'aide :
- Comment déclencher l'envoi de l'email créé ?
- Comment faire pour qu'il soit envoyé au client ?

En espérant que ma demande est suffisamment claire, et que ma démarche est la bonne, merci en tous cas pour votre éclairage.

Last edit: 7 years 7 months ago by warson.

Please Log in or Create an account to join the conversation.

  • Posts: 25259
  • Thank you received: 3909
  • MODERATOR
7 years 7 months ago #176202

Bonjour,

Dans votre cas je pense qu'il serait plus intéressant de modifier le seul et unique email envoyé au client afin de lui ajouter les informations liées au vendeurs/payment.
Dupliquer l'envoie des emails vendeur pour les envoyer aux clients n'est pas simple et va demander pas mal de modification que je ne recommande pas du tout (puisque ça touche bien trop au core d'HikaMarket).
Créer un nouvel email est possible mais va demander le développement d'un plugin afin de permettre de l'envoyer au bon moment (via utilisation d'un trigger dans le plugin).

C'est pourquoi je pense qu'il serait plus simple de modifier le seul email envoyé au client afin de changer l'affichage et séparer les produits en fonction des vendeurs ; ainsi que d'ajouter des données pour le payment par chèque des différents vendeurs de la commande.
Charger les vendeurs dans l'email n'est forcement très compliqué, il est possible d'utiliser les fonctions d'HikaMarket pour l'attribution du vendeur (utilisé dans la class order d'HikaMarket) ou alors de charger les sous commandes et ainsi avoir les produits et les détails vendeur.

Cordialement,


Jerome - Obsidev.com
HikaMarket & HikaSerial developer / HikaShop core dev team.

Also helping the HikaShop support team when having some time or couldn't sleep.
By the way, do not send me private message, use the "contact us" form instead.

Please Log in or Create an account to join the conversation.

  • Posts: 99
  • Thank you received: 3
7 years 7 months ago #176219

Ok, je vais essayer de modifier l'email existant adressé au client en chargeant les sous-commandes, ce qui me semble être la meilleure façon de construire l'email.

J'espère m'en sortir, en tous cas merci.

Please Log in or Create an account to join the conversation.

  • Posts: 25259
  • Thank you received: 3909
  • MODERATOR
7 years 7 months ago #176221

Bonjour,

J'ai une tâche similaire dans ma TODO list afin de surcharger l'email client et afficher le détails de la commande par vendeur au lieu d'afficher la commande classique.
Le soucis reste dans la gestion des multiples cas d'utilisation, s'il faut détailler le paiement et comment indiquer les différentes commissions. C'est ces différents points qui font que cette tâche ne sera pas dans HikaMarket 1.5.0 mais probablement dans la 1.6 (ou une 1.5.x si jamais).

En tout cas vous pouvez récupérer les sous commandes vendeur via:

$query = 'SELECT * FROM ' . hikashop_table('order') . ' AS a WHERE order_type = '. $this->db->Quote('subsale') .' AND order_parent_id = ' . $order->order_id;
$this->db->setQuery($query);
$order->hikamarket->children = $this->db->loadObjectList('order_id');
Et les produits d'une commande via
$query = 'SELECT * FROM ' . hikashop_table('order_product') . ' AS a WHERE order_id = ' . $suborder->order_id;
$this->db->setQuery($query);
$suborder->products = $this->db->loadObjectList('order_product_id');
Dans les produits d'une sous-commande, vous trouverez l'élément "order_product_parent_id" qui permet de lier un "order_product" de la commande principale avec un "order_product" d'une sous commande vendeur.
Le "order_product" de la commande vendeur contient également des données dans "order_product_vendor_price" afin de connaitre le prix vendeur unitaire.
Dans la commande vendeur, vous avez accès à "order_vendor_price" pour le total vendeur (qui peut être négatif si vous avez configuré HikaMarket pour que le paiement soit directement au vendeur, il faut alors le soustraire au "order_full_price").

Si vous avez des questions sur l'implémentation, je reste à votre disposition.

Cordialement,


Jerome - Obsidev.com
HikaMarket & HikaSerial developer / HikaShop core dev team.

Also helping the HikaShop support team when having some time or couldn't sleep.
By the way, do not send me private message, use the "contact us" form instead.
Last edit: 7 years 6 months ago by Jerome. Reason: typo fix

Please Log in or Create an account to join the conversation.

  • Posts: 99
  • Thank you received: 3
7 years 6 months ago #176475

Bonjour,

merci pour votre aide, j'ai commencé à regarder et ça ne semble pas simple pour moi, mais je vais m'accrocher.

La requête que vous proposez pour extraire les produits d'une commande me semble comporter une erreur de frappe :

$query = 'SELECT * FROM ' . hikashop_table('orde_productr')
est à remplacer par
$query = 'SELECT * FROM ' . hikashop_table('order_product')
si je ne m'abuse?
Puis-je utiliser ces requêtes dans le Preload de la création de commande ou ailleurs (order.php) ?

Jerome wrote: Le soucis reste dans la gestion des multiples cas d'utilisation, s'il faut détailler le paiement et comment indiquer les différentes commissions. C'est ces différents points qui font que cette tâche ne sera pas dans HikaMarket 1.5.0 mais probablement dans la 1.6 (ou une 1.5.x si jamais).

A mon avis pour ce qui concerne l'email destiné au client il faut faire au plus simple :
- Tri de la commande globale par vendeur, chaque sous-commande apparaissant séparément dans l'email
- Au bas de chaque sous-commande indiquer le montant de cette sous-commande port compris, et juste les moyens de paiement et de livraison.
- Les commissions n'ont pas à apparaître sur un bordereau client ?

Bon courage.

Last edit: 7 years 6 months ago by warson.

Please Log in or Create an account to join the conversation.

  • Posts: 25259
  • Thank you received: 3909
  • MODERATOR
7 years 6 months ago #176486

Bonjour,

Effectivement, il y a avait une erreur de frappe dans mon précédent message ; merci bien de l'avoir signalé, je l'ai corrigé.
La requête telle que je l'ai écrite utilise les fonctions HikaShop et non les fonctions HikaMarket (hikashop_table et non hikamarket::table) ce qui vous permet d'utiliser ce code un peu partout dans HikaShop/HikaMarket sans avoir à vérifier si HikaMarket est bien chargé.

Je pense que ne pas indiquer les commission est la chose à faire ; il faut alors ne pas indiquer le prix vendeur mais faire un calcul du total de la commande.
Au niveau des frais de livraison, je pense qu'à ce moment là il faut les indiquer à part sauf dans le cas ou il y a la sélection de la livraison par vendeur ("shipping per vendor") ; Et non dans le cas ou il y a une seule méthode de livraison qui est ensuite partagée ("split shipping fees").

Comptablement parlant il existe plusieurs organisations mais de façon générale la facturation est entre les vendeurs (vous compris) et le client. Tout ce qui est commission n'en fait donc pas parti puisque cela se passe entre vous et vos vendeurs.

Cordialement,


Jerome - Obsidev.com
HikaMarket & HikaSerial developer / HikaShop core dev team.

Also helping the HikaShop support team when having some time or couldn't sleep.
By the way, do not send me private message, use the "contact us" form instead.

Please Log in or Create an account to join the conversation.

  • Posts: 99
  • Thank you received: 3
7 years 6 months ago #179321

Bonjour,

j'ai inséré le code que vous proposiez dans le Preload de l'email de création de commande :

$query = 'SELECT * FROM ' . hikashop_table('order') . ' AS a WHERE order_type = '. $this->db->Quote('subsale') .' AND order_parent_id = ' . $order->order_id;
$this->db->setQuery($query);
$order->hikamarket->children = $this->db->loadObjectList('order_id');

La requête ne fonctionne pas, a priori cela vient de :
WHERE order_type = '. $this->db->Quote('subsale')

Si vous pouvez me dire ce qui ne va pas...

Puisque la fonctionnalité du détail de la commande par vendeur sur l'email client fait partie de votre TODO LIST, avez-vous une idée de l'échéance approximative à laquelle on peut espérer une intégration dans Hikamarket ?

Comme je le disais dans un message précédent, il me semble qu'il faut faire au plus simple en indiquant le détail des produits de chaque sous-commande, le total de la sous-commande incluant les frais de port.

Merci.

Last edit: 7 years 6 months ago by warson.

Please Log in or Create an account to join the conversation.

  • Posts: 25259
  • Thank you received: 3909
  • MODERATOR
7 years 6 months ago #179326

Bonjour,

Il vous faut probablement ajouter

if(empty($this->db))
  $this->db = JFactory::getDBO();
afin de bien avoir un objet "db" pour faire votre requête SQL.

Le code venant directement d'HikaMarket ; la "nomenclature" utilisée dans HikaMarket et légèrement différente de celle d'HikaShop, ce qui explique que "$this->db" ne soit pas initialisé dans HikaShop.
Mais mon code se voulait être une base, une fois les commandes récupérées il faudra les traiter.

Je suis actuellement indisponible pour tout développement que ce soit devant gérer le support HikaShop durant l'absence de Nicolas (conventions Joomla).
J'ai quelques éléments dans ma TODO list pour HikaMarket 1.5.1 mais n'ayant pas eu beaucoup de retour sur HikaMarket 1.5.0 et le système d'édition de variantes, je ne sais pas trop quand HikaMarket 1.5.1 sera publié.

Pour ce qui est de l'amélioration des emails avec le détails vendeur ; cela nécessite une modification du côté d'HikaShop ou alors une surcharge complète des emails par HikaMarket.
Et cela reste pour l'instant une question "ouverte" : est-ce qu'HikaMarket doit simplement modifier la liste des produits dans le mail d'HikaShop ou faut il qu'il ai sont propre email de notification afin de remplacer celui d'HikaShop ?

Cordialement,


Jerome - Obsidev.com
HikaMarket & HikaSerial developer / HikaShop core dev team.

Also helping the HikaShop support team when having some time or couldn't sleep.
By the way, do not send me private message, use the "contact us" form instead.

Please Log in or Create an account to join the conversation.

  • Posts: 99
  • Thank you received: 3
7 years 6 months ago #180296

Bonjour,

merci pour votre réponse. Je pense que je vais attendre Hikamarket 1.5.1 car je ne suis pas encore assez pointu en programmation, et vous ferez indéniablement mieux.

Concernant l'email avec le détail vendeur, la solution où Hikamarket produit son propre email en remplacement de celui d'Hikashop me semble la plus logique : en effet le détail de la commande par vendeur est lié aux fonctionnalités spécifiques d'Hikamarket Multi-Vendor, il me semble donc plus pertinent que ce soit un email d'Hikamarket en remplacement de l'email Hikashop.

Mais ce n'est que mon avis, je ne doute pas que vous ferez le bon choix, bon courage pour le développement.

The following user(s) said Thank You: Jerome

Please Log in or Create an account to join the conversation.

  • Posts: 2
  • Thank you received: 1
7 years 3 weeks ago #200200

Bonsoir,
Je remonte un peut le topic pour approfondir le payement direct vendeur => clients

Acutellement chez le concurent (Virtuemart), installé pour une boutique d'un ami, je souhaite crée la mienne à mon tour,
Virtuemart 2 m'ayant bien fait **** étant obligé de fouiner dans les codes pour avoir quelque chose de "potable" ...

Jerome wrote: Bonjour,

D'un point de vue strictement technique c'est assez complexe voir impossible.
Une commande corresponds a un seul paiement. Si vous choississez "payer sur place" forcement vous allez pouvoir payer directement les vendeurs un par un. Mais pour tout autre méthode de paiement (sans compter "paypal adaptive), vous ne pouvez pas payer plusieurs personnes avec une seule transaction.
Et même si "paypal adaptive" permet cela, vous ne pouvez pas sélectionner plusieurs méthodes de paiement pour une seule commande (et faire le découpage des commandes, faire plusieurs paiement sur différentes platesformes, etc etc).

Cette possibilité de transaction direct avec le vendeur est possible avec HikaMarket à partir du moment ou vous utilisez une limitation sur le nombre de vendeur dans le panier.
Au lieu de vous faire payer "vous", le vendeur touchera directement l'argent via ses méthodes de paiement à lui ; et par la suite il devra vous payer vos commission. Il s'agit du deuxième mode de fonctionnement d'HikaMarket.

Mais techniquement parlant (de manière générale, ce n'est pas une limitation propre à HikaShop), on ne peut pas avoir plusieurs méthodes de paiement pour une seule commande.

Cordialement,


Si je prend l'extention HikaMarket, je peut avoir
Plusieurs vendeurs qui mettent eux même leurs produits en ligne
Paramétrer les types de livraisons, et prédifinir 2 ou 3 mode de paiement par vendeur (paypal, cardsave, et au magasin par ex)
La facture génré sera elle personalisable en fonction du vendeur ?

Merci d'avance pour vos réponses

Please Log in or Create an account to join the conversation.

  • Posts: 25259
  • Thank you received: 3909
  • MODERATOR
7 years 3 weeks ago #200215

Bonjour,

Plusieurs vendeurs qui mettent eux même leurs produits en ligne

Oui, tout à fait.

Paramétrer les types de livraisons, et prédéfinir 2 ou 3 mode de paiement par vendeur (paypal, cardsave, et au magasin par ex)

Oui. Et avec HikaMarket 1.6, vos vendeur peuvent eux même configurer leurs méthodes de livraison et méthode de paiement depuis le site (si vous souhaiter l'autoriser, bien évidement).

La facture générée sera elle personnalisable en fonction du vendeur ?

Que souhaitez vous rendre personnalisable exactement ?
Il y a plusieurs façon de délivrer une facture à un utilisateur. Cela peut être l'email, la facture que le client peut voir directement sur le site et la facture que vous (ou votre vendeur) peut générer/imprimer depuis son interface.

Ces différentes éléments peuvent être surchargés (avec le système de vue de Joomla permettant de surcharger n'importe quelle vue du front-end et du back-end).
Mais si vous souhaitez avoir un design différent par vendeur, il me faudrait un peu plus de détails sur ce que vous souhaitez faire exactement.

Cordialement,


Jerome - Obsidev.com
HikaMarket & HikaSerial developer / HikaShop core dev team.

Also helping the HikaShop support team when having some time or couldn't sleep.
By the way, do not send me private message, use the "contact us" form instead.

Please Log in or Create an account to join the conversation.

  • Posts: 2
  • Thank you received: 1
7 years 3 weeks ago #200330

Merci pour votre réponse,
Dans mon projet pour des raison de comptabilité, facturation, mon souhait est de ne pas touché de commission ni de pourcentage sur chaque vente.
J'ai bien regarder la démo et tout y est, mes réponses aux questions sur les factures.
-- Hikashop validé, ciao Virtuemart -
Je reviendrais surement pour quelque conseil sur les meilleurs modes de paiement et ajout de champs à la commande...

Florent.

The following user(s) said Thank You: Jerome

Please Log in or Create an account to join the conversation.

  • Posts: 99
  • Thank you received: 3
6 years 3 months ago #228112

Bonjour,

je remonte ce topic pour savoir si le détail des sous-commandes par vendeur dans l'email envoyé au client est toujours dans votre todo-list, ou si c'est abandonné ? Idéalement il faudrait que pour chaque sous-commande soit indiqués les noms et coordonnées du vneduer, le détail de la sous-commande et le sous-total...

J'en profite pour une autre question concernant l'email, mais celui envoyé au vendeur : j'ai modifié cet email (fichier administrator/components/com_hikamarket/classes/mail.php) pour adapter notamment le sujet du mail à mes besoins. Cela fonctionne très bien et me convient parfaitement. Cependant comme a apriori il ne s'agit pas d'une surcharge je me demande ce qui se passera à la prochaine mise à jour d'Hikamarket : est-ce que mes modifications seront effacées et faudra-t-il que je les réintègre après la mise à jour ?

Merci en tous cas pour votre excellent logiciel.

Please Log in or Create an account to join the conversation.

  • Posts: 25259
  • Thank you received: 3909
  • MODERATOR
6 years 3 months ago #228118

Bonjour,

Les emails d'HikaShop ont reçu des modifications afin de pouvoir gérer plusieurs "liste de produits" dans leur emails.
J'ai également ajouté un tag permettant d'afficher un petit text au dessus de la liste des produits.

C'est une fonctionnalité qui est toujours dans les plans ; mais ayant passé 10 mois à travailler sur HikaShop 3 ; je n'ai pas eu le temps d'avancer sur les grosses fonctionnalités d'HikaMarket. Le travail sur HikaShop 3, une fois terminé, va ouvrir plein de nouvelles portes pour des nouvelles possibilités dans HikaMarket.

2 - Si vous avez modifié un fichier "core", il sera ré-écraser à la mise à jour.
En toute logique, vous pouvez modifier le titre de l'email directement via une surcharge dans l'email (media/com_hikamarket/mail/) ce qui vous évitera la perte de vos modifications durant la mise à jour.
Après, il existe des techniques pour surcharger une classe dans HikaShop (ou HIkaMarket) mais la surcharge d'email est nettement plus simple à faire.

Cordialement,


Jerome - Obsidev.com
HikaMarket & HikaSerial developer / HikaShop core dev team.

Also helping the HikaShop support team when having some time or couldn't sleep.
By the way, do not send me private message, use the "contact us" form instead.

Please Log in or Create an account to join the conversation.

  • Posts: 99
  • Thank you received: 3
6 years 3 months ago #228162

Merci Jérôme pour ces réponses.

Je sais que vous avez énormément de boulot donc pas de souci, on attendra que la commande détaillée par vendeur dans l'email client se mette en place, je voulais juste savoir si c'était toujours d'actualité.

Pour la surcharge d'email, je n'ai pas trouvé comment modifier le sujet à partir du preload ni comment est géré son affichage dans le HTML. J'arrive à modifier à peu près tout le reste, c'est super, mais pas le sujet car je n'ai pas trouvé la variable correspondante.

Please Log in or Create an account to join the conversation.

Moderators: Obsidev
Time to create page: 0.099 seconds
Powered by Kunena Forum