diff --git a/index.js b/index.js
index 491560526f87b3036fca05ae7d5a96307eb560d1..7577d839f764b48a5abc568bc6a3c376c3c6072a 100644
--- a/index.js
+++ b/index.js
@@ -188,31 +188,29 @@ async function start(fields, cozyParameters) {
       true
     )
 
+    if (!userConsent) {
+      log('error', 'No user consent found')
+      throw errors.VENDOR_DOWN
+    }
+
+    const consentEndDate = Date.parse(userConsent.endDate)
+    const today = Date.now()
     if (
       user.lastname.toLocaleUpperCase() !==
         userConsent.lastname.toLocaleUpperCase() ||
-      !user
+      !user ||
+      consentEndDate < today
     ) {
-      log('error', `Invalid or not found consent for user`)
-      if (userConsent.serviceId) {
-        await terminateContract(
-          baseUrl,
-          apiAuthKey,
-          sgeLogin,
-          contractId,
-          pointId,
-          userConsent.serviceId
-        )
-        await deleteBoConsent(
-          boBaseUrl,
-          boToken,
-          userConsent.ID ? userConsent.ID : 0
-        )
-      } else {
-        log('error', `No service id retrieved from BO`)
-        throw errors.VENDOR_DOWN
-      }
-      throw errors.TERMS_VERSION_MISMATCH
+      await deleteConsent(
+        userConsent,
+        baseUrl,
+        apiAuthKey,
+        sgeLogin,
+        contractId,
+        pointId,
+        boBaseUrl,
+        boToken
+      )
     }
   }
   log('info', 'Successfully logged in')
@@ -220,6 +218,49 @@ async function start(fields, cozyParameters) {
   await gatherData(baseUrl, apiAuthKey, sgeLogin, pointId)
 }
 
+/**
+ * Delete User Consent
+ * @param {Consent} userConsent
+ * @param {string} baseUrl
+ * @param {string} apiAuthKey
+ * @param {string} sgeLogin
+ * @param {string} contractId
+ * @param {number} pointId
+ * @param {string} boBaseUrl
+ * @param {string} boToken
+ */
+async function deleteConsent(
+  userConsent,
+  baseUrl,
+  apiAuthKey,
+  sgeLogin,
+  contractId,
+  pointId,
+  boBaseUrl,
+  boToken
+) {
+  log('error', `Invalid or not found consent for user`)
+  if (userConsent.serviceID) {
+    await terminateContract(
+      baseUrl,
+      apiAuthKey,
+      sgeLogin,
+      contractId,
+      pointId,
+      userConsent.serviceID
+    )
+    await deleteBoConsent(
+      boBaseUrl,
+      boToken,
+      userConsent.ID ? userConsent.ID : 0
+    )
+  } else {
+    log('error', `No service id retrieved from BO`)
+    throw errors.VENDOR_DOWN
+  }
+  throw errors.TERMS_VERSION_MISMATCH
+}
+
 /**
  * Main method for gathering data
  * @param {string} baseUrl
@@ -223958,7 +223999,6 @@ async function updateBoConsent(url, token, consent, serviceId) {
       },
       headers
     )
-    log('info', data)
     return data
   } catch (e) {
     log('error', `BO replied with ${e}`)
@@ -227968,7 +228008,6 @@ async function verifyUserIdentity(
 
   if (fields.pointId != pdl) {
     log('error', 'PointId does not match')
-    log('error', `isAlternateStart ${isAlternateStart}`)
     if (isAlternateStart) {
       throw errors.TERMS_VERSION_MISMATCH
     } else {
@@ -228035,6 +228074,8 @@ async function findUserPdl(
     throw errors.LOGIN_FAILED
   })
 
+  console.log(rechercherPoint(appLogin, name, postalCode, inseeCode, address))
+
   const parsedReply = await xml2js.parseStringPromise(response.body, {
     tagNameProcessors: [parseTags],
     valueProcessors: [parseValue],
diff --git a/onDeleteAccount.js b/onDeleteAccount.js
index 64b78e5ccb886394b44c9b9e2e84ea7db2b3b408..d28664f8417046fca1c6f6d940646ac01d92066e 100644
--- a/onDeleteAccount.js
+++ b/onDeleteAccount.js
@@ -223336,7 +223336,6 @@ async function updateBoConsent(url, token, consent, serviceId) {
       },
       headers
     )
-    log('info', data)
     return data
   } catch (e) {
     log('error', `BO replied with ${e}`)
@@ -227441,6 +227440,7 @@ module.exports = { iSLocal }
 /* 1605 */
 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
 
+// @ts-check
 const { log, errors } = __webpack_require__(1)
 const { getAccountRev, getAccountSecret } = __webpack_require__(1606)
 const { getBoConsent, deleteBoConsent } = __webpack_require__(1557)
@@ -227469,21 +227469,21 @@ async function onDeleteAccount() {
       accountData.data.consentId
     )
 
