Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

erreur sur prestashop 1.7.7.0 #112

Open
kiksou opened this issue Jul 13, 2021 · 6 comments
Open

erreur sur prestashop 1.7.7.0 #112

kiksou opened this issue Jul 13, 2021 · 6 comments

Comments

@kiksou
Copy link

kiksou commented Jul 13, 2021

Bonjour a toi Troglogeek j'ouvre aujourd'hui une deuxième boutique en utilisant ton module , et vu que c'est le même compte bancaire et le même hébergeur je me suis permis de copier le dossier du module directement dans la nouvelle boutique, tout ce passe bien jusqu'au retour a la boutique ou j'obtiens ce message en mode debug 🐞

[PrestaShopModuleException]

TggAtosBaseBankReturnFrontController::recoverCart: unable to restore Cart#fr, cannot process bank response
at line 73 in file modules/tggatos/controllers/front/basebankreturn.php

  1.                 $this->bankResponse->order_id
    
  2.             ));
    
  3.         }
    
  4.     } else {
    
  5.         throw new PrestaShopModuleException(sprintf(
    
  6.             '%s: unable to restore Cart#%s, cannot process bank response',
    
  7.             __METHOD__,
    
  8.             $this->bankResponse->order_id
    
  9.         ));
    
  10.     }
    

TggAtosBaseBankReturnFrontController->recoverCart - [line 317 - classes/controller/FrontController.php]
FrontControllerCore->init - [line 39 - modules/tggatos/controllers/front/basebankreturn.php]
TggAtosBaseBankReturnFrontController->init - [line 15 - modules/tggatos/controllers/front/userreturn.php]
TggAtosUserReturnModuleFrontController->init - [line 287 - classes/controller/Controller.php]
ControllerCore->run - [line 518 - classes/Dispatcher.php]
DispatcherCore->dispatch - [line 17 - modules/tggatos/autodispatch/init.php]
tggatos_autodispatch - [line 4 - modules/tggatos/autodispatch/userreturn.pub.php] - [1 Arguments]

merci pour l'aide que tu pourrais m'apporter !

@kiksou
Copy link
Author

kiksou commented Jul 13, 2021

https://prestashop.blog.capillotracteur.fr juste une deuxième question s'agit il de ta page officielle par rapport a PayPal ?

@TrogloGeek
Copy link
Owner

Bonsoir, désolé pour le délai, j'avais vu l'email passer en pleine journée de travail et ai oublié d'y revenir le soir venu.

lorsque je mets dans un message d'erreur/exception un nom d'entité suivi d'un dièse, ce qui suit le dièse est un identifiant primaire.
Cart#fr => le module s'est embrouillé dans l'ordre des champs et a visiblement confondu langue et cartId en hydratant la réponse.
De mémoire, je vois deux causes qui peuvent changer l'ordre des champs:

  • le type de réponse: silencieuse, retour utilisateur boutique forcée, retour utilisateur boutique normal
  • la version des binaires SIPS

Je me souviens que pour dépanner des utilisateur qui avaient leur propre serveur SIPS il avait fallu changer le contenu de TggAtosModuleResponseObject::$fields ou TggAtosModuleResponseObject::$shortResponseUnavailableFields.

Il faudrait comparer les champs de réponse détaillés dans la doc fournie par la banque avec ceux des tableaux cités ci-avant.
En l'absence de doc bancaire, en activant les logs tu peux obtenir les messages bancaires reçu dans les fichiers de log écris par le module. Je te suggère d'appeler manuellement ton binaire response en ligne de commande et de comparer les champs des messages décodés avec les deux tableaux statiques cités plus haut, et d'ajuster au besoin. Mais il vaut mieux travailler à partir de la doc bancaire correspondant à ta version des binaires que par empirisme surtout sur une solution de paiement.

https://prestashop.blog.capillotracteur.fr juste une deuxième question s'agit il de ta page officielle par rapport a PayPal ?

Officielle au sens où c'est bien chez moi, sur mon serveur oui, mais abandonné et en friches depuis peut être pas loin de 10 ans ?
Je ne fais quasiment plus que du LTS sur ce module lié à une solution de paiement qui aurait déjà du être abandonnée par obsolescence et manque de robustesse début 2000 au plus tard,

@kiksou
Copy link
Author

kiksou commented Jul 16, 2021

merci TrogloGeek je m'y met ! je te ferais un retour !

@kiksou
Copy link
Author

kiksou commented Jul 19, 2021

TggAtosModuleResponseObject::$fields et TggAtosModuleResponseObject::$shortResponseUnavailableFields. se trouve dans quels fichier ? je cherche un peu partout ...

et j'ai essayé de call le binaire response sans succès de cette manière :

/prestashop_1/modules/tggatos/bin$ ./response

je my prend sûrement extrêmement mal

et ou je devrais chercher exactement dans la doc bancaire ?

@kiksou
Copy link
Author

kiksou commented Jul 19, 2021

le truc que je comprends pas c'est que j'ai strictement rien touché au niveau du module et que la banque LCL est dans le même compte est il possible que pour une 2eme boutique il faut un 2eme certificat ?

@TrogloGeek
Copy link
Owner

TggAtosModuleResponseObject::$fields et TggAtosModuleResponseObject::$shortResponseUnavailableFields. se trouve dans quels fichier ? je cherche un peu partout ...

le fichier principal : tggatos.php

et j'ai essayé de call le binaire response sans succès de cette manière :

/prestashop_1/modules/tggatos/bin$ ./response

je my prend sûrement extrêmement mal

il y a des paramètres à ajouter, vous pouvez soit obtenir les lignes de commandes du module en le débuggant soit a lisant la documentation d'implémentation.

et ou je devrais chercher exactement dans la doc bancaire ?

Cela dépend de la banque mais dans le titre du document on y trouve généralement "plugin" ou "implémentation". Ce qui vous intéresse est le détail d'appel du binaire response, et le détail de sa sortie texte.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants