Project

General

Profile

Development #68720

API Impôts particulier - pouvoir récupérer automatiquement les infos de la dernière année disponible

Added by Anaïs Ecuvillon 5 months ago. Updated about 22 hours ago.

Status:
Résolu (à déployer)
Priority:
Normal
Assignee:
Target version:
-
Start date:
05 September 2022
Due date:
% Done:

0%

Estimated time:
Patch proposed:
No
Planning:
No

Description

Après test de l'API Impôts particulier, pour récupérer une donnée comme le RFR, il faut indiquer en dur l'année concernée. Ex.

{% with ir_data=form_var_dgfip_structured_dgfip_ir|get:"2021" %}{{ ir_data.rfr }}{% endwith %}

Il n'existe pas d'option pour spécifier l'année demandée.
L'API retourne tout ce que nous envoie la DGFIP (fonction des scopes demandés par la collectivité et des autorisations accordées). Genre :

{'2020':  {'rfr': 17598, 'nbPart': 1.0}, '2021': {'rfr': 17598, 'nbPart': 1.0}}

Il faudrait pouvoir identifier la dernière année renvoyée et récupérer automatiquement ces informations, plutôt qu'écrire l'année en dur.
L'administrateur fonctionnel ne saura pas quand basculer 2021 en 2022. Je ne sais même pas si les données basculent pour tout le monde à la même date ou si c'est au compte goutte en fonction de la déclaration des impôts. Et donc il est possible que la collectivité récupère le mauvais RFR, genre celui de l'année passée, si cela n'a pas été mis à jour dans le worklfow, etc.

Workflow : https://demarches-mkuntz.test.entrouvert.org/backoffice/workflows/214/status/just_submitted/items/4/
Inspect d'une demande : https://demarches-mkuntz.test.entrouvert.org/backoffice/management/test-anais-api-impots-particulier-dgfip-adresse/6/inspect
Formulaire : https://demarches-mkuntz.test.entrouvert.org/backoffice/forms/262/fields/24/

Associated revisions

Revision 86a0ae22 (diff)
Added by Serghei Mihai about 22 hours ago

franceconnect: return last known DGFiP data (#68720)

History

#1

Updated by Thomas Noël 5 months ago

Pour avoir le RFR de l'année 2021 on peut faire :

 {{ form_var_dgfip_structured_dgfip_ir|get:"2021"|get:"rfr" }}

Ca marche bien non ?

#2

Updated by Anaïs Ecuvillon 5 months ago

oui aussi. Mais l'année 2021 est écrit en dur. À un moment, on ne sait pas quand, il faudra changer ce gabarit pour écrire 2022 à la place de 2021. Ce n'est pas idéal.
Il faudrait détecter que 2021 est la dernière année que la DGFIP nous renvoie et demander les infos de la dernière année.

#3

Updated by Thomas Noël 5 months ago

Selon moi c'est bien la collectivité, dans sa démarche, qui va décider quelle année elle prend en considération. C'est fonction du moment, de la démarche. Mais pas de la réponse du webservice DGFIP (dont on ne sait rien de la logique, comme tu l'indiques).

L'année "2021" de mon exemple peut être un paramètre de la démarche, ou une variable globale du site, ou toute autre logique de paramétrage/calcul (pour l'enfance c'est typiquement une valeur qui change fin août).

Bref, dans notre connecteur actuel, on interroge la DGFIP sur les 3 dernières années, et on retourne ce dictionnaire dans dgfip_ir :

            if mode == 'dgfip':
                franceconnect.request_dgfip_access_token(
                    self.dgfip_username, self.dgfip_password, scope=self.dgfip_scopes
                )
                current_year = now().year
                for year in range(current_year - 3, current_year):
                    franceconnect.request_dgfip_ir(str(year), id_teleservice=self.dgfip_id_teleservice)
                token['dgfip_ir'] = franceconnect.dgfip_ressource_ir_response

On pourrait retourner à côté "le dernier RFR qu'on a réussi à obtenir ces 3 dernières année", genre dans « dgfip_dernier_ir » (sous entendu : dernière année trouvée sur l'API DGFIP dans les 3 dernières années). Ca irait ? Ou besoin de remonter sur plus d'années que ça ?

#4

Updated by Anaïs Ecuvillon 5 months ago

Thomas Noël a écrit :

On pourrait retourner à côté "le dernier RFR qu'on a réussi à obtenir ces 3 dernières année", genre dans « dgfip_dernier_ir » (sous entendu : dernière année trouvée sur l'API DGFIP dans les 3 dernières années). Ca irait ?

oui c'est ce qu'il faudrait (en précisant l'année retournée), c'est d'ailleurs ce que je récupérais à Arles (avec API Particulier).

#5

Updated by Serghei Mihai 3 months ago

  • Assignee set to Serghei Mihai
#6

Updated by Gitea (Bot) Gitea 3 days ago

Serghei Mihai (smihai) a ouvert une pull request sur Gitea concernant cette demande :

#7

Updated by Gitea (Bot) Gitea 3 days ago

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

#8

Updated by Serghei Mihai 1 day ago

  • Status changed from Nouveau to En cours
#9

Updated by Benjamin Dauvergne 1 day ago

  • Tracker changed from Support to Development
  • Status changed from En cours to Solution validée
#10

Updated by Gitea (Bot) Gitea about 22 hours ago

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

Serghei Mihai (smihai) a mergé une pull request sur Gitea concernant cette demande :

Also available in: Atom PDF