Le connecteur GRDF Tiers Direct prend place dans un contexte où le parcours [Client Connect](./grdf.md) se complexifie et rends l'accès à la donnée trop compliqué pour nos utilisateurs.
Le connecteur GRDF Tiers Direct prend place dans un contexte où le parcours [Client Connect](./grdf.md) se complexifie et rend l'accès à la donnée trop compliqué pour nos utilisateurs.
Le parcours **"Tiers Direct"**, initialement réservé aux tiers, vise à déléguer cette complexité en laissant la gestion du périmètre et dates de consentement au tiers (Métropole de Lyon).
Le parcours **"Tiers Direct"** vise à déléguer cette complexité en laissant la gestion du consentement et de son périmètre au tiers (Métropole de Lyon).
## Processus détaillé
## Processus détaillé
:::tip Récapitulatif
:::tip Récapitulatif
1. L'utilisateur renseigne ses informations dans Ecolyo
1. L'utilisateur renseigne ses informations dans Ecolyo
2. Sa volonté d'accéder à ses données est enregistrée dans le backoffice
2. Son consentement à partager ses données est enregistré dans le backoffice Ecolyo
3. Son consentement est créé/consulté chez GRDF
3. Ses droits d'accès sont créés/consultés chez GRDF
4. La récupération des données est effectuée
4. La récupération des données est effectuée
:::
:::
...
@@ -22,13 +22,13 @@ Le parcours utilisateur est défini sur les [maquettes](https://www.figma.com/fi
...
@@ -22,13 +22,13 @@ Le parcours utilisateur est défini sur les [maquettes](https://www.figma.com/fi
### 2. Preuve de consentement backoffice
### 2. Preuve de consentement backoffice
Afin de prendre la responsabilité de déclarer des consentements pour nos utilisateurs, nous devons collecter la *preuve* que nous avons l’autorisation de l'utilisateur. Ce processus est réalisé grâce au parcours d'onboarding de l'application.
La récupération des données de consommation de gaz auprès de GRDF nécessite le recueil du consentement auprès de nos utilisateurs, nous devons donc en collecter la *preuve*. Ce processus est réalisé grâce au parcours d'onboarding de l'application.
Un appel API est ensuite réalisé à notre serveur backoffice. Cet appel est enregistré et sert notamment de **preuve** lors des contrôles effectués par GRDF.
Un appel API est ensuite réalisé à notre serveur backoffice. Cet appel est enregistré et sert notamment de **preuve** lors des contrôles a posteriori effectués par GRDF.
@@ -54,7 +54,7 @@ L'appel de cette route envoie un **email** à l'adresse renseignée. Cet email r
...
@@ -54,7 +54,7 @@ L'appel de cette route envoie un **email** à l'adresse renseignée. Cet email r
L'email envoyé par GRDF est envoyé par batch de 15 minutes tous les quarts d'heures.
L'email envoyé par GRDF est envoyé par batch de 15 minutes tous les quarts d'heures.
Exemple : Un utilisateur créé sa demande à 9h31. Il va recevoir son mail à 9h45.
Exemple : Un utilisateur crée sa demande à 9h31. Il va recevoir son mail à 9h45.
:::
:::
...
@@ -66,6 +66,8 @@ Un utilisateur peut avoir plusieurs consentements. Chaque consentement peut avoi
...
@@ -66,6 +66,8 @@ Un utilisateur peut avoir plusieurs consentements. Chaque consentement peut avoi


Capture d'écran issue de la documentation fonctionnelle GRDF (https://sites.grdf.fr/web/portail-api-grdf-adict/documentation_fonctionnelle)
Le connecteur se base sur l'état des consentements pour déterminer l'accès à la donnée.
Le connecteur se base sur l'état des consentements pour déterminer l'accès à la donnée.
:::tip Accès à la donnée
:::tip Accès à la donnée
...
@@ -77,11 +79,12 @@ La révocation se traduit par une action explicite de l'utilisateur. C'est à di
...
@@ -77,11 +79,12 @@ La révocation se traduit par une action explicite de l'utilisateur. C'est à di
Cette action va marquer le consentement comme **"Révoquée"**
Cette action va marquer le consentement comme **"Révoquée"**
❌ Cette action va notamment **bloquer** la création d'un nouveau consentement. Pour débloquer cette revocation, il faut contacter le support GRDF.
❌ Cette action va notamment **bloquer** la création d'un nouveau consentement. Pour débloquer cette révocation, il faut contacter le support GRDF (https://sites.grdf.fr/web/portail-api-grdf-adict/support2).
:::
:::
:::note État "à revérifier"
:::note État "à revérifier"
QQOQCCP
Extrait documentation GRDF :
> En cas de changement de données contractuelles, un Droit d'accès se met à l'état **"A revérifier"** pendant quelques jours, le temps de procéder à une mise à jour.
> En cas de changement de données contractuelles, un Droit d'accès se met à l'état **"A revérifier"** pendant quelques jours, le temps de procéder à une mise à jour.
>
>
> C'est un processus automatique, vous n'aurez rien à intervenir ou lancer un autre appel. Au bout de quelques jours au plus, le Droit d'accès revient automatiquement à l'état "Active" si le Titulaire est toujours le même, ou "Obsolète" si le Titulaire a changé.
> C'est un processus automatique, vous n'aurez rien à intervenir ou lancer un autre appel. Au bout de quelques jours au plus, le Droit d'accès revient automatiquement à l'état "Active" si le Titulaire est toujours le même, ou "Obsolète" si le Titulaire a changé.
...
@@ -90,7 +93,9 @@ QQOQCCP
...
@@ -90,7 +93,9 @@ QQOQCCP
:::
:::
:::note État "Obsolète" :
:::note État "Obsolète" :
QQOQCCP
Extrait documentation GRDF :
> Il est tout à fait possible de refaire immédiatement une nouvelle déclaration après que le Droit d'accès soit passé à **"Obsolète"**. Cela vaut aussi pour un Droit d'accès à l'état "Refusé".
> Il est tout à fait possible de refaire immédiatement une nouvelle déclaration après que le Droit d'accès soit passé à **"Obsolète"**. Cela vaut aussi pour un Droit d'accès à l'état "Refusé".
>
>
> Seul l'état "Révoqué" entraîne le blocage de déclaration.
> Seul l'état "Révoqué" entraîne le blocage de déclaration.
...
@@ -120,13 +125,16 @@ Lors d'un lancement manuel, cet état n’arrête pas le connecteur et créé un
...
@@ -120,13 +125,16 @@ Lors d'un lancement manuel, cet état n’arrête pas le connecteur et créé un
Si une personne **possède un consentement client connect "Validée"**, elle n'a pas besoin de créer un nouveau consentement Tiers Direct, elle peut accéder à sa donnée.
Si une personne **possède un consentement client connect "Validée"**, elle n'a pas besoin de créer un nouveau consentement Tiers Direct, elle peut accéder à sa donnée.
Si une personne **possède un consentement client connect "Révoquée"**, il est impossible pour elle de créer un nouveau consentement Tiers Direct.
Si une personne **possède un consentement client connect "Révoquée"** sur la même période qu'un consentement "Validée", il est impossible pour elle de créer un nouveau consentement Tiers Direct.
> Il ne s'agit pas du comportement attendu, nous avons transmis une demande de correction à notre équipe technique. Nous vous tiendrons informé du délai de résolution. le 16/04/2024
> Il ne s'agit pas du comportement attendu, GRDF est en cours de résolution de ce bug (à la date du 16/04/2024).
A noter, la suppression du connecteur dans Ecolyo - utilisant alors le parcours Client Connect - entraînait la suppression du consentement (= Passage au statut "Révoquée" pour GRDF). Cette suppression du consentement était nécessaire pour pouvoir redonner un consentement dans le parcours Client Connect.
Des utilisateurs pourraient donc avoir dans leurs droits d'accès sur la période des consentements "Révoquée"
#### Erreurs 429
#### Erreurs 429
En raison des quotas stipulés dans l'atelier technique et fonctionnel, il arrive que des requêtes échouent et renvoient une erreur non métier `error : { reasons: [], details: { msgId: 'Id-262fca65f174f4019691ee56' } }` ce type de retour se produit dans les [cas d'erreurs **429**](https://forge.grandlyon.com/web-et-numerique/factory/llle_project/grdf-konnector/-/issues/17#note_118439).
En raison des quotas stipulés dans l'atelier technique et fonctionnel, il arrive que des requêtes échouent et renvoient une erreur non métier `error : { reasons: [], details: { msgId: 'Id-262fca65f174f4019691ee56' } }` ce type de retour se produit dans les [cas d'erreurs **429**](https://forge.grandlyon.com/web-et-numerique/factory/llle_project/grdf-konnector/-/issues/17#note_118439). Ce quota peut-être dépassé si nous faisons plus de 6000 appels par jours ou plus d'1 appel/seconde.
#### PCE inconnus
#### PCE inconnus
...
@@ -134,12 +142,13 @@ En raison d'un problème lié à client connect, il arrive parfois de consulter
...
@@ -134,12 +142,13 @@ En raison d'un problème lié à client connect, il arrive parfois de consulter
#### BAS
#### BAS
GRDF dispose d'un Bac À Sable pour réaliser des tests. Au moment des développements du connecteur, ce BAS est statique et ne reflète pas l'environnement de production et reste trop statique pour être utilisé.
GRDF dispose d'un Bac À Sable pour réaliser des tests. Au moment des développements du connecteur, ce BAS est statique et ne reflète pas l'environnement de production. Il n'est pas utilisable pour destests de connexion, tests les plus utiles à la mise en production du nouveau connecteur gaz Tiers Direct.
#### Contrat échu
#### Contrat échu
Pouvez-vous nous confirmer qu'il est impossible (blocage technique opéré de votre côté) d'ouvrir un consentement sur un contrat expiré ?
Pouvez-vous nous confirmer qu'il est impossible (blocage technique opéré de votre côté) d'ouvrir un consentement sur un contrat expiré ?
Réponse GRDF :
> Effectivement, quand on essaie d'ouvrir un Droit d'accès sur un compteur mis hors service (c'est à dire qu'il n'y a aucun Contrat gaz dessus), on reçoit le message d'erreur "Le Contrat de fourniture est échu".
> Effectivement, quand on essaie d'ouvrir un Droit d'accès sur un compteur mis hors service (c'est à dire qu'il n'y a aucun Contrat gaz dessus), on reçoit le message d'erreur "Le Contrat de fourniture est échu".
>
>
> Il n'est donc pas possible d'ouvrir le Droit d'accès sur un compteur mis hors service, nos systèmes le bloquent automatiquement.
> Il n'est donc pas possible d'ouvrir le Droit d'accès sur un compteur mis hors service, nos systèmes le bloquent automatiquement.
...
@@ -148,14 +157,16 @@ Pouvez-vous nous confirmer qu'il est impossible (blocage technique opéré de vo
...
@@ -148,14 +157,16 @@ Pouvez-vous nous confirmer qu'il est impossible (blocage technique opéré de vo
Est-il possible, sur un contrat expiré, de consulter les données historiques (jusqu'à la date d'expiration du contrat) ?
Est-il possible, sur un contrat expiré, de consulter les données historiques (jusqu'à la date d'expiration du contrat) ?
Réponse GRDF :
> Au moment où le Compteur a été mis hors service (c'est à dire que le Contrat est résilié) alors que le Tiers dispose encore d'un Droit d'accès sur ce compteur, alors l'accès deviendra automatiquement obsolète et il n'est plus possible de consulter toute donnée, que ce soit le suivi ou l'historique.
> Au moment où le Compteur a été mis hors service (c'est à dire que le Contrat est résilié) alors que le Tiers dispose encore d'un Droit d'accès sur ce compteur, alors l'accès deviendra automatiquement obsolète et il n'est plus possible de consulter toute donnée, que ce soit le suivi ou l'historique.
>
>
> Il faut que le Droit d'accès soit à l'état "actif" afin de récupérer les Consommations, que ce soit le suivi ou l'historique.
> Il faut que le Droit d'accès soit à l'état "actif" afin de récupérer les Consommations, que ce soit le suivi ou l'historique.
#### Profondeur des données
#### Profondeur des données
> Sur un compteur Gazpar (c'est à dire 1M), la profondeur maximale d'historique de données de consommations quotidiennes est effectivement à 3 ans.
> Sur un compteur Gazpar (c'est à dire 1M), la profondeur maximale d'historique de données de consommations quotidiennes est de 3 ans.
>
> Si la date de mise en service du compteur est plus récente que 3 ans, alors l'historique va s'arrêter à cette date. (Par exemple, si la date de MES d'un compteur Gazpar est en 01/01/2023, alors nous n'aurons les consommations quotidiennes que jusqu''à cette date).
> Si la date de mise en service du compteur est plus récente que 3 ans, alors l'historique va s'arrêter à cette date. (Par exemple, si la date de MES d'un compteur Gazpar est en 01/01/2023, alors nous n'aurons les consommations quotidiennes que jusqu''à cette date).