Project

General

Profile

Development #91726

lingo: favoriser et permettre un email sur les BasketItem

Added by Benjamin Dauvergne about 1 month ago. Updated 19 days ago.

Status:
Solution déployée
Priority:
Normal
Target version:
-
Start date:
12 June 2024
Due date:
% Done:

0%

Estimated time:
Patch proposed:
No
Planning:
No

Description

Les backends payfip_ws et saga (payfip_ws en vrai) sont chatouilleux sur la présence de l'email et son format pour pouvoir procéder à un paiement, or la vue BasketItemPayView (qu'on utilise dans ces cas là) favorise request.user.email ou item.user.email au lieu de l'email attaché au BasketItem. Il faudrait faire l'inverse pour:
  • permettre des paiements sur formulaire anonyme qui recueillent directement l'email sans que ce soit impacté par le statut connecté ou pas,
  • permettre une sur-validation des emails dans les formulaires de paiement utilisant payfip_ws (la partie locale se limite visiblement à [A-Za-z0-9.-]+ ce qui est moins large que ce qu'on permet au niveau d'authentic et éviter le souci d'un BasketItem impayable.

À ma connaissance c'est très rare qu'on envoie une mail dans les appels à add-basket-item mais il me semble de toute façon si c'est fait, l'effet escompté est bien que cet email soit pris en compte.

Dans AddBasketItem il est seulement permis un email si pas de NameID et celui-ci est pris dans la query-string plutôt que dans le post (je me suis fait induire en erreur par la configuration de certains appel dans w.c.s1 qui passe ça en query-string):
  • toujours prendre l'email dans le POST s'il existe

On pourrait aussi valider l'email à ce moment là mais eopayment n'expose pas cette validation actuellement.

Tout ça est dépendant du mode 1 item = 1 paiement, mais c'est définitivement le seul mode viable pour payfip.

Dans BasketItemPayView:
  • si item.email existe, l'utiliser,
  • sinon garder les backups actuels.

Associated revisions

Revision 80bbc3fa (diff)
Added by Benjamin Dauvergne 19 days ago

lingo: always take email from add-basket-item payload (#91726)

Revision bcc3a62c (diff)
Added by Benjamin Dauvergne 19 days ago

lingo: prefer item.email in BasketItemPayView (#91726)

Revision b033c887 (diff)
Added by Benjamin Dauvergne 19 days ago

lingo: use same behaviour for email in PayView (#91726)

History

#1

Updated by Benjamin Dauvergne about 1 month ago

  • Description updated (diff)
#3

Updated by Robot Gitea about 1 month ago

  • Status changed from Nouveau to En cours

Benjamin Dauvergne (bdauvergne) a ouvert une pull request sur Gitea concernant cette demande :

#7

Updated by Benjamin Dauvergne about 1 month ago

  • Description updated (diff)
#8

Updated by Benjamin Dauvergne about 1 month ago

  • Status changed from En cours to Solution proposée
#9

Updated by Robot Gitea 22 days ago

  • Status changed from Solution proposée to Solution validée

Corentin Sechet (csechet) a approuvé une pull request sur Gitea concernant cette demande :

#10

Updated by Robot Gitea 19 days ago

  • Status changed from Solution validée to Résolu (à déployer)

Benjamin Dauvergne (bdauvergne) a mergé une pull request sur Gitea concernant cette demande :

#11

Updated by Transition automatique 19 days ago

  • Status changed from Résolu (à déployer) to Solution déployée

Also available in: Atom PDF