THELIA Forum

Welcome to the THELIA support and discusssion forum

Announcement

Rejoignez la communauté sur le Discord Thelia : https://discord.gg/YgwpYEE3y3

Offline


Bonjour,
Comment vérifier ou écouter l'event qui indique que le produit est arrivé à 0 car un autre client est en cours d'acheter, mis dans son panier et en attente de paiement

mais pas pour thélia qui le prend toujours à 1 tant que vous n'avez pas validé le paiement exemple chèques, virement bancaire

pour éviter que deux clients achètent  le même produit, même pse-name (taille, color etc) et l'ajoute au panier

sachant que dans les Paramètres de configuration
check-available-stock =1

es-ce que la version thélia 2.3.4 template d'origine gère directement le problème cité ci-dessus ?

Offline


La décrémentation du stock est décidée par le module de paiement. Il y a deux cas de figure :

1) Si la méthode manageStockOnCreation() du module de paiement retourne true, le stock sera décrémenté lors de la création de la commande, c'est à dire lorsque le client clique le bouton "Payer".

2) Si la méthode manageStockOnCreation() revoie false, alors le stock est décrémenté lorsque le paiement de la commande est confirmé.

Pour les module de paiement chèque et virement, le stock est décrémenté lorsque la commande passera à l'état payé (manageStockOnCreation() revoie false). Ça parait logique, dans la mesure où il est préférable de gérer manuellement le stock dans ce cas, étant donné que le paiement peut mettre plusieurs jours à arriver (ou ne jamais arriver).

Pour les modules de paiement "en ligne", le stock est décrémenté lorsque lke client clique le bouton "payer" (manageStockOnCreation() revoie true)

Si tu veux modifier ce comportement, il te faut intervenir dans le code du module, il n'est pas possible de modifier ça depuis le back-office.


OpenStudio Toulouse

Offline


merci pour l'éclaircissement
Donc
* On peut combiner (comme tu préconises en agissant sur le cœur de chaque module virement et chèque) les deux méthodes sans altérer le mode de paiement carte bancaire et décrémenter le stock ce qui évite un achat qui serait proche de 1 produit restant et n'existerait plus à cet instant pour l'autre customer,

et ne serait plus renouvelable (ce qui permet dans d'autres situations de remettre les compteurs des produits) dans notre cas (car limite de produit dans un modèle)

* avoir un client en mode carte bancaire pour décrémenter le stock et un autre client en cours d'achat, mis dans son panier et en attente de paiement chèques, virement bancaire

1) Si la méthode manageStockOnCreation() du module de paiement retourne true, le stock sera décrémenté lors de la création de la commande, c'est à dire lorsque le client clique le bouton "Payer".

Mais avec cette méthode on se retrouve avec la possibilité d'acheter un produit qui est peut-être plus disponible

Pour les module de paiement chèque et virement, le stock est décrémenté lorsque la commande passera à l'état payé (manageStockOnCreation() revoie false). Ça parait logique, dans la mesure où il est préférable de gérer manuellement le stock dans ce cas, étant donné que le paiement peut mettre plusieurs jours à arriver (ou ne jamais arriver).

Pour les modules de paiement "en ligne", le stock est décrémenté lorsque lke client clique le bouton "payer" (manageStockOnCreation() revoie true)

Question
Quelle option est la plus pérenne ?
Faut-il opter pour la Méthode 1) pour tous les types de paiement  ?
Méthode 2) Si gestion manuelle du stock et paiement "en ligne" quel plugin permet d'obtenir une notification d'un niveau bas CAD 1 produit restant dans telle déclinaison ou quelle autre alternative pour définir ce cas et ne pas laisser un client qui désire tel modèle sans achat ?

Last edited by stephst84 (20-06-2019 19:21:32)

Offline


Au moment de cliquer "payer", le stock est vérifié. Si le produit n'est plus disponible, le client est redirigé vers la page panier avec un message signalant le problème.

Pour ce qui est de la meilleure méthode, à vous de voir comment vous voulez gérer la chose, sachant qu'il n'existe pas à ma connaissance un module qui "permet d'obtenir une notification d'un niveau bas"


OpenStudio Toulouse

Offline


Merci pour les informations