-    if (userConsent.pointId && userConsent.pointId) {
-      log('error', `Consent found for user`)
-      if (userConsent.serviceId) {
+    if (userConsent.ID && userConsent.pointID && userConsent.pointID) {
+      log('log', `Consent ${userConsent.ID} found for user`)
+      if (userConsent.serviceID) {
         await deleteBoConsent(
           secrets.boBaseUrl,
           secrets.boToken,
-          userConsent.id
+          userConsent.ID
         )
         await terminateContract(
           secrets.baseUrl,
           secrets.apiAuthKey,
           secrets.sgeLogin,
           secrets.contractId,
-          userConsent.pointId,
-          userConsent.serviceId
+          userConsent.pointID,
+          userConsent.serviceID
         )
       } else {
         log('error', `No service id retrieved from BO`)
@@ -227552,12 +227552,13 @@ function getAccountSecret() {
   try {
     return iSLocal()
       ? {
-          baseUrl: 'https://test.fr',
-          sgeLogin: 'test@test.com',
-          contractId: '134567',
-          boBaseUrl: 'https://botest.grandlyon.com/',
-          boToken: 'tok31n',
-          apiAuthKey: 'authkeYeasqqd56dsdq',
+          baseUrl: 'https://apis.grandlyon.fr',
+          sgeLogin: 'donnees.energie@grandlyon.com',
+          contractId: '4921350',
+          boBaseUrl: 'https://ecolyo-agent-rec.grandlyon.com/api/sge',
+          boToken: '*pdG7qg^xar5BTcnetCg',
+          apiAuthKey:
+            'eyJ4NXQiOiJaR1l4TVRBeVlqaGxNbVU0T1dReE56SXhZbU01TUdZMk5XVmxNak15TWpVeE9XUXdOakppWlE9PSIsImtpZCI6ImdhdGV3YXlfY2VydGlmaWNhdGVfYWxpYXMiLCJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJzdWIiOiJMREFQXC9JUEo5MTUzQGNhcmJvbi5zdXBlciIsImFwcGxpY2F0aW9uIjp7Im93bmVyIjoiTERBUFwvSVBKOTE1MyIsInRpZXJRdW90YVR5cGUiOm51bGwsInRpZXIiOiJVbmxpbWl0ZWQiLCJuYW1lIjoiU0dFIiwiaWQiOjMwLCJ1dWlkIjoiYjU0MWYxZDEtYTMzYi00ODYyLThiOGQtNTk4MDljYjQzNWRjIn0sImlzcyI6Imh0dHBzOlwvXC9hcGlzLmdyYW5kbHlvbi5mcjo0NDNcL29hdXRoMlwvdG9rZW4iLCJ0aWVySW5mbyI6eyJVbmxpbWl0ZWQiOnsidGllclF1b3RhVHlwZSI6InJlcXVlc3RDb3VudCIsImdyYXBoUUxNYXhDb21wbGV4aXR5IjowLCJncmFwaFFMTWF4RGVwdGgiOjAsInN0b3BPblF1b3RhUmVhY2giOnRydWUsInNwaWtlQXJyZXN0TGltaXQiOjAsInNwaWtlQXJyZXN0VW5pdCI6bnVsbH19LCJrZXl0eXBlIjoiUFJPRFVDVElPTiIsInBlcm1pdHRlZFJlZmVyZXIiOiIiLCJzdWJzY3JpYmVkQVBJcyI6W3sic3Vic2NyaWJlclRlbmFudERvbWFpbiI6ImNhcmJvbi5zdXBlciIsIm5hbWUiOiJlbmVkaXNfU0RFX3JlY2hlcmNoZS1wb2ludCIsImNvbnRleHQiOiJcL2VuZWRpc19TREVfcmVjaGVyY2hlLXBvaW50XC8xLjAiLCJwdWJsaXNoZXIiOiJhZG1pbiIsInZlcnNpb24iOiIxLjAiLCJzdWJzY3JpcHRpb25UaWVyIjoiVW5saW1pdGVkIn0seyJzdWJzY3JpYmVyVGVuYW50RG9tYWluIjoiY2FyYm9uLnN1cGVyIiwibmFtZSI6ImVuZWRpc19TR0VfQ29tbWFuZGVUcmFuc21pc3Npb25IaXN0b3JpcXVlTWVzdXJlcyIsImNvbnRleHQiOiJcL2VuZWRpc19TR0VfQ29tbWFuZGVUcmFuc21pc3Npb25IaXN0b3JpcXVlTWVzdXJlc1wvMS4wIiwicHVibGlzaGVyIjoiYWRtaW4iLCJ2ZXJzaW9uIjoiMS4wIiwic3Vic2NyaXB0aW9uVGllciI6IlVubGltaXRlZCJ9LHsic3Vic2NyaWJlclRlbmFudERvbWFpbiI6ImNhcmJvbi5zdXBlciIsIm5hbWUiOiJlbmVkaXNfU0dFX1JlY2hlcmNoZVNlcnZpY2VzTWVzdXJlcyIsImNvbnRleHQiOiJcL2VuZWRpc19TR0VfUmVjaGVyY2hlU2VydmljZXNNZXN1cmVzXC8xLjAiLCJwdWJsaXNoZXIiOiJhZG1pbiIsInZlcnNpb24iOiIxLjAiLCJzdWJzY3JpcHRpb25UaWVyIjoiVW5saW1pdGVkIn0seyJzdWJzY3JpYmVyVGVuYW50RG9tYWluIjoiY2FyYm9uLnN1cGVyIiwibmFtZSI6ImVuZWRpc19TR0VfQ29uc3VsdGF0aW9uTWVzdXJlcyIsImNvbnRleHQiOiJcL2VuZWRpc19TR0VfQ29uc3VsdGF0aW9uTWVzdXJlc1wvMS4wIiwicHVibGlzaGVyIjoiYWRtaW4iLCJ2ZXJzaW9uIjoiMS4wIiwic3Vic2NyaXB0aW9uVGllciI6IlVubGltaXRlZCJ9LHsic3Vic2NyaWJlclRlbmFudERvbWFpbiI6ImNhcmJvbi5zdXBlciIsIm5hbWUiOiJlbmVkaXNfU0dFX0NvbnN1bHRhdGlvbk1lc3VyZXNEZXRhaWxsZWVzIiwiY29udGV4dCI6IlwvZW5lZGlzX1NHRV9Db25zdWx0YXRpb25NZXN1cmVzRGV0YWlsbGVlc1wvMS4wIiwicHVibGlzaGVyIjoiYWRtaW4iLCJ2ZXJzaW9uIjoiMS4wIiwic3Vic2NyaXB0aW9uVGllciI6IlVubGltaXRlZCJ9LHsic3Vic2NyaWJlclRlbmFudERvbWFpbiI6ImNhcmJvbi5zdXBlciIsIm5hbWUiOiJlbmVkaXNfU0dFX0NvbnN1bHRhdGlvbkRvbm5lZXNUZWNobmlxdWVzQ29udHJhY3R1ZSIsImNvbnRleHQiOiJcL2VuZWRpc19TR0VfQ29uc3VsdGF0aW9uRG9ubmVlc1RlY2huaXF1ZXNDb250cmFjdHVlbGxlc1wvMS4wIiwicHVibGlzaGVyIjoiYWRtaW4iLCJ2ZXJzaW9uIjoiMS4wIiwic3Vic2NyaXB0aW9uVGllciI6IlVubGltaXRlZCJ9LHsic3Vic2NyaWJlclRlbmFudERvbWFpbiI6ImNhcmJvbi5zdXBlciIsIm5hbWUiOiJlbmVkaXNfU0dFX0NvbW1hbmRlQ29sbGVjdGVQdWJsaWNhdGlvbk1lc3VyZXMiLCJjb250ZXh0IjoiXC9lbmVkaXNfU0dFX0NvbW1hbmRlQ29sbGVjdGVQdWJsaWNhdGlvbk1lc3VyZXNcLzEuMCIsInB1Ymxpc2hlciI6ImFkbWluIiwidmVyc2lvbiI6IjEuMCIsInN1YnNjcmlwdGlvblRpZXIiOiJVbmxpbWl0ZWQifSx7InN1YnNjcmliZXJUZW5hbnREb21haW4iOiJjYXJib24uc3VwZXIiLCJuYW1lIjoiZW5lZGlzX1NHRV9Db21tYW5kZUFycmV0U2VydmljZVNvdXNjcml0TWVzdXJlcyIsImNvbnRleHQiOiJcL2VuZWRpc19TR0VfQ29tbWFuZGVBcnJldFNlcnZpY2VTb3VzY3JpdE1lc3VyZXNcLzEuMCIsInB1Ymxpc2hlciI6ImFkbWluIiwidmVyc2lvbiI6IjEuMCIsInN1YnNjcmlwdGlvblRpZXIiOiJVbmxpbWl0ZWQifV0sInRva2VuX3R5cGUiOiJhcGlLZXkiLCJwZXJtaXR0ZWRJUCI6IiIsImlhdCI6MTY1MDg5MDYwNiwianRpIjoiYWQzNjNlNzAtMTVhOS00NzQ1LWExNDEtOGIxOTU5MjQwZTM3In0=.UK5Jx1WRA0A6KVUFK5rs5RH7e9qAWn4v_AmmX_CHD3MNzZWikaUFD1UmS_VvMfWvqLMvRBqbkVH0X5na46e8cZA6WYaQuI5xu9oEOptv8HRY3VX-4VBpjvmTcSSRmCN6AqyalggWbzVlDsKCpVyFWavGi-DFrd7Fe9U41kNs33Li-C9LU794LEaqBPfC8avNwHv8UTzkpExR1jwCXjkLXQ-M8txHgdGGYqZ2VN0_8DeuJ7BOYQGmmENxMt0orm9k9ubtLIijnfNAOLRUZcboQRAURE_IdtuBRG0EWBkkDocefWysmckKBt6lUMtYjxpzWCDyw9UYyQAaPC1Ogy6oAg==',
         }
       : JSON.parse(process.env.COZY_PARAMETERS).secret
   } catch (err) {