diff --git a/__init__.py b/__init__.py
index 5e41edc..4bb5a1b 100644
--- a/__init__.py
+++ b/__init__.py
@@ -1,10 +1,11 @@
 import asyncio
 
 from fastapi import APIRouter
+from loguru import logger
 
 from lnbits.db import Database
 from lnbits.helpers import template_renderer
-from lnbits.tasks import catch_everything_and_restart
+from lnbits.tasks import create_permanent_unique_task
 
 db = Database("ext_example")
 
@@ -27,6 +28,15 @@ def example_renderer():
 from .views_api import *  # noqa: F401,F403
 
 
+scheduled_tasks: list[asyncio.Task] = []
+
+def example_stop():
+    for task in scheduled_tasks:
+        try:
+            task.cancel()
+        except Exception as ex:
+            logger.warning(ex)
+
 def example_start():
-    loop = asyncio.get_event_loop()
-    loop.create_task(catch_everything_and_restart(wait_for_paid_invoices))
+    task = create_permanent_unique_task("ext_example", wait_for_paid_invoices)
+    scheduled_tasks.append(task)