Development #57367
ajouter un montant minimum/maximum aux backends
0%
Description
Pour éviter les erreurs avant d'arriver jusqu'au paiement.
Fichiers
Révisions associées
Historique
Mis à jour par Benjamin Dauvergne il y a plus de 2 ans
- Fichier 0001-add-minimal-and-maximal-amount-attribute-to-backends.patch 0001-add-minimal-and-maximal-amount-attribute-to-backends.patch ajouté
- Statut changé de Nouveau à Solution proposée
- Patch proposed changé de Non à Oui
Mis à jour par Serghei Mihai il y a plus de 2 ans
Mais du coup on n'exploite pas l'info avant d'éxecuter request
?
Mis à jour par Benjamin Dauvergne il y a plus de 2 ans
Serghei Mihai a écrit :
Mais du coup on n'exploite pas l'info avant d'éxecuter
request
?
L'idée ce serait plutôt d'exploiter ça au niveau de AddBasketItemApiView en tout premier lieu, pour éviter que la démarche ne crée des Item impayables, ensuite pour les Item déjà créé ou les factures directement au niveau de BasketItemPayView et PayView pour éviter de dépendre d'un message créé par eopayment, ça obligerait à définir une API au niveau des exceptions pour retourner un message intelligible. C'est aussi nécessaire aussi en général qu'eopayment lève des exceptions avec des messages directement exploitables, surtout qu'on peut les traduire depuis un moment, pour l'utilisateur mais ici je préfère quelque chose de restreint au problème notamment pour l'exploiter dans AddBasketItemApiView.
On peut ouvrir un autre ticket pour faire en sorte que PaymentException dipose d'une méthode get_user_message()
qui retournerait toujours quelque chose qu'on puisse présenter à l'utilisateur via messages.warning(request, ...)
. Si je prends le cas de payfip web-service il y a les erreurs SOAP (ici M3) qu'on pourrait codifier mais il y a aussi les erreurs réseaux qui sont remontés en termes barbares:
raise PayFiPError('Cound not initialize the SOAP client', e) ... raise PayFiPError('erreur-soap', str(zeep_error), zeep_error)
Dans ces deux cas e.get_user_message()
devrait retourner un truc de la forme "Le serveur de paiement est actuellement indisponible à cause d'un problème réseau. Veuillez réessayer plus tard.".
Mis à jour par Serghei Mihai il y a plus de 2 ans
- Statut changé de Solution proposée à Solution validée
Go for it. Mais faisons un ticket pour récupérer un message intelligible pour l'usager.
Mis à jour par Benjamin Dauvergne il y a plus de 2 ans
- Statut changé de Solution validée à Résolu (à déployer)
commit 6284e0fbb3852c03e3bed9ad41e0dea9f383acf8 Author: Benjamin Dauvergne <bdauvergne@entrouvert.com> Date: Tue Sep 28 21:51:36 2021 +0200 add minimal and maximal amount attribute to backends (#57367)
Mis à jour par Frédéric Péters il y a plus de 2 ans
- Statut changé de Résolu (à déployer) à Solution déployée
add minimal and maximal amount attribute to backends (#57367)