Bug plusieurs notifications pour une seule transaction reussie

  • Posts: 167
  • Thank you received: 11
6 years 7 months ago #291897

-- HikaShop version -- : 3.4.0
-- Joomla version -- : 3.8.6
-- PHP version -- : 7.0.27
-- Browser(s) name and version -- : Firefox 59.0.02

Bonjour,
Je viens pour une même transaction d'avoir trois notifications vendeurs identiques envoyées aux mêmes horaires. Aucune modif dans la config Hikashop qui explique cela . Les commandes précédentes ce matin étant normales.
Le premier mail, logique par rapport à la config HS, indique une commande crée.
Ensuite au lieu d'avoir juste deux emails : la copie de celui destiné au client indiquant la commande confirmée, donc payée accompagnée de la facture pdf + la notification de paiement destinée au vendeur, nous avons reçu deux autres fois ces deux derniers mails.
Le soucis supplémentaire c'est que sur les emails client (1/3 et 3/3) de confirmation il y a un n° de facture incorrect (52 au lieu de 16)...52 étant le N° de la commande et 16 devrait être celui de la facture car la facture précédente est la N°15

Pas de soucis au niveau de la console Paybox qui indique un seul paiement OK. Idem Back End HS commande confirmé normalement OK. Dans le détail de ma commande N°52 (Back end HS) le numéro de facture est bien N° 16...

Je viens de faire un test d'achat sur un produit test à 2 € et tout est OK avec un N° de facture N° 17 et un N° de commande N° 53...

Ps : mes N°de commandes et de factures ne sont pas identiques mais c'est "normal" car je n'ai pas fait le "truncat" de remise à 0 sur PHPmyadmin après les tests pré-production...
Ps 2 : pour info le site est pour l'instant en http et https avant de passer complétement et définitivement en https d'ici quelques semaines...pour des raisons de 301 Google SEO.
ps 3 : sur le back end HikaShop 3.4.0 dans la section commande, le bouton en haut à gauche "facture" après avoir sélectionné une commande semble inopérant...aucun effet?

Auriez vos une idée de l'origine de ce pb? S'agit il d'un Bug?

Autre chose qui n'a rien à voir : lorsque j'effectue un remboursement depuis la console Verifone Paybox. Le statut de ma commande ne change pas automatiquement sur mon back end Hikashop, je suis obligé de transformer manuellement le statut de la commande pour la passer à remboursée. Y a t il une solution pour que cela se fasse automatiquement?
Merci d'avance de votre aide

Attachments:
Last edit: 6 years 7 months ago by gil.

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

  • Posts: 82868
  • Thank you received: 13376
  • MODERATOR
6 years 6 months ago #291900

Bonjour,

Dans les emails, c'est toujours le numéro de commande qui est affiché et non le numéro de facture. Le numéro de facture est uniquement sur la facture. Donc il est normal que vous ayez 52 sur l'email si le numéro de commande est 52, peu importe la valeur du numéro de facture.

Concernant les emails en doublon, cela indique que Paybox a envoyé la notification de paiement plusieurs fois à votre site.
Je ne vois pas pourquoi Paybox ferait cela pour votre site et pas les autres. Peut être quelque chose à voir avec la configuration du site en particulier ou du compte marchand.
Peut être que le support paybox pourrait vérifier leur logs pour voir pourquoi la notification est renvoyé plusieurs fois.
Après il peut être intéressant de rajouter ce code:
if($dbOrder->order_status == $order_status)
return true;
après la ligne:
$payment_status = 'Accepted';
dans le fichier plugins/hikashoppayment/paybox/paybox.php pour éviter de confirmer la commande si elle l'a déjà été.

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

  • Posts: 167
  • Thank you received: 11
6 years 6 months ago #291988

Bonjour Nicolas,
1/ Merci pour cette réponse.
2/

Dans les emails, c'est toujours le numéro de commande qui est affiché et non le numéro de facture. Le numéro de facture est uniquement sur la facture. Donc il est normal que vous ayez 52 sur l'email si le numéro de commande est 52, peu importe la valeur du numéro de facture.

Le soucis c'est que sur deux des emails anormalement reçu le N° de la facture n'était pas le bon mais correspondait au N° de la commande. Ce qui n'est pas le cas avec notre configuration Hikashop ! Sur le troisième mail le N° de commande et de facture sont OK.

Peut être que le support paybox pourrait vérifier leur logs pour voir pourquoi la notification est renvoyé plusieurs fois.

Nous venons d'écrire à Paybox pour voir si ils peuvent voir dans leur logs si le PB vient d'eux.

3 /Merci pour les lignes de code çi dessous. Est ce que il va falloir à chaque mise à jour de Hikasho rajouter ce code ou pas?

4/ Nous avons toujours ce problème entre Paybox et Hikashop mais pas de manière continue. Pour une de nos transaction avant hier nous n'avons pas reçu copie du mail confirmation de commande avec la facture destiné au client, ni de confirmation de paiement, alors que le paiement est OK sur la console Paybox et la commande est en statut confirmé sur Hikashop. Depuis les commandes fonctionnent à nouveau normalement en terme de notification.
Je ne comprend d’où cela provient?

5 /!! Ps : le pb vient à nouveau d'arriver ce dimanche matin : une commande (N°61 ok) avec deux notifications paiement "accepted" (n°61 ok) et deux mails de confirmation de commande au client avec facture jointe en PDF mais une facture à le numéro 00025/04/2018 (normal vu notre config HS [n° commande # n°facture]) et l'autre notification confirmation avec facture 00061/04/2018.
Je ne pense pas que le pb viennent de Paybox car le N° de facture ne changerait pas d'un mail à l'autre...

J'utilise le plug in Hikashop "PDF Invoice plugin install package" acheté mi 2017 (Date: 2017-06-09 Order: C3Q2X2K09 )

Merci d'avance de votre aide.
Cdlt

Last edit: 6 years 6 months ago by gil.

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

  • Posts: 82868
  • Thank you received: 13376
  • MODERATOR
6 years 6 months ago #292019

Bonjour,

2. Comme je l'expliquais dans mon précédent message, le numéro de facture n'est pas présent dans les emails envoyés par HikaShop.
Donc il est impossible que le numéro de facture soit faux dans les emails puisqu'il n'est pas dans les emails du tout... à moins que vous l'ayez rajouté vous-même, et dans ce cas il y a surement un soucis avec la façon dont vous l'avez rajouté.

3. Si vous confirmez que cela fonctionne, nous pouvons les ajouter dans la prochaine version d'HikaShop et ainsi vous n'aurez rien à faire pour les mises à jour futures.

4. Donc la commande est confirmée mais pas d'email. Dans ce cas, vérifiez le menu Customers>Emails history. Là vous avez tous les emails envoyés par HikaShop. Avez-vous l'email que vous auriez dû recevoir ? Si non, alors l'email n'a pas été généré par HikaShop, soit à cause d'un problème (par exemple, le PDF de la facture n'a pas pu être généré à cause de caractères spéciaux dans le nom d'un produit de la commande) soit car l'email a été désactivé dans Système>Emails. Si oui, alors l'email a été généré et envoyé par HikaShop et soit votre serveur email n'a pas pu l'envoyé, soit le serveur email receveur l'a refusé. Dans ce cas, il faudra se rapprocher de l'hébergeur avec les informations de l'email pour qu'il regarde dans les logs du serveur email pourquoi l'email n'a pas pu être transmis.

5. Regardez dans la section "historique" de la commande. Vous devriez avoir une ligne pour la création de la commande et une ligne pour chaque notification de paiement. Si vous n'avez qu'une ligne de notification, c'est en effet qu'il n'y a qu'une notification de paiement reçue et donc le problème ne vient pas de paybox. Notez que par défaut le plugin PDF ne génère une facture PDF que pour la confirmation de la commande, et donc après la génération du numéro de facture. Cependant, il est possible de configuré le plugin pour générer une facture PDF à la création de la commande, et donc avant la génération du numéro de facture. Dans ce cas, c'est le numéro de commande qui est utilisé en tant que numéro de facture dans le PDF. Si c'est ce qu'il se passe sur votre site, alors le soucis vient des paramètres du plugin PDF qui est mal configuré. Donc vérifiez cela.

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

  • Posts: 167
  • Thank you received: 11
6 years 6 months ago #292043

Bonsoir Nicolas,
Merci pour votre réponse détaillé, c'est vraiment appréciable.

