diff --git a/VERSIONS_HOTLINE/186186 b/VERSIONS_HOTLINE/186186
new file mode 100644
index 0000000000000000000000000000000000000000..ad4b6ca5c7c08311b4ff5895c3c44858ffd3ac3a
--- /dev/null
+++ b/VERSIONS_HOTLINE/186186
@@ -0,0 +1 @@
+ - correctif #186186 : Abonnés portail : Un abonnement ne sera plus valide avec une PORTAL_BORROWERS_VALIDATION_DELAY = 0.
\ No newline at end of file
diff --git a/library/Class/User/ILSSubscription.php b/library/Class/User/ILSSubscription.php
index 741e2c9c79f45d9bb5d6a1ed4c070520416c6b27..545bd265f7fe8b194090bdd6c40527e27205f8c3 100644
--- a/library/Class/User/ILSSubscription.php
+++ b/library/Class/User/ILSSubscription.php
@@ -193,7 +193,12 @@ class Class_User_ILSSubscription {
     $this->_user->beAbonnePortail();
 
     $date = new DateTime($this->getTimeSource()->dateYmd());
-    $date->modify('+' . $days . ' day');
+
+    if ($days > 0)
+      $date->modify('+' . $days . ' day');
+
+    if ($days <= 0)
+      $date->modify('-1 day');
 
     $this->_user->setDateFin($date->format('Y-m-d'));
     return $this;
diff --git a/tests/scenarios/PortalBorrowers/PortalBorrowersFrontTest.php b/tests/scenarios/PortalBorrowers/PortalBorrowersFrontTest.php
index 8344ef568e77c85a62a8c1e03a4a38d2c60a3dc2..6487f070651101cee499e277fc8ff264f76e42e4 100644
--- a/tests/scenarios/PortalBorrowers/PortalBorrowersFrontTest.php
+++ b/tests/scenarios/PortalBorrowers/PortalBorrowersFrontTest.php
@@ -242,6 +242,45 @@ class PortalBorrowersFrontRegisterActivationTest extends PortalBorrowersActivate
 
 
 
+/* hotline : https://forge.afi-sa.net/issues/186186 */
+class PortalBorrowersFrontRegisterActivationWithValidationDelayZeroTest
+  extends PortalBorrowersActivatedTestCase {
+
+  public function setUp() {
+    parent::setUp();
+
+    Class_AdminVar::set('PORTAL_BORROWERS_LIBRARIES_IDS', '1');
+    Class_AdminVar::set('PORTAL_BORROWERS_VALIDATION_DELAY', '0');
+
+    $time_source = (new TimeSourceForTest('2022-10-21 10:43:04'));
+    Class_User_ILSSubscription::setTimeSource($time_source);
+
+    $activation_key = 'zzhz';
+    $this->fixture(Class_UsersNonValid::class,
+                   ['id' => 188,
+                    'login' => 'newuser',
+                    'password' => 'pass',
+                    'mail' => 'user@server.io',
+                    'date' => $time_source->time(),
+                    'id_site' => '1',
+                    'civilite' => '1',
+                    'naissance' => '1977-08-18',
+                    'cle' => $activation_key]);
+
+    $this->dispatch('/opac/auth/activeuser?c=' . $activation_key);
+  }
+
+
+  /** @test */
+  public function createdUserDateFinShouldBeCurrentDayLessOne() {
+    $this->assertEquals('2022-10-20',
+                        Class_Users::findFirstBy(['login' => 'newuser'])->getDateFin());
+  }
+}
+
+
+
+
 class PortalBorrowersFrontDisabledRegisterTest extends PortalBorrowersDisabledTestCase {
   public function setUp() {
     parent::setUp();