diff --git a/docs/konnectors/enedis-sge.md b/docs/konnectors/enedis-sge.md
index 821f7015834946601496290fedbc6fbe7136d091..6b79437424e9af23b5bfb09522963e636b2948db 100644
--- a/docs/konnectors/enedis-sge.md
+++ b/docs/konnectors/enedis-sge.md
@@ -20,16 +20,16 @@ The API used by this konnector are the one used by all energy providers (edf, to
 
 ### WSO2
 
-For now enedis API are proxied by WSO1 api manager. You can find documentation and devportal [here](https://apis.grandlyon.fr/devportal).
+For now enedis API are proxied by WSO2 api manager. You can find documentation and devportal [here](https://apis.grandlyon.fr/devportal).
 
 ### Scaffolding 
 
-- Aggregate.js: file holding method responsible for month and year aggregation 
-- parsing.js: contain all methods for xml to json parsing and data formatting
-- request.js: hold SGE query methods 
-- types.js: file containing type definition to allow js type check.
+- core/types: contains jsdoc types
+- core/: requests wrapper with error handling logic
+- helpers/ : contains helpers for aggregation, env and parsing
+- requests/: contain all methods for : Parsing sge requests, Send/get backoffice data, interacte with cozy stack
 - index.js: main file where default konnector methods are launch (start, ...)
-
+- onDeleteAccount.js: hold consent suppresion when a user delete an account. Automatically launched on delete.
 ### ts-check
 
 In order to have better comfort while coding, we have enable ts-checking with vs-code. The verification is based on js-doc, please take time to maintain the js-doc.
@@ -37,42 +37,84 @@ In order to have better comfort while coding, we have enable ts-checking with vs
 !!! note "ts-check"
     The ts-check is none blocking. It will only put information in vs-code ide.
 
+### Local dev
+
+In order to local test you have to put the following configuration in `konnector-dev-config`:
+
+```json
+{
+  "COZY_URL": "http://cozy.tools:8080",
+  "fields": {
+    "pointId": "<POINT_ID>",
+    "lastname": "<LASTNAME>",
+    "firstname": "<FIRSTNAME>",
+    "address": "<ADDRESSE>",
+    "sgeLogin": "donnees.energie@grandlyon.com",
+    "postalCode": "<CP>",
+    "city": "<CITY>",
+    "contractId": "<CONTRACT_ID ex: 1234567>",
+    "wso2BaseUrl": "https://apis.grandlyon.fr",
+    "boBaseUrl": "https://ecolyo-agent-rec.grandlyon.com/api/sge",
+    "boToken": "<BO_TOKEN>",
+    "apiToken": "<SGE_TOKEN>"
+  }
+}
+
+```
+Replace every `<***>` with yout test values and corresponding secrets.
+
+!!! warning "user consent"
+    While running in dev mode, be sure to have user consent, either on production env or with enedis standard form.
+
+You can now run the following commands to run the konnector :
+
+```sh
+yarn standalone #Run inside shell with no cozy env dependencies
+yarn dev #Run with your local cozy. For this one you need local stack to run
+yarn onDeleteAccount:standalone #Run onDeleteAccount script
+yarn onDeleteAccount #Run onDeleteAccount script with real cozy
+```
+
+For standalone cmd you can find konnector resulte in `/data/importedData.json`
 
 ### Konnector Methods
 | Method | Description |
 | ------ | ------ |
 | start | Main method of konnector. Handle global flow and init method with provided params |
-| getDataStartDate | Retrieve user contract *startDate* in order to request an accurate time range of data |
+| gatherData | Wrapper for getting daily, half-hour and max power data |
 | getData | Get daily data |
 | getMaxPowerData | Get daily Max Power data |
 | getHalfHourData | Get half-hour data |
 | processData | Given a doctype, parse and format data before storing and aggregating |
-| processStartDate | Save startDate and process queries time range |
+| setStartDate | Save startDate with the right time range |
 | storeData | Save data to user's cozy |
 | agregateMonthAndYearData | Sum daily data for months and years |
+| isFirstStart | Check if it's first start or an alternate starte base on boId in cozy.account |
 
 ## Dataflow
 
 ### Overview
 
+Fonctionnal and technichal flow chart: 
+
 [Lien du schema](https://whimsical.com/sge-tech-DxbYM8DdajRjTr6WZat1bV)
 
 ### Authentication
 
-**TODO: Write this part when full implementation will be done.**
-
 Information required: 
 
 - Name
 - Surname
 - PointID (PDL)
 - Full address 
+- Postal Code
+- City
 
 ### Fetch Data
 
 In order to get data from the SGE API we have to request the following route :
 
-1. Get user contract startDate
+#### Get user contract startDate
 
 Method : **POST**
 
@@ -88,9 +130,208 @@ Data Route : **enedis_SGE_ConsultationDonneesTechniquesContractuelles/1.0**
 </soapenv:Body>
 ```
 
-2. Get daily data
-3. Get Max Power data
-4. Get Half-hour data
+####  Get daily data and Get Half-hour data
+
+Method : **POST**
+
+Data Route : **enedis_SGE_ConsultationMesuresDetaillees/1.0**
+
+```xml
+<?xml version='1.0' encoding='utf-8'?>
+  <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
+     xmlns:v2="http://www.enedis.fr/sge/b2b/services/consultationmesuresdetaillees/v2.0"
+     xmlns:v1="http://www.enedis.fr/sge/b2b/technique/v1.0">
+     <soapenv:Header/>
+     <soapenv:Body>
+        <v2:consulterMesuresDetaillees>
+           <demande>
+              <initiateurLogin>${appLogin}</initiateurLogin>
+              <pointId>${pointId}</pointId>
+              <mesuresTypeCode>${mesureType}</mesuresTypeCode>
+              <grandeurPhysique>${unit}</grandeurPhysique>
+              <soutirage>true</soutirage>
+              <injection>false</injection>
+              <dateDebut>${startDate}</dateDebut>
+              <dateFin>${endDate}</dateFin>
+              <mesuresCorrigees>false</mesuresCorrigees>
+              <accordClient>true</accordClient>
+           </demande>
+        </v2:consulterMesuresDetaillees>
+     </soapenv:Body>
+  </soapenv:Envelope>
+```
+#### Get Max Power data
+
+Method : **POST**
+
+Data Route : **enedis_SGE_ConsultationMesuresDetaillees/1.0**
+
+```xml
+<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
+     xmlns:v2="http://www.enedis.fr/sge/b2b/services/consultationmesuresdetaillees/v2.0"
+     xmlns:v1="http://www.enedis.fr/sge/b2b/technique/v1.0">
+      <soapenv:Header/>
+      <soapenv:Body>
+          <v2:consulterMesuresDetaillees>
+              <demande>
+                  <initiateurLogin>${appLogin}</initiateurLogin>
+                  <pointId>${pointId}</pointId>
+                  <mesuresTypeCode>${mesureType}</mesuresTypeCode>
+                  <grandeurPhysique>${unit}</grandeurPhysique>
+                  <soutirage>true</soutirage>
+                  <injection>false</injection>
+                  <dateDebut>${startDate}</dateDebut>
+                  <dateFin>${endDate}</dateFin>
+                  <mesuresPas>P1D</mesuresPas>
+                  <mesuresCorrigees>false</mesuresCorrigees>
+                  <accordClient>true</accordClient>
+              </demande>
+          </v2:consulterMesuresDetaillees>
+      </soapenv:Body>
+  </soapenv:Envelope>
+```
+#### Get contract information
+
+Method : **POST**
+
+Data Route : **enedis_SGE_enedis_SGE_ConsultationDonneesTechniquesContractuelles/1.0**
+```xml
+<?xml version='1.0' encoding='utf-8'?>
+  <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
+     xmlns:v2="http://www.enedis.fr/sge/b2b/services/consulterdonneestechniquescontractuelles/v1.0"
+     xmlns:v1="http://www.enedis.fr/sge/b2b/technique/v1.0">
+     <soapenv:Header/>
+     <soapenv:Body>
+        <v2:consulterDonneesTechniquesContractuelles>
+           <pointId>${pointId}</pointId>
+           <loginUtilisateur>${appLogin}</loginUtilisateur>
+           <autorisationClient>true</autorisationClient>
+        </v2:consulterDonneesTechniquesContractuelles>
+     </soapenv:Body>
+  </soapenv:Envelope>
+```
+
+#### Get user PDL <a name="recherche_services_mesures"></a>
+
+Method : **POST**
+
+Data Route : **enedis_SGE_RechercheServicesMesures/1.0**
+
+```xml
+<?xml version='1.0' encoding='utf-8'?>
+  <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
+     xmlns:v2="http://www.enedis.fr/sge/b2b/services/rechercherpoint/v2.0"
+     xmlns:v1="http://www.enedis.fr/sge/b2b/technique/v1.0">
+     <soapenv:Header/>
+     <soapenv:Body>
+        <v2:rechercherPoint>
+           <criteres>
+              <adresseInstallation>
+                 <numeroEtNomVoie>${address}</numeroEtNomVoie>
+                 <codePostal>${postalCode}</codePostal>
+                 <codeInseeCommune>${inseeCode}</codeInseeCommune>
+              </adresseInstallation>
+              <nomClientFinalOuDenominationSociale>${name}</nomClientFinalOuDenominationSociale>
+              <rechercheHorsPerimetre>true</rechercheHorsPerimetre>
+           </criteres>
+           <loginUtilisateur>${appLogin}</loginUtilisateur>
+        </v2:rechercherPoint>
+     </soapenv:Body>
+  </soapenv:Envelope>
+```
+
+#### Get User services subscriptions
+
+Method : **POST**
+
+Data Route : **enedis_SGE_RechercheServicesMesures/1.0**
+
+```xml
+<?xml version='1.0' encoding='utf-8'?>
+  <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
+     xmlns:v2="http://www.enedis.fr/sge/b2b/rechercherservicessouscritsmesures/v1.0"
+     xmlns:v1="http://www.enedis.fr/sge/b2b/technique/v1.0">
+      <soapenv:Header/>
+      <soapenv:Body>
+          <v2:rechercherServicesSouscritsMesures>
+            <criteres>
+              <pointId>${pointId}</pointId>
+              <contratId>${contractId}</contratId>
+            </criteres>
+            <loginUtilisateur>${appLogin}</loginUtilisateur>
+          </v2:rechercherServicesSouscritsMesures>
+      </soapenv:Body>
+  </soapenv:Envelope>
+```
+
+#### Start user contract <a name="user_contract_start"></a>
+
+Method : **POST**
+
+Data Route : **enedis_SGE_CommandeCollectePublicationMesures/1.0**
+
+```xml
+<?xml version='1.0' encoding='utf-8'?>
+  <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
+     xmlns:v2="http://www.enedis.fr/sge/b2b/commandercollectepublicationmesures/v3.0"
+     xmlns:v1="http://www.enedis.fr/sge/b2b/technique/v1.0">
+      <soapenv:Header/>
+      <soapenv:Body>
+          <v2:commanderCollectePublicationMesures>
+              <demande>
+                  <donneesGenerales>
+                      <objetCode>AME</objetCode>
+                      <pointId>${pointId}</pointId>
+                      <initiateurLogin>${appLogin}</initiateurLogin>
+                      <contratId>${contractId}</contratId>
+                  </donneesGenerales>
+                  <accesMesures>
+                      <dateDebut>${startDate}</dateDebut>
+                      <dateFin>${endDate}</dateFin>
+                      <declarationAccordClient>
+                          <accord>true</accord>
+                          <personnePhysique>
+                              <nom>${name}</nom>
+                          </personnePhysique>
+                      </declarationAccordClient>
+                      <mesuresTypeCode>CDC</mesuresTypeCode>
+                      <soutirage>true</soutirage>
+                      <injection>false</injection>
+                      <mesuresPas>PT30M</mesuresPas>
+                      <mesuresCorrigees>false</mesuresCorrigees>
+                      <transmissionRecurrente>true</transmissionRecurrente>
+                      <periodiciteTransmission>P1D</periodiciteTransmission>
+                  </accesMesures>
+              </demande>
+          </v2:commanderCollectePublicationMesures>
+      </soapenv:Body>
+  </soapenv:Envelope>
+```
+
+#### Stop User contract
+```xml
+<?xml version='1.0' encoding='utf-8'?>
+  <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
+     xmlns:v2="http://www.enedis.fr/sge/b2b/commanderarretservicesouscritmesures/v1.0"
+     xmlns:v1="http://www.enedis.fr/sge/b2b/technique/v1.0">
+      <soapenv:Header/>
+      <soapenv:Body>
+          <v2:commanderArretServiceSouscritMesures>
+              <demande>
+                  <donneesGenerales>
+                      <objetCode>ASS</objetCode>
+                      <pointId>${pointId}</pointId>
+                      <initiateurLogin>${appLogin}</initiateurLogin>
+                      <contratId>${contractId}</contratId>
+                  </donneesGenerales>
+                  <arretServiceSouscrit>
+                  <serviceSouscritId>${serviceSouscritId}</serviceSouscritId>
+                  </arretServiceSouscrit>
+              </demande>
+          </v2:commanderArretServiceSouscritMesures>
+      </soapenv:Body>
+  </soapenv:Envelope>
+```
 
 The same endpoint is used to get the data. The soap body is the following:
 
@@ -117,3 +358,29 @@ Data Route : **enedis_SGE_ConsultationDonneesTechniquesContractuelles/1.0**
 </soapenv:Body>
 ```
 
+### Known Issues
+
+#### Contract deletion and creation on same day
+
+If you stop a contract on a day, (for exemple 8/08/22), you cannot start a new contract for this date with [start contract route](#user_contract_start). You have to wait for the next day. This might cause somme production issues
+
+#### User data collect opposition
+
+Users can remove consent from enedis account on data collecting. This will return the following when [checking contracts](recherche_services_mesures).
+
+```xml
+<serviceSouscritMesures>
+    <serviceSouscritId>74472322</serviceSouscritId>
+    <pointId>19176410771132</pointId>
+    <serviceSouscritType code="OPPENR"/>
+    <serviceSouscritLibelle>Opposition à l'enregistrement de la courbe de charge</serviceSouscritLibelle>
+    <injection>false</injection>
+    <soutirage>true</soutirage>
+    <etatCode>ACTIF</etatCode>
+    <dateDebut>2022-06-24+02:00</dateDebut>
+    <dateFin>2022-08-10+02:00</dateFin>
+    <motifFinLibelle>Arrêt par le client</motifFinLibelle>
+</serviceSouscritMesures>
+```
+
+We cannot override that, the only solution is to tell the user to activate data collect on [enedis](https://mon-compte-particulier.enedis.fr/donnees/).
\ No newline at end of file