Pourquoi certaines commandes ne remontent pas dans Prestashop?

Le fait que certaines commandes ne remontent pas dans le Back Office Prestashop peut être lié à de nombreux points:

  1. Vérifiez que l'URL de notification soit bien paramétrée: Recherchez le chapitre Configurer la notification à la fin du paiement dans la documentation et vérifiez que vous avez correctement effectué ce paramétrage. Pour rappel la documentation est disponible dans la partie configuration du module: Cliquer pour accéder à la documentation de configuration du module.
  2. Vérifiez le code réponse de l'appel à l'URL de notification: Connectez-vous depuis le Back Office Expert, recherchez la transaction en question puis double cliquez sur celle-ci.

    Dans l'onglet Informations, recherchez Statut URL de notification et vérifiez que le statut soit bien Envoyé, les erreurs les plus fréquentes sont les suivantes:

    • Erreur 500

      Il arrive parfois qu’une erreur 500 apparaisse lors de l’appel à l’URL de notification. Cette erreur est un bug applicatif et ne signifie pas que le problème vienne de notre module. Pour avoir le détail de l’erreur, vous devez activer les logs apache de votre serveur puis rechercher l’appel en question qui a posé problème.

      Si vous n'avez pas accès aux logs du serveur, reportez-vous au chapitre Comment afficher les erreurs 500 sur Prestashop? de la FAQ pour faire afficher les erreurs sur la page de retour.

    • Erreur 404

      Vérifiez que l'URL de notification soit correctement paramétrée en reprenant le premier point de cet article.

  3. Vérifiez que le module a correctement répondu lors de l'appel: Pour vérifier la réponse du module, connectez-vous depuis le Back Office Expert, recherchez la transaction en question puis double cliquez sur celle-ci.

    Cliquez sur l'onglet Historique puis sélectionnez la ligne Appel URL de notification, dans l'encadré Info. complémentaire: Appel URL de notification, vous devez voir ceci: OK-Accepted payment, order has been updated.

    Si jamais vous observez le message fatal error, il peut être lié à:
    • L'URL de notification qui a été paramétrée est celle d'une boutique désactivée ou en maintenance: Dans le cas d'une utilisation multi-boutique, notre module affiche l'URL de la boutique Prestashop par défaut, si celle-ci est désactivée ou en maintenance il faudra dans ce cas renseigner l'URL d'une autre boutique dans le Back Office Expert.
    • Une erreur côté CMS: Dans ce cas il vous faudra regarder dans les logs d'erreur de votre serveur pour comprendre le problème, par exemple:
      • validateOrder - Secure key does not match: Cas rare d'un acheteur qui créé deux comptes clients identiques en faisant une fausse manipulation, Prestashop créé une secureKey dans la table ps_cart différente par rapport à la secureKey de la table ps_customer.

        La solution serait donc de mettre une secureKey identique entre les 2 tables puis de rejouer l'appel à l'URL de notification.