2/ Je parlais non pas du numéro de facture dans l'email mais dans le pdf joint à l'email généré par le plug in " "PDF Invoice plugin install package". Configuration plugin :



3/ Je vais faire des tests cette semaine en rajoutant le code PHP que vous m'avez fourni ci dessous ("à placer ici plugins/hikashoppayment/paybox/paybox.php") et je reviendrai vers vous ici pour vous tenir au courant. Ce qui m'étonne est que cela ne se passe pas continuellement mais de manière, à première vue, aléatoire un fois sur 5 ou 10 à vu de nez.
Voici par exemple l'historique de la commande 61 avec deux confirmations hier matin et les mails à destination du client accompagnés chacun du pdf facture affichant deux N° de facture différent (le n° normal suivant le précedent [ici 25] et le N° identique de la commande [ici 61] ce qui n'est pas normal dans mon cas) ...:

Voici donc pour cette première partie concernant l'envoi de plusieurs notification pour une même commande confirmée. Y a t il un lien avec le pb ci dessous?


Concernant ce soucis de commande sans mail de confirmation (commande N° 56), seule fois ou ce pb est arrivé :

4 / Voici une capture d'écrans du journal des emails (customers> email History) concernant cette commande. Il y a plusieurs envois ce qui me semble anormal :


5 / Toujours pour la même commande 56 voici l'historique de cette commande à nouveau avec plusieurs notifications, ce qui semble logique compte tenu de ci dessus mais anormal?


Et enfin du côté de Paybox les logs de cette commande 56 envoyé par le service technique Pyabox à ma demande



Merci d'avance de votre aide et d'essayer de m'éclairer sur tout cela.
Cdlt

Last edit: 6 years 6 months ago by gil.

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

  • Posts: 82868
  • Thank you received: 13376
  • MODERATOR
6 years 6 months ago #292097

Bonjour,

D'après vos nouvelles informations, le soucis est que Paybox ne reçoit pas de réponse à ses notifications de paiement dans les 20 secondes et du coup, il pense qu'il y a eu un problème et renvoi la notification une seconde fois.
Donc le code que j'ai fourni pour le plugin paybox évitera la duplication des emails de notification.
Le fait que le processing de la notification de paiement met plus de 20 secondes vient surement de la communication entre Joomla et votre serveur d'envoi d'emails. Suivant comment la connexion avec votre serveur d'email est faite et suivant la rapidité de traitement du serveur, un envoi d'email peut aller de moins d'une seconde à plusieurs secondes. Et si vous avez des pièces jointes (genre la facture PDF) alors cela ralenti encore plus l'envoi de l'email car il faut transmettre la pièce jointe au serveur d'envoi.
En plus, il y a deux emails envoyés à chaque fois: celui de notification de paiement et cela envoyé à l'utilisateur pour la confirmation de la commande. Donc il est fort possible que cela vienne de là.
Testez le changement de statut d'une commande dans le backend avec envoi de l'email de notification et vous verrez le temps que prend le process, et cela pour un seul email. Si cela met 10 secondes avant d'avoir la fin du processing, alors cela confirmera la théorie.

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

  • Posts: 167
  • Thank you received: 11
6 years 6 months ago #292103

Bonjour,
Merci de cette réponse...un 1 er Mai!
Bien noté et compris l'hypothèse de la lenteur des emails et du délai de 20 secondes chez Paybox. Ce qui explique le côté aléatoire du pb qui n'est plus arrivé depuis dimanche dernier. Le site est sur un mutualisé OVH "performance" mais le mail marchand qui reçoit les notifications passe par un office 365 avec des paramétrages DNS spécifiques ce qui explique peut être des ralentissements à certains moments...sources des délais emails et des pb.
Je vais transmettre vos infos à Paybox pour voir si ils ont la possibilité de faire passer ce délai à plus de 20 secondes.
Nous avons testé la vitesse des notifications en faisant des commandes fictives et les notifications sont rapides (4 ou 5 secondes environ). La facture pdf fait 630 Ko.
On va insérer le code PHP dans le Plugin Hikashop dédié à Paybox dans les jours qui viennent et vous tenir au courant.
Encore merci et à bientôt.

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

Time to create page: 0.096 seconds
Powered by Kunena Forum