Projet

Général

Profil

Bug #56006

Caluire Axel: rendre get_invoice utilisable sans NameID

Ajouté par Nicolas Roche il y a plus de 2 ans. Mis à jour il y a plus de 2 ans.

Statut:
Fermé
Priorité:
Normal
Assigné à:
Version cible:
-
Début:
05 août 2021
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Oui
Planning:
Non

Description

Pour permettre le paiement anonyme.


Fichiers


Demandes liées

Lié à Passerelle - Support #55998: *_axel: le paiement anonyme ne doit pas fonctionnerFermé05 août 2021

Actions

Révisions associées

Révision afc79d64 (diff)
Ajouté par Nicolas Roche il y a plus de 2 ans

caluire-axel: allow to call invoice endpoint anonymously (#56006)

Historique

#1

Mis à jour par Nicolas Roche il y a plus de 2 ans

  • Lié à Support #55998: *_axel: le paiement anonyme ne doit pas fonctionner ajouté
#2

Mis à jour par Nicolas Roche il y a plus de 2 ans

J'ai retiré le kwargs comme c'est fait sur les autres endpoints de facturation,
mais j'avoue que j'en suis un peu mal à l'aise parce-que je n'ai pas d'environnement pour tester l'appel fait par Lingo.

#3

Mis à jour par Benjamin Dauvergne il y a plus de 2 ans

Ah ben le paiement anonyme va encore moins fonctionner maintenant :/ pay_invoice fonctionne correctement parce qu'il ne traite pas le NameID c'est get_invoice qui pose problème, il n'est pas utilisable sans NameID, sur caluire_axel et toulouse_axel.

#4

Mis à jour par Benjamin Dauvergne il y a plus de 2 ans

Benjamin Dauvergne a écrit :

Ah ben le paiement anonyme va encore moins fonctionner maintenant :/ pay_invoice fonctionne correctement parce qu'il ne traite pas le NameID c'est get_invoice qui pose problème, il n'est pas utilisable sans NameID, sur caluire_axel et toulouse_axel.

On a pas de problème avec get_invoices() parce qu'il n'est pas sensé être utilisé sans préciser d'utilisateur.

#5

Mis à jour par Nicolas Roche il y a plus de 2 ans

  • Sujet changé de Caluire Axel: vérifier le DUI sur le endpoint pay_invoice à Caluire Axel: rendre get_invoice utilisable sans NameID
  • Description mis à jour (diff)
  • Statut changé de Solution proposée à En cours

Ok, faire tout l'inverse...

#6

Mis à jour par Nicolas Roche il y a plus de 2 ans

Fait (bien que j'ai pas encore compris comment est lancé un paiement anonyme).

#7

Mis à jour par Benjamin Dauvergne il y a plus de 2 ans

  • Statut changé de Solution proposée à En cours

Il ne faut pas vérifier le lien NameID / family_id, c'est libre. Sinon quelqu'un qui reçoit un lien mais qui n'a pas encore de liaison sera bloqué sans raison compréhensible, alors que non connecté il ne l'était pas.


Nicolas Roche a écrit :

Fait (bien que j'ai pas encore compris comment est lancé un paiement anonyme).

Tu reçois un mail envoyé par combo.apps.lingo.models.Regie.notify_remote_invoice_by_email(...) dedans tu as un lien vers payment_url où :

        payment_url = reverse('view-item', kwargs={'regie_id': self.id, 'item_crypto_id': invoice.crypto_id})

tu clique sur le lien. La vue view-item ne nécessitant pas d'authentification, ça donne un paiement anonyme. Ce n'est pas un bug, c'est une fonctionnalité pour permettre aux gens, déjà de ne pas passer par une création de compte pour payer une facture mais aussi pour permette à n'importe qui de payer la facture sans avoir les identifiants d'un compte métier (famille ou autre).

Ça marche aussi en copie/collant l'URL depuis le lien "Voir et payer" de la cellule "Factures actives" (ça pointe sur view-item) et en la filant à quelqu'un qui n'est pas connecté.

En fait aucune des vues publiques de lingo ne nécessite d'authentification à part ItemDownloadView la mal nommée (ça devrait être InvoicePdfView).

#8

Mis à jour par Nicolas Roche il y a plus de 2 ans

Il ne faut pas vérifier le lien NameID / family_id, c'est libre. Sinon quelqu'un qui reçoit un lien mais qui n'a pas encore de liaison sera bloqué sans raison compréhensible, alors que non connecté il ne l'était pas.

merci, je n'y avais pas pensé.

#9

Mis à jour par Benjamin Dauvergne il y a plus de 2 ans

  • Statut changé de Solution proposée à Solution validée
#10

Mis à jour par Benjamin Dauvergne il y a plus de 2 ans

  • Assigné à mis à Nicolas Roche
#11

Mis à jour par Nicolas Roche il y a plus de 2 ans

  • Statut changé de Solution validée à Résolu (à déployer)
commit afc79d64c3dc1a59d6abab9b2f00ee2074990153
Author: Nicolas ROCHE <nroche@entrouvert.com>
Date:   Thu Aug 26 12:35:17 2021 +0200

    caluire-axel: allow to call invoice endpoint anonymously (#56006)
#12

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

Formats disponibles : Atom PDF