Virtuemart 1.1 - Mise à jour du statut de commande après paiement CB SERMEPA

Réduire
X
  • Filtrer
  • Heure
  • Afficher
Tout effacer
nouveaux messages

  • [Problème] Virtuemart 1.1 - Mise à jour du statut de commande après paiement CB SERMEPA

    Bonjour,

    j'ai un souci et impossible de trouver des pistes autrement que sur les forum espagnol et du coup, je n'arrive toujours pas à faire fonctionner la mise à jour automatique du statut de commande.

    Je dois paramétré un mode de paiement pour un TPV d'une banque espagnole ...
    J'ai trouvé des sources pour m'aider à mettre en place sur virtuemart et d'ailleurs, ça fonctionne (com_servired) SAUF que ma commande payée n'est jamais mise à jour ...

    Ce composant prévoit une urlOK pour le retour en boutique si tout c'est bien passé auprès de la banque, une urlKO s'il y a eu une erreur sur le paiement, plus une URLMerchant qui est le lien du fichier de notification (dans administrator/components/com_virtuemart)

    Une fois que j'accède au site de la banque pour payer, tout se passe normalement, je retourne sur le site, je vois bien dans l'url la réponse de la transaction mais ma commande reste "en attente" pire, je peux repayer comme ça plusieurs fois !

    Si je mets à jour la commande (à la main) c'est bon mais c'est pas faisable ...
    Comment savoir si le fichier de notification joue bien son rôle, qu'il est bien appelé quelque part ... sinon forcément, pas de mises à jour du statut des commandes ...

    Ce fameux fichier est basé sur le fichier notify.php du module de paiement paypal.

    Voilà, j'espère que j'ai été assez claire ??? j'avoue que mon cerveau est embrumé après ces 2 jours de tests infructueux

    Je suis sûre que c'est pourtant pas compliqué, j'ai zappé quelque chose ?!

    Si quelqu'un veut m'indiquer des pistes de recherche, ou autre ? même un encouragement

    Merci d'avoir lu et à ceux qui participeront

  • #2
    Re : Virtuemart 1.1 - Mise à jour du statut de commande après paiement CB SERMEPA

    Bonjour

    Je ne connais pas ce paiement en particulier.
    Est ce que tu as un .htpassword sur ton site. Si c'est le cas enlève le pour faire tes tests. Car la reponse notify.php est une reponse de serveur à serveur, et elle est bloqué par la demande de mot de passe.

    Tu peux regarder aussi dans tes logs, si l'URL a bien été appelée.
    alatak.net, Spécialiste VirtueMart et Développeur http://alatak.net

    Aucun MP. Je n'y réponds pas. Merci de votre compréhension.

    Commentaire


    • #3
      Re : Virtuemart 1.1 - Mise à jour du statut de commande après paiement CB SERMEPA

      D'abord un grand merci ALATAK de prendre le temps de me répondre !

      Je n'ai pas de .htpassword sur mon site et pour les logs, j'ai regarder en local (je test en local et en ligne sur 2 configurations différentes) : aucun appel au fichier notify ! merci pour la piste mais comme ça je ne sais pas où je dois intervenir ... je ne suis pas développeuse, je m'adapte mais là à force de patauger

      Je vais retenter une nouvelle fois de mettre en place en reprenant une einième fois depuis le début pour voir si avec les différentes méthode je n'ai vraiment pas d'appel au fichier notify ...

      J'avoue que je suis perdue dans la méthode de fonctionnement et l'appel à cette page de notification ... comment ça doit fonctionner ?

      Là j'ai une urlOK (retour commande), urlKO (si echec) - et ces 2 là fonctionnent - et une variable Ds_Merchant_MerchantURL qui est l'url de la page de notification et je vois pas la logique ni comment elle est censé mettre les statuts à jour ? ça fonctionne pourtant d'après ce que j'ai lu sur les forum espagnols ... ne serait-ce pas mieux que la page de retour contiennent l'appel à la notification ou l'inverse pour que le processus de mise à jour se fasse ? ou c moi qui n'arrive vraiment plus à réflêchir ???

      Commentaire


      • #4
        Re : Virtuemart 1.1 - Mise à jour du statut de commande après paiement CB SERMEPA

        Bonjour
        Si tu testes en local alors c'est normal que cela ne marche pas.
        Si tu testes sur un hebergement, alors il faut aller dans les logs. Si l'appel à l'url n'est pas fait, il faut verifier pourquoi.
        ne serait-ce pas mieux que la page de retour contiennent l'appel à la notification ou l'inverse pour que le processus de mise à jour se fasse ?
        Non, pour des raisons de fraude possible.
        La notification est un appel de serveur à serveur, qui evite toute manipulation frauduleuse.
        alatak.net, Spécialiste VirtueMart et Développeur http://alatak.net

        Aucun MP. Je n'y réponds pas. Merci de votre compréhension.

        Commentaire


        • #5
          Re : Virtuemart 1.1 - Mise à jour du statut de commande après paiement CB SERMEPA

          Bonjour,

          merci pour ces explications, c sûr que j'ai des lacunes de ce côté

          Après vérification en ligne donc, j'ai bien vu dans les logs les appels vers mon fichier de notification, et même pire sur au moins 2 des méthodes testées ... donc tout devrait fonctionner ! mais non

          Voilà une ligne en exemple "POST /v1/components/com_servired/notify.php HTTP/1.1" 200 2047 "-" "-"
          je sais pas s'il doit y avoir plus ? les paramètres par exemple ? non, je suis encore à côté de la plaque ?

          Faut que je sache pourquoi alors la mise à jour ne se fait pas, le fichier est appelé mais rien ne s'exécute ...

          Je vais encore essayé de chercher dans les problèmes de mise à jour de commande si je trouve des pistes. Je sèche complet

          Commentaire


          • #6
            Re : Virtuemart 1.1 - Mise à jour du statut de commande après paiement CB SERMEPA

            Bonsoir,

            c'est une bonne nouvelle, le fichier est appelé. Maintenant il faut chercher pourquoi il ne s’exécute pas correctement.

            La malheureusement je ne connais pas ce paiement.... à part inspecter le code...
            alatak.net, Spécialiste VirtueMart et Développeur http://alatak.net

            Aucun MP. Je n'y réponds pas. Merci de votre compréhension.

            Commentaire


            • #7
              Re : Virtuemart 1.1 - Mise à jour du statut de commande après paiement CB SERMEPA

              bonsoir !

              je ne sais pas exactement quoi donner ... peut-être la méthode la plus complète que j'ai trouvé sur le forum espagnol : com_servired.zip -> com_servired.1.0.4.Install.zip

              Sinon en plus simple, j'ai passerella_servired.zip -> passarella_servired.zip

              Dedans il y a tous les fichiers utilisés et les infos d'install ...

              Ce sont les 2 méthodes que je testes, elles fonctionnent, appelles bien chacune leur fichier de notification mais aucun changement du statut de commande.

              [D'ailleurs si elles aident certains qui en aurait besoin pour ce type de TPV, avec plaisir et merci aux joomlistes espagnols ! ]

              Elles sont très simples à mettre en place sauf que pour moi, le changement de statut ne fonctionne pas :-(

              Je suis encore en train de décortiquer le forum à la recherche de LA piste mais ??? pour l'instant rien ... je m'embourbe

              Commentaire


              • #8
                Re : Virtuemart 1.1 - Mise à jour du statut de commande après paiement CB SERMEPA

                ... bon j'abandonne pour ce soir espérant que la nuit me souffle une idée ... j'ai refait le tour et tester les petites pistes que j'ai croisé : hébergement, htaccess, chmod ... je vois tellement plus rien & ça doit être simple j'suis sûre en plus ... classique ... ... à suivre ...

                Commentaire


                • #9
                  Re : Virtuemart 1.1 - Mise à jour du statut de commande après paiement CB SERMEPA

                  Bonjour,

                  j'avance ! ça viens du fichier notify.php ... quelque chose qui ne va pas dans le code :-( j'ai modifié des conditions pour voir si le fichier était executé et oui, je reçois un mail d'erreur de la transaction donc il n'actualise pas l'état de commande ... pourtant la transaction a bien réussi.

                  Dans le mail envoyé par VM pour me signifié l'échec de la transaction il est noté que la signature reçu ne correspond pas à celle attendue :-( C'est dans le fichier notify.php dans la façon de reproduite la signature puisque les 2 valeurs sont bien différentes au final.

                  Voici l'erreur dans le mail : signature erronée ...
                  Firma recibida: 8DE4558BE609407B2F742A42F3FBB00C139E0671
                  Firma esperada: A28B282B681E44566DEC27A10BBD1012F314604D

                  Je creuse mais je sent que ça se complique pour une non développeuse ?

                  Bonne journée

                  Commentaire


                  • #10
                    Re : Virtuemart 1.1 - Mise à jour du statut de commande après paiement CB SERMEPA

                    Bonjour

                    Je creuse mais je sent que ça se complique pour une non développeuse ?
                    Non .. tu te débrouilles très bien..
                    C'est probablement un problème avec la config de ton paiement maintenant.
                    alatak.net, Spécialiste VirtueMart et Développeur http://alatak.net

                    Aucun MP. Je n'y réponds pas. Merci de votre compréhension.

                    Commentaire


                    • #11
                      Re : Virtuemart 1.1 - Mise à jour du statut de commande après paiement CB SERMEPA

                      merci ALATAK !

                      mais je trouve ça de plus en plus compliqué de trouver la solution ... y'a une histoire de cryptage de la signature SHA1 si ça dis quelque chose à quelqu'un ... bref, à mon avis y'a un souci entre celle reçu de la banque et celle traitée par le module de paiement au décryptage ?

                      // Cálculo de la firma esperada de los datos.
                      global $ServiredConfig;
                      require(dirname(__FILE__).'/prepend.php');
                      $dblAmount = $db->f("order_total");
                      $mixTransaction = CalculateTransactionSignature($Ds_Order, $dblAmount, $Ds_Response);

                      $ps_order = new ps_order;
                      $ps_order_status = new ps_order_status;

                      if($Ds_Signature == $mixTransaction['Signature']){
                      C'est ce if qui ne se vérifie pas si j'ai tout suivi ? où et qu'est-ce que je devrais modifier ... je comprends pas trop comment c'est censé fonctionner :-(

                      Commentaire


                      • #12
                        Re : Virtuemart 1.1 - Mise à jour du statut de commande après paiement CB SERMEPA

                        pfff ... je comprends pas ce que je fait et surtout dès que je tente de modifier cette condition pour voir si le reste du processus de changement de commande veut bien passer mais du coup, ça semble plus fonctionner ...

                        Pour m'aider en plus les mails de validation de paiement généré par mon fichier notify arrivent plus de 10min ap le paiement ... du coup, j'm'embrouille encore plus dans mes tests !

                        Une piste serait la bienvenue :-)

                        Commentaire


                        • #13
                          Re : Virtuemart 1.1 - Mise à jour du statut de commande après paiement CB SERMEPA

                          AU SECOURS, oh grande alatak si jamais tu pouvais m'aiguiller je vais exploser

                          ou une autre bonne âme bienfaitrice d'ailleurs

                          je tourne en rond, le souci viens surement de la signature ... ça ne peut pas être à cause du mode de test ? sinon c'est dans le SHA-1 mais là c du chinois pour moi

                          en même temps parfois je reçois un mail du notify.php parfois 1H après et parfois encore jamais ! c normal ???

                          du coup, j'ai même pas l'impression d'avancer dans mon problème et le temps presse ce qui ne m'aide pas dans une réflexion sereine ...
                          Je sais que dans ces cas là faut décrocher mais j'vais pas y arriver tant que je ne trouve pas une solution qui fonctionne ...

                          Une idée ?

                          Commentaire


                          • #14
                            Re : Virtuemart 1.1 - Mise à jour du statut de commande après paiement CB SERMEPA

                            bon j'ai refait le tour du forum en espagnol mais pas plus d'idée ... et pas de réponse à mon post sur leur forum d'ailleurs, le principal post où se trouve le composant servired de malversan : http://www.joomlaspanish.org/foros/f...-45188-12.html [bon quand ça veut bien charger, depuis ce soir c impossible]

                            Et aussi un tuto vidéo pour voir que c super simple à mettre en place avec d'autres fichiers : http://www2.webempresa.com/blog/item...irtuemart.html

                            J'ai regardé sur la console OVH (côté serveur boutique - logs) et SERVIRED (côté banque - HTTP et mail - synchronisé ou non c pareil) : tout se déroule normalement donc ça viens du fichier notify qui doit pas être correct ? mais là je sèche ... toujours

                            Je sais juste qu'il est basé sur le notify de paypal ... si ça aide quelqu'un pour me dire comment ça doit fonctionner ?

                            La clé fournit par la banque pour le test ne serait-elle pas en cause ? c'est pas le genre d'erreur que je n'aurai plus une fois en production par hasard (ça me ferai rager quand même un poil si c t que ça !) mais je trouve pas ça logique ... pour tester un script.

                            Commentaire


                            • #15
                              Re : Virtuemart 1.1 - Mise à jour du statut de commande après paiement CB SERMEPA

                              Bonjour

                              SHA-1 est un algorithme d'encryptage.
                              Je ne pense pas que cela vienne du fichier notify, mais plutôt des données que tu fournis.
                              Plusieurs possibilités: la banque t'a fourni de mauvaise cle pour encrypter. Cela arrive parfois. Vérifie auprès d'eux.
                              Soit toi, tu as mal configuré, et fournis un mauvais paramètre.

                              Vérifie déjà auprès de la banque.
                              Dernière édition par alatak à 06/10/2011, 09h20
                              alatak.net, Spécialiste VirtueMart et Développeur http://alatak.net

                              Aucun MP. Je n'y réponds pas. Merci de votre compréhension.

                              Commentaire

                              Annonce

                              Réduire
                              1 sur 2 < >

                              C'est [Réglé] et on n'en parle plus ?

                              A quoi ça sert ?
                              La mention [Réglé] permet aux visiteurs d'identifier rapidement les messages qui ont trouvé une solution.

                              Merci donc d'utiliser cette fonctionnalité afin de faciliter la navigation et la recherche d'informations de tous sur le forum.

                              Si vous deviez oublier de porter cette mention, nous nous permettrons de le faire à votre place... mais seulement une fois
                              Comment ajouter la mention [Réglé] à votre discussion ?
                              1 - Aller sur votre discussion et éditer votre premier message :


                              2 - Cliquer sur la liste déroulante Préfixe.

                              3 - Choisir le préfixe [Réglé].


                              4 - Et voilà… votre discussion est désormais identifiée comme réglée.

                              2 sur 2 < >

                              Assistance au forum - Outil de publication d'infos de votre site

                              Compatibilité: PHP 4.1,PHP4, 5, 6DEV MySQL 3.2 - 5.5 MySQLi from 4.1 ( @ >=PHP 4.4.9)

                              Support Version de Joomla! : | J!3.0 | J!2.5.xx | J!1.7.xx | J!1.6.xx | J1.5.xx | J!1.0.xx |

                              Version française (FR) D'autres versions sont disponibles depuis la version originale de FPA

                              UTILISER À VOS PROPRES RISQUES :
                              L'exactitude et l'exhaustivité de ce script ainsi que la documentation ne sont pas garanties et aucune responsabilité ne sera acceptée pour tout dommage, questions ou confusion provoquée par l'utilisation de ce script.

                              Problèmes connus :
                              FPA n'est actuellement pas compatible avec des sites Joomla qui ont eu leur fichier configuration.php déplacé en dehors du répertoire public_html.

                              Installation :

                              1. Téléchargez l'archive souhaitée : http://afuj.github.io/FPA/

                              Archive zip : https://github.com/AFUJ/FPA/zipball/master

                              2. Décompressez le fichier de package téléchargé sur votre propre ordinateur (à l'aide de WinZip ou d'un outil de décompression natif).

                              3. Lisez le fichier LISEZMOI inclus pour toutes les notes de versions spécifiques.

                              4. LIRE le fichier de documentation inclus pour obtenir des instructions d'utilisation détaillées.

                              5. Téléchargez le script fpa-fr.php à la racine de votre site Joomla!. C'est l'endroit que vous avez installé Joomla et ce n'est pas la racine principale de votre serveur. Voir les exemples ci-dessous.

                              6. Exécutez le script via votre navigateur en tapant: http:// www. votresite .com/ fpa-fr.php
                              et remplacer www. votresite .com par votre nom de domaine


                              Exemples:
                              Joomla! est installé dans votre répertoire web et vous avez installé la version française du fichier FPA:
                              Télécharger le script fpa-fr.php dans: /public_html/
                              Pour executer le script: http://www..com/fpa-fr.php

                              Joomla! est installé dans un sous-répertoire nommé "cms" et vous avez installé la version française du fichier FPA:
                              Télécharger le script fpa-fr.php dans: /public_html/cms/
                              Pour executer le script: http://www..com/cms/fpa-fr.php

                              En raison de la nature très sensible de l'information affichée par le script FPA, il doit être retiré immédiatement du serveur après son utilisation.

                              Pour supprimer le script de votre site, utilisez le lien de script de suppression fourni en haut de la page du script. Si le lien de suppression échoue pour supprimer le script, utilisez votre programme FTP pour le supprimer manuellement ou changer le nom une fois que le script a généré les données du site et le message publié sur le forum. Si le script est toujours présent sur le site, il peut être utilisé pour recueillir suffisamment d'informations pour pirater votre site. Le retrait du script empêche des étrangers de l'utiliser pour jeter un oeil à la façon dont votre site est structuré et de détecter les défauts qui peuvent être utilisé à vos dépends.
                              Voir plus
                              Voir moins
                              Travaille ...
                              X