OSFormation Posted 21 hours ago Share Posted 21 hours ago Bonjour, Depuis plusieurs années je rencontre un problème qui arrive de manière ponctuelle, puis il disparait. Il réapparait une fois par mois et parfois chaque jour comme c'est le cas là depuis une bonne semaine. Le problème en question : dans le back-office, le détail de la commande n'affiche pas tous les produits que le client a commandé, parfois aucun. Le statut de la commande se met sur le premier de la liste des statuts de commande. Pourtant le client a bien été débité. Je n'ai pas trouvé de paramètres communs entre les commandes concernées par ce problème ou bien ils m'échappent. Parfois les clients ne reçoivent pas le mail de confirmation de commande. J'ai regardé dans les logs, voici ce que j'ai trouvé : [2025-01-09 09:49:17] ps_checkout.ERROR: Command failed: PrestaShop\Module\PrestashopCheckout\Order\Query\GetOrderForPaymentCompletedQuery {"exception":"[object] (PrestaShop\\Module\\PrestashopCheckout\\Order\\State\\Exception\\OrderStateException(code: 1): Order state id 0 is invalid. Order state id must be number that is greater than zero. at /home/****/****/modules/ps_checkout/src/Order/State/ValueObject/OrderStateId.php:60)"} {"process_id":210386} Notez que j'utilise le mode de paiement Prestashop Checkout, mais j'ai aussi ce problème avec Paypal ou Stripe. Avez-vous une idée ou une piste à explorer ? Le site tourne sous 1.7.7.8. merci Link to comment Share on other sites More sharing options...
Alexandre Carette Posted 21 hours ago Share Posted 21 hours ago Salut OSFormation, 1) dans ta base de donnée il faudrait que tu regardes la ligne correspondant à id_order dans la table ps_orders (recherche par ref de commande), 2) regarde la valeur de la colonne current_state pour cette commande 3) verifie que cette valeur (id_order_state) existe dans ps_order_state bien à toi, Link to comment Share on other sites More sharing options...
Eolia Posted 20 hours ago Share Posted 20 hours ago Si la commande est incomplète ou sans statut c'est qu'un module tiers a crashé lors de l'exécution du hookValidateOrder. Regarder quels modules sont accrochés dessus et analyser les logs. Link to comment Share on other sites More sharing options...
OSFormation Posted 19 hours ago Author Share Posted 19 hours ago 15 minutes ago, Eolia said: Si la commande est incomplète ou sans statut c'est qu'un module tiers a crashé lors de l'exécution du hookValidateOrder. Regarder quels modules sont accrochés dessus et analyser les logs. Bonjour Eolia, Je n'ai justement pas de message d'erreur dans les fichiers logs (/var/logs/prod.log). Ci-joint les modules greffés sur hookValidateOrder. Link to comment Share on other sites More sharing options...
Eolia Posted 19 hours ago Share Posted 19 hours ago Alertes mail peut crasher si une des adresses enregistrées dans la tabe ps_mailalert_customer_oos est invalide (regardez également dans les logs Presta si pas de message à l'heure de ces commandes) Link to comment Share on other sites More sharing options...
CHRISCOM Posted 19 hours ago Share Posted 19 hours ago Bonjour @OSFormation avez-vous fait une comparaison entre deux commandes en erreurs (email du client, adresse, ...) ? Est-ce que la commande est accroché à un id_cart ? et si c'est le cas vérifié dans ps_cart si l'id est bien présent. Link to comment Share on other sites More sharing options...
OSFormation Posted 18 hours ago Author Share Posted 18 hours ago 1 hour ago, Eolia said: Alertes mail peut crasher si une des adresses enregistrées dans la tabe ps_mailalert_customer_oos est invalide (regardez également dans les logs Presta si pas de message à l'heure de ces commandes) Je viens de vérifier la table, j'ai trouvé deux adresses mails invalides que j'ai corrigées. Je n'ai pas trouvé d'erreur dans les logs Presta. Link to comment Share on other sites More sharing options...
OSFormation Posted 18 hours ago Author Share Posted 18 hours ago (edited) 2 hours ago, Alexandre Carette said: Salut OSFormation, 1) dans ta base de donnée il faudrait que tu regardes la ligne correspondant à id_order dans la table ps_orders (recherche par ref de commande), 2) regarde la valeur de la colonne current_state pour cette commande 3) verifie que cette valeur (id_order_state) existe dans ps_order_state bien à toi, Salut Alexandre, 1) oui la commande existe bien dans la table. La commande a toujours été créée, le soucis est qu'elle est incomplète (pas le bon statut, pas tous les produits) 2) et 3) je vais attendre que ce problème se reproduit à nouveau pour vérifier car j'ai changé manuellement le statut des commandes passées. Merci Edited 18 hours ago by OSFormation oublié de dire bonjour ! (see edit history) Link to comment Share on other sites More sharing options...
OSFormation Posted 18 hours ago Author Share Posted 18 hours ago (edited) 1 hour ago, CHRISCOM said: Bonjour @OSFormation avez-vous fait une comparaison entre deux commandes en erreurs (email du client, adresse, ...) ? Est-ce que la commande est accroché à un id_cart ? et si c'est le cas vérifié dans ps_cart si l'id est bien présent. Bonjour, l'id_cart est bien présent (dans la table ps420_orders) autrement dit les commandes sont bien rattachées à un panier et le panier contient bien tous les produits que le client a commandé. Sauf que dans la page détail de commande c'est pas le cas. Merci Edited 18 hours ago by OSFormation (see edit history) Link to comment Share on other sites More sharing options...
CHRISCOM Posted 17 hours ago Share Posted 17 hours ago Et dans order_detail vous avez aussi tous les produits commandés ? Link to comment Share on other sites More sharing options...
OSFormation Posted 17 hours ago Author Share Posted 17 hours ago (edited) 2 minutes ago, CHRISCOM said: Et dans order_detail vous avez aussi tous les produits commandés ? Non, il n'y a que les produits qui s'affichent le BO. J'ai vérifié cela tout juste avant de lire votre post. Probablement une erreur surviendrait au moment d'enregistrer un des produits dans la table order_detail. Edited 17 hours ago by OSFormation (see edit history) Link to comment Share on other sites More sharing options...
OSFormation Posted 17 hours ago Author Share Posted 17 hours ago J'ai au préalable fait des recherches sur le forum, j'ai trouvé plusieurs posts à ce sujet dont un qui remonte à 10 ans en arrière : Par contre pas de solution trouvée ! Link to comment Share on other sites More sharing options...
CHRISCOM Posted 16 hours ago Share Posted 16 hours ago Le problème pourrait venir coter paiement, j'ai eu un cas ou les produits n'était pas présent parce que la banque mettait trop de temps à répondre (Axepta BNP) et la commande se valider sans produit et sans statut. Link to comment Share on other sites More sharing options...
Alexandre Carette Posted 16 hours ago Share Posted 16 hours ago sur la commande ou il y a le pb quand tu changes le statut de la commande est ce que les produits re-apparaissent ? Link to comment Share on other sites More sharing options...
Eolia Posted 16 hours ago Share Posted 16 hours ago à l’instant, Alexandre Carette a dit : sur la commande ou il y a le pb quand tu changes le statut de la commande est ce que les produits re-apparaissent ? Ce serait magique^^ Les produits sont ajoutés dans ps_order_detail lors de la création de commande (ou si vous en modifiez le contenu ensuite) mais pas en changeant de statut. Link to comment Share on other sites More sharing options...
OSFormation Posted 14 hours ago Author Share Posted 14 hours ago 2 hours ago, Alexandre Carette said: sur la commande ou il y a le pb quand tu changes le statut de la commande est ce que les produits re-apparaissent ? Non Link to comment Share on other sites More sharing options...
OSFormation Posted 14 hours ago Author Share Posted 14 hours ago 2 hours ago, CHRISCOM said: Le problème pourrait venir coter paiement, j'ai eu un cas ou les produits n'était pas présent parce que la banque mettait trop de temps à répondre (Axepta BNP) et la commande se valider sans produit et sans statut. J'ai eu cette réflexion, je pense que c'est peu probable (mais pas impossible). Aujourd'hui on utilise uniquement Prestashop Checkout comme mode de paiement. On a eu le même soucis fut un temps lorsqu'on utilisait les deux autres modules Stripe et Paypal. Link to comment Share on other sites More sharing options...
CHRISCOM Posted 12 hours ago Share Posted 12 hours ago Il faudrait regarder les logs PHP et Apache à l'horaire exact où la commande est passée. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now