diff --git a/README.md b/README.md
index a067e96a4279fc281a996b2f974892b7d1b8bca7..50179afa459af4ef6ac4222688dad28f797c1e47 100644
--- a/README.md
+++ b/README.md
@@ -67,6 +67,7 @@ Follow next steps to perform OpenCAPIF SDK installation:
 #Commands to install the Python environment
 pyenv install 3.12
 pyenv virtualenv 3.12 Sdkenviroment
+source your/path/to/.pyenv/versions/pesp_sdk_env/bin/activate
 ```
 
 OPTIONAL step: sometimes Apple Mac shells raise issues while finding the shell path. If this happens, try this command:
@@ -85,15 +86,15 @@ git clone -b v1 --single-branch https://github.com/Telefonica/pesp_capif_sdk.git
 ```
 
 ```console
-#Then move to the SDK-S6G folder
+#Then move to the pesp_capif_sdk folder
 
-cd /your/path/to/SDK-S6G
+cd /your/path/to/pesp_capif_sdk
 ```
 
 3 - Install the Python requirements listed in requirements.txt file:
 
 ```console
-cd Safe-6g.egg-info
+cd installation
 
 python -m pip install --upgrade pip
 
diff --git a/config/config.json b/config/config.json
index 76938b804a8f5c13d65e0e22c324c421d77d1f69..8c342fdd4e8016579fc1d564f2043e6d9a9fc1d2 100644
--- a/config/config.json
+++ b/config/config.json
@@ -1,40 +1,41 @@
 { 
 
-"invoker_folder": "", 
+"invoker_folder": "/Users/IDB0128/Documents/OpenCapif/test_invoker_certificate_folder", 
 
-"provider_folder": "", 
+"provider_folder": "/Users/IDB0128/Documents/OpenCapif/test_provider_certificate_folder", 
 
-"capif_host": "", 
+"capif_host": "capif-prev.mobilesandbox.cloud", 
 
-"register_host": "", 
+"register_host": "registercapif-prev.mobilesandbox.cloud", 
 
-"capif_https_port": "", 
+"capif_https_port": "36212", 
 
-"capif_register_port": "", 
+"capif_register_port": "36211", 
 
-"capif_callback_url": "", 
+"capif_callback_url": "http://localhost:5000", 
 
-"csr_common_name": "", 
+"csr_common_name": "test03", 
 
-"csr_organizational_unit": "", 
+"csr_organizational_unit": "test_app_ou", 
 
-"csr_organization": "", 
+"csr_organization": "test_app_o", 
 
-"crs_locality": "", 
+"crs_locality": "Madrid", 
 
-"csr_state_or_province_name": "", 
+"csr_state_or_province_name": "Madrid", 
 
-"csr_country_name": "", 
+"csr_country_name": "ES", 
 
-"csr_email_address": "", 
+"csr_email_address": "test@example.com", 
  
-"capif_username": "", 
+"capif_username": "echeva_0", 
 
-"capif_password": "",
+"capif_password": "echevapass",
 
-"APFs":"",
+"APFs":"1",
 
-"AEFs":"",
+"AEFs":"1",
 
-"debug_mode": ""
+"debug_mode": "True"
 } 
+
diff --git a/doc/images/Flujo completo-OPENCAPIF ACTUAL.jpg b/doc/images/Flujo completo-OPENCAPIF ACTUAL.jpg
index 960e4211c929c729994bde46ef81e5458ddb7e4e..bc43e401b97a21ca349f6edf0164a66a4219ed1e 100644
Binary files a/doc/images/Flujo completo-OPENCAPIF ACTUAL.jpg and b/doc/images/Flujo completo-OPENCAPIF ACTUAL.jpg differ
diff --git a/doc/images/Flujo completo-SDK ACTUAL CON REGISTER.jpg b/doc/images/Flujo completo-SDK ACTUAL CON REGISTER.jpg
index 249dd95f7f508893e0f8976d053f4546af349178..ca134cb1b600f24b44cb3cb0dd8e0c52a28a2287 100644
Binary files a/doc/images/Flujo completo-SDK ACTUAL CON REGISTER.jpg and b/doc/images/Flujo completo-SDK ACTUAL CON REGISTER.jpg differ
diff --git a/installation/requirements.txt b/installation/requirements.txt
new file mode 100644
index 0000000000000000000000000000000000000000..39034a466171a6f5ac94593a7b800747bdd5e6a3
--- /dev/null
+++ b/installation/requirements.txt
@@ -0,0 +1,35 @@
+argh==0.31.3
+arrow==1.3.0
+binaryornot==0.4.4
+certifi==2024.7.4
+cffi==1.16.0
+chardet==5.2.0
+charset-normalizer==3.3.2
+click==8.0.1
+cookiecutter==2.1.1
+coverage==4.5.4
+cryptography==38.0.4
+flake8==3.9.2
+idna==3.7
+iniconfig==2.0.0
+invoke==1.6.0
+Jinja2==3.1.4
+jinja2-time==0.2.0
+MarkupSafe==2.1.5
+mccabe==0.6.1
+packaging==24.1
+pluggy==1.5.0
+pycodestyle==2.7.0
+pycparser==2.22
+pyflakes==2.3.1
+pyOpenSSL==22.1.0
+pytest==8.3.2
+python-dateutil==2.9.0.post0
+python-slugify==8.0.4
+PyYAML==6.0.1
+requests==2.32.3
+six==1.16.0
+text-unidecode==1.3
+types-python-dateutil==2.9.0.20240316
+typing-extensions==3.10.0.2
+urllib3==2.2.2
\ No newline at end of file
diff --git a/scripts/emulator_utils.py b/scripts/emulator_utils.py
index 14408759f2abb58dee937b07fe0c6aa540373b45..02924f298821d929f0c1e6701a600817b246d58b 100755
--- a/scripts/emulator_utils.py
+++ b/scripts/emulator_utils.py
@@ -1,16 +1,11 @@
 
 
 def get_config_file()-> str : 
-    return "/Users/IDB0128/Documents/OpenCapif/SDK-S6G/Functionalities/Config_files/config.json"
+    return "/Users/IDB0128/git_repos/pesp_capif_sdk/config/config.json"
 
 def get_register_file()-> str : 
-    return "/Users/IDB0128/Documents/OpenCapif/SDK-S6G/Functionalities/Config_files/register.json"
+    return "/Users/IDB0128/git_repos/pesp_capif_sdk/config/register.json"
 
 def provider_exposer_get_sample_api_description_path() -> str:
-    return "/Users/IDB0128/Documents/OpenCapif/SDK-S6G/Functionalities/capif_exposer_sample_files/provider_api_description_sample.json"
+    return "/Users/IDB0128/git_repos/pesp_capif_sdk/api-samples/provider_api_description_sample.json"
 
-def get_provider_config_file()->str:
-    return "/Users/IDB0128/Documents/OpenCapif/SDK-S6G/Functionalities/Config_files/Provider_config.json"
-
-def get_sdk_folder()-> str:
-    return "/Users/IDB0128/Documents/OpenCapif/SDK-S6G/"
\ No newline at end of file
diff --git a/scripts/invoker_capif_connector.py b/scripts/invoker_capif_connector.py
index cfd1bccaccb0c8e299b4c4a9149a5d6034a83462..61fd3993cc14470c22d74152acb4aca16c949b17 100755
--- a/scripts/invoker_capif_connector.py
+++ b/scripts/invoker_capif_connector.py
@@ -1,11 +1,14 @@
 
-import emulator_utils 
 import sys
-sys.path.insert(0, emulator_utils.get_sdk_folder)
+import os
+import emulator_utils
 
-# Ahora importa las clases desde tu archivo sdk.py
-from sdk import CAPIFInvokerConnector
+# Añadir el directorio del SDK al PYTHONPATH usando una ruta relativa
+script_dir = os.path.dirname(os.path.abspath(__file__))  # Directorio actual del script
+sdk_path = os.path.join(script_dir, '..', 'sdk')  # Subir un nivel y apuntar a 'sdk'
+sys.path.insert(0, sdk_path)
 
+from sdk import CAPIFInvokerConnector
 
 
 def showcase_capif_connector():
diff --git a/scripts/invoker_capif_connector_offboarding.py b/scripts/invoker_capif_connector_offboarding.py
index b30dc77a9381332b752f803adca542228b1fe29f..94660893e4aca5affbae947fcbdeeda189d29792 100755
--- a/scripts/invoker_capif_connector_offboarding.py
+++ b/scripts/invoker_capif_connector_offboarding.py
@@ -1,18 +1,17 @@
-import sys
-import os
 
-# Agrega la ruta del archivo al sys.path
-sys.path.append('/Users/IDB0128/Documents/OpenCapif/SDK-S6G')
 
-
-import emulator_utils 
 import sys
-sys.path.insert(0, emulator_utils.get_sdk_folder)
+import os
+import emulator_utils
+
+# Añadir el directorio del SDK al PYTHONPATH usando una ruta relativa
+script_dir = os.path.dirname(os.path.abspath(__file__))  # Directorio actual del script
+sdk_path = os.path.join(script_dir, '..', 'sdk')  # Subir un nivel y apuntar a 'sdk'
+sys.path.insert(0, sdk_path)
 
-# Ahora importa las clases desde tu archivo sdk.py
+# Ahora importa la clase CAPIFProviderConnector desde el archivo sdk.py
 from sdk import CAPIFInvokerConnector
 
-import emulator_utils
 
 def showcase_offboard_and_deregister_invoker():
     capif_connector = CAPIFInvokerConnector(config_file=emulator_utils.get_config_file())
diff --git a/scripts/invoker_service_discovery.py b/scripts/invoker_service_discovery.py
index 0b0d06c742ba6caef6a1ff453dff83eac5d20dfc..744d2a0ba13573ef9c1ab94a1f1155d074295319 100755
--- a/scripts/invoker_service_discovery.py
+++ b/scripts/invoker_service_discovery.py
@@ -1,6 +1,11 @@
-import emulator_utils 
 import sys
-sys.path.insert(0, emulator_utils.get_sdk_folder)
+import os
+import emulator_utils
+
+# Añadir el directorio del SDK al PYTHONPATH usando una ruta relativa
+script_dir = os.path.dirname(os.path.abspath(__file__))  # Directorio actual del script
+sdk_path = os.path.join(script_dir, '..', 'sdk')  # Subir un nivel y apuntar a 'sdk'
+sys.path.insert(0, sdk_path)
 
 # Ahora importa las clases desde tu archivo sdk.py
 from sdk import ServiceDiscoverer
diff --git a/scripts/invoker_service_get_token.py b/scripts/invoker_service_get_token.py
index 4fe52a96ba20361f42d8cbc98ab199bba499e4c2..6621491f9ce7fb48c9b171135bda034df68c96ac 100755
--- a/scripts/invoker_service_get_token.py
+++ b/scripts/invoker_service_get_token.py
@@ -1,6 +1,11 @@
-import emulator_utils 
 import sys
-sys.path.insert(0, emulator_utils.get_sdk_folder)
+import os
+import emulator_utils
+
+# Añadir el directorio del SDK al PYTHONPATH usando una ruta relativa
+script_dir = os.path.dirname(os.path.abspath(__file__))  # Directorio actual del script
+sdk_path = os.path.join(script_dir, '..', 'sdk')  # Subir un nivel y apuntar a 'sdk'
+sys.path.insert(0, sdk_path)
 
 # Ahora importa las clases desde tu archivo sdk.py
 from sdk import ServiceDiscoverer
diff --git a/scripts/provider_capif_connector.py b/scripts/provider_capif_connector.py
index 8fc6bfa9fc8a096f681bb866bb1d9e816eb0c3c5..b2fb5d017251608c19a6ca4b1aac00200e039a20 100755
--- a/scripts/provider_capif_connector.py
+++ b/scripts/provider_capif_connector.py
@@ -1,6 +1,11 @@
-import emulator_utils 
 import sys
-sys.path.insert(0, emulator_utils.get_sdk_folder)
+import os
+import emulator_utils
+
+# Añadir el directorio del SDK al PYTHONPATH usando una ruta relativa
+script_dir = os.path.dirname(os.path.abspath(__file__))  # Directorio actual del script
+sdk_path = os.path.join(script_dir, '..', 'sdk')  # Subir un nivel y apuntar a 'sdk'
+sys.path.insert(0, sdk_path)
 
 # Ahora importa las clases desde tu archivo sdk.py
 from sdk import CAPIFProviderConnector
diff --git a/scripts/provider_capif_connector_offboarding.py b/scripts/provider_capif_connector_offboarding.py
index 8df73594fa68559e57c81c7a2622266384217957..18fc3a7c0634ec5a448931bdeb17976a9c63829b 100755
--- a/scripts/provider_capif_connector_offboarding.py
+++ b/scripts/provider_capif_connector_offboarding.py
@@ -1,20 +1,21 @@
-import emulator_utils 
 import sys
-sys.path.insert(0, emulator_utils.get_sdk_folder)
+import os
+import emulator_utils
+
+# Añadir el directorio del SDK al PYTHONPATH usando una ruta relativa
+script_dir = os.path.dirname(os.path.abspath(__file__))  # Directorio actual del script
+sdk_path = os.path.join(script_dir, '..', 'sdk')  # Subir un nivel y apuntar a 'sdk'
+sys.path.insert(0, sdk_path)
+
 
-# Ahora importa las clases desde tu archivo sdk.py
 from sdk import CAPIFProviderConnector
+
 def offboard_capif_nef_connector():
     """
-
     """
     capif_connector = CAPIFProviderConnector(config_file=emulator_utils.get_config_file())
-
     capif_connector.offboard_and_deregister_nef()
     print("COMPLETED")
 
-    
-
 if __name__ == "__main__":
-    #Let's register a NEF to CAPIF. This should happen exactly once
     offboard_capif_nef_connector()
diff --git a/scripts/provider_get_all_published_api.py b/scripts/provider_get_all_published_api.py
index 468d87ab58a0db3c7355c13049fcbea4f326251e..64044634242fab23d761ca0d6fced7c9c7cce0a7 100644
--- a/scripts/provider_get_all_published_api.py
+++ b/scripts/provider_get_all_published_api.py
@@ -1,6 +1,11 @@
-import emulator_utils 
 import sys
-sys.path.insert(0, emulator_utils.get_sdk_folder)
+import os
+import emulator_utils
+
+# Añadir el directorio del SDK al PYTHONPATH usando una ruta relativa
+script_dir = os.path.dirname(os.path.abspath(__file__))  # Directorio actual del script
+sdk_path = os.path.join(script_dir, '..', 'sdk')  # Subir un nivel y apuntar a 'sdk'
+sys.path.insert(0, sdk_path)
 
 # Ahora importa las clases desde tu archivo sdk.py
 from sdk import CAPIFProviderConnector
diff --git a/scripts/provider_get_published_api.py b/scripts/provider_get_published_api.py
index 13eb933b3d6c9da821ab88dc491d2a6a566d75c0..aa603c2bbe2863601a870fed7908cf35e113b4fe 100644
--- a/scripts/provider_get_published_api.py
+++ b/scripts/provider_get_published_api.py
@@ -1,6 +1,11 @@
-import emulator_utils 
 import sys
-sys.path.insert(0, emulator_utils.get_sdk_folder)
+import os
+import emulator_utils
+
+# Añadir el directorio del SDK al PYTHONPATH usando una ruta relativa
+script_dir = os.path.dirname(os.path.abspath(__file__))  # Directorio actual del script
+sdk_path = os.path.join(script_dir, '..', 'sdk')  # Subir un nivel y apuntar a 'sdk'
+sys.path.insert(0, sdk_path)
 
 # Ahora importa las clases desde tu archivo sdk.py
 from sdk import CAPIFProviderConnector
diff --git a/scripts/provider_publish_api.py b/scripts/provider_publish_api.py
index 0a3ced1331898ea9a629d52600fe4c501bd3ab25..694326e2ab5a4dade07feb78a2159c75f8f13177 100644
--- a/scripts/provider_publish_api.py
+++ b/scripts/provider_publish_api.py
@@ -1,6 +1,11 @@
-import emulator_utils 
 import sys
-sys.path.insert(0, emulator_utils.get_sdk_folder)
+import os
+import emulator_utils
+
+# Añadir el directorio del SDK al PYTHONPATH usando una ruta relativa
+script_dir = os.path.dirname(os.path.abspath(__file__))  # Directorio actual del script
+sdk_path = os.path.join(script_dir, '..', 'sdk')  # Subir un nivel y apuntar a 'sdk'
+sys.path.insert(0, sdk_path)
 
 # Ahora importa las clases desde tu archivo sdk.py
 from sdk import CAPIFProviderConnector
diff --git a/scripts/provider_unpublish_api.py b/scripts/provider_unpublish_api.py
index 1cc8157e9f68f144fc966c13647ac6b0167821b0..6e9305a5d734553c58f10fd33c881bda14953594 100644
--- a/scripts/provider_unpublish_api.py
+++ b/scripts/provider_unpublish_api.py
@@ -1,6 +1,11 @@
-import emulator_utils 
 import sys
-sys.path.insert(0, emulator_utils.get_sdk_folder)
+import os
+import emulator_utils
+
+# Añadir el directorio del SDK al PYTHONPATH usando una ruta relativa
+script_dir = os.path.dirname(os.path.abspath(__file__))  # Directorio actual del script
+sdk_path = os.path.join(script_dir, '..', 'sdk')  # Subir un nivel y apuntar a 'sdk'
+sys.path.insert(0, sdk_path)
 
 # Ahora importa las clases desde tu archivo sdk.py
 from sdk import CAPIFProviderConnector
diff --git a/scripts/provider_update_api.py b/scripts/provider_update_api.py
index e9cfb276668d5a73422108affb00cf63802a3025..6e7b18ef98a2515b0c145857b086fe4a3b005f38 100644
--- a/scripts/provider_update_api.py
+++ b/scripts/provider_update_api.py
@@ -1,6 +1,11 @@
-import emulator_utils 
 import sys
-sys.path.insert(0, emulator_utils.get_sdk_folder)
+import os
+import emulator_utils
+
+# Añadir el directorio del SDK al PYTHONPATH usando una ruta relativa
+script_dir = os.path.dirname(os.path.abspath(__file__))  # Directorio actual del script
+sdk_path = os.path.join(script_dir, '..', 'sdk')  # Subir un nivel y apuntar a 'sdk'
+sys.path.insert(0, sdk_path)
 
 # Ahora importa las clases desde tu archivo sdk.py
 from sdk import CAPIFProviderConnector
diff --git a/sdk/sdk.py b/sdk/sdk.py
index d98df5baf598a6cf93fb7f22e791d441bd4301b0..3429fd10d43d2272d9193a1b37d2fa557bd7ea6e 100644
--- a/sdk/sdk.py
+++ b/sdk/sdk.py
@@ -31,7 +31,7 @@ logging.basicConfig(
     level=logging.NOTSET,  # Nivel mínimo de severidad a registrar
     format='%(asctime)s - %(name)s - %(levelname)s - %(message)s',  # Formato del mensaje de log
     handlers=[
-        logging.FileHandler("sdk_logs.log"),  # Registra en un archivo
+        logging.FileHandler("../Functionalities/sdk_logs.log"),  # Registra en un archivo
         logging.StreamHandler()  # También muestra en la consola
     ]
 )