diff --git a/odoo_somconnexio_python_client/resources/product_catalog.py b/odoo_somconnexio_python_client/resources/product_catalog.py
index b48a24ac4de82ce602f757865a634bb9e07ce31b..5064801ced3997efa9528e8e8f41de5ad896485a 100644
--- a/odoo_somconnexio_python_client/resources/product_catalog.py
+++ b/odoo_somconnexio_python_client/resources/product_catalog.py
@@ -72,11 +72,32 @@ class ProductCatalog:
         self.packs = [Pack(**pack) for pack in packs]
 
     @classmethod
-    def search(cls, code="", category="", lang="ca", product_code=""):
+    def search(cls, code="", category="", lang="ca", is_company="false"):
+        return cls._get_product_catalog(
+            {
+                "code": code,
+                "categ": category,
+                "is_company": is_company,
+            },
+            lang,
+        )
+
+    @classmethod
+    def get_by_product_code(cls, code="", lang="ca", product_code=""):
+        return cls._get_product_catalog(
+            {
+                "code": code,
+                "product_code": product_code,
+            },
+            lang,
+        )
+
+    @classmethod
+    def _get_product_catalog(cls, params, lang):
         headers = {"Accept-Language": lang}
         response_data = Client().get(
             cls._url_path,
-            params={"code": code, "categ": category, "product_code": product_code},
+            params={**params},
             extra_headers=headers,
         )
 
diff --git a/tests/resources/cassettes/test_product_catalog/TariffTests.test_search_available_products_for_product_code.yaml b/tests/resources/cassettes/test_product_catalog/TariffTests.test_get_by_product_code.yaml
similarity index 51%
rename from tests/resources/cassettes/test_product_catalog/TariffTests.test_search_available_products_for_product_code.yaml
rename to tests/resources/cassettes/test_product_catalog/TariffTests.test_get_by_product_code.yaml
index c16fd0437e57bddb08f9ce69b5a027ec02c3ed0b..e649def906965583459446c19bdcd37e07948063 100644
--- a/tests/resources/cassettes/test_product_catalog/TariffTests.test_search_available_products_for_product_code.yaml
+++ b/tests/resources/cassettes/test_product_catalog/TariffTests.test_get_by_product_code.yaml
@@ -15,28 +15,28 @@ interactions:
       User-Agent:
       - python-requests/2.27.1
     method: GET
-    uri: http://odoo-sc.local:8069/api/product-catalog?code=&categ=&product_code=SE_SC_REC_BA_F_100
+    uri: http://odoo-sc.local:8069/api/product-catalog?code=&product_code=SE_SC_REC_BA_F_100
   response:
     body:
-      string: '{"pricelists": [{"code": "21IVA", "products": [{"code": "SE_SC_REC_BA_F_1024",
-        "name": "Fibra 1Gb", "price": 47.93, "category": "fiber", "minutes": null,
-        "data": null, "bandwidth": 1024, "available_for": ["member", "sponsored"],
-        "has_landline_phone": true}, {"code": "SE_SC_REC_BA_F_600", "name": "Fibra
-        600Mb", "price": 35.54, "category": "fiber", "minutes": null, "data": null,
-        "bandwidth": 600, "available_for": ["member", "sponsored"], "has_landline_phone":
-        true}],"packs":[]}]}'
+      string: '{"pricelists": [{"code": "21IVA", "products": [{"code": "SE_SC_REC_BA_F_100_SF",
+        "name": "Fibra 100Mb Sense Fix", "price": 31.5, "category": "fiber", "minutes":
+        null, "data": null, "bandwidth": 100, "available_for": ["member"], "has_landline_phone":
+        false}], "packs": []}, {"code": "0IVA", "products": [{"code": "SE_SC_REC_BA_F_100_SF",
+        "name": "Fibra 100Mb Sense Fix", "price": 26.03, "category": "fiber", "minutes":
+        null, "data": null, "bandwidth": 100, "available_for": ["member"], "has_landline_phone":
+        false}], "packs": []}]}'
     headers:
       Access-Control-Allow-Methods:
       - GET
       Access-Control-Allow-Origin:
       - None
       Content-Length:
-      - '471'
+      - '530'
       Content-Type:
       - application/json
       Cookie: '****'
       Date:
-      - Fri, 01 Jul 2022 17:22:38 GMT
+      - Mon, 03 Feb 2025 10:38:39 GMT
       Server:
       - Werkzeug/0.11.15 Python/3.7.7
       Set-Cookie: '****'
diff --git a/tests/resources/cassettes/test_product_catalog/TariffTests.test_search_catalog_with_lang.yaml b/tests/resources/cassettes/test_product_catalog/TariffTests.test_search_catalog_with_lang.yaml
index 6a01493f03ae9c852a73570aedcefb48345d35e1..6fa97d1c543b2bed49cd8acb2dd3ba88e03c85ca 100644
--- a/tests/resources/cassettes/test_product_catalog/TariffTests.test_search_catalog_with_lang.yaml
+++ b/tests/resources/cassettes/test_product_catalog/TariffTests.test_search_catalog_with_lang.yaml
@@ -15,142 +15,195 @@ interactions:
       User-Agent:
       - python-requests/2.27.1
     method: GET
-    uri: http://odoo-sc.local:8069/api/product-catalog?code=21IVA&categ=&product_code=
+    uri: http://odoo-sc.local:8069/api/product-catalog?code=21IVA&categ=&is_company=false
   response:
     body:
       string: '{"pricelists": [{"code": "21IVA", "products": [{"code": "SE_SC_REC_BA_ADSL_100",
-        "name": "ADSL 100 min a fix o m\u00f2bil", "price": 29.75, "category": "adsl",
-        "minutes": null, "data": null, "bandwidth": 20, "available_for": ["member",
-        "coop_agreement", "sponsored"], "has_landline_phone": true}, {"code": "SE_SC_REC_BA_ADSL_1000",
-        "name": "ADSL 1000 min a fix", "price": 29.75, "category": "adsl", "minutes":
-        null, "data": null, "bandwidth": 20, "available_for": ["member", "coop_agreement",
-        "sponsored"], "has_landline_phone": true}, {"code": "SE_SC_REC_BA_ADSL_SF",
-        "name": "ADSL sense fix", "price": 26.03, "category": "adsl", "minutes": null,
-        "data": null, "bandwidth": 20, "available_for": ["member", "coop_agreement",
-        "sponsored"], "has_landline_phone": false}, {"code": "SE_SC_REC_BA_BORDA",
-        "name": "La Borda servei fibra", "price": 1.0, "category": "fiber", "minutes":
-        null, "data": null, "bandwidth": 0, "available_for": ["member"], "has_landline_phone":
-        true}, {"code": "SE_SC_REC_BA_BORDA_LOCAL", "name": "La Borda servei fibra
-        local", "price": 1.0, "category": "fiber", "minutes": null, "data": null,
-        "bandwidth": 0, "available_for": ["member"], "has_landline_phone": true},
-        {"code": "SE_SC_REC_BA_BORDA_MANTENIMENT", "name": "La Borda quota manteniment
-        fibra", "price": 1.0, "category": "fiber", "minutes": null, "data": null,
-        "bandwidth": 0, "available_for": ["member"], "has_landline_phone": true},
-        {"code": "SE_SC_REC_BA_F_100", "name": "Fibra 100Mb", "price": 29.75, "category":
-        "fiber", "minutes": null, "data": null, "bandwidth": 100, "available_for":
-        ["member", "sponsored"], "has_landline_phone": true}, {"code": "SE_SC_REC_BA_F_100_SF",
-        "name": "Fibra 100Mb Sense Fix", "price": 31.5, "category": "fiber", "minutes":
-        null, "data": null, "bandwidth": 100, "available_for": ["member", "sponsored"],
-        "has_landline_phone": true}, {"code": "SE_SC_REC_BA_F_1024", "name": "Fibra
-        1Gb", "price": 47.93, "category": "fiber", "minutes": null, "data": null,
-        "bandwidth": 1024, "available_for": ["member", "sponsored"], "has_landline_phone":
-        true}, {"code": "SE_SC_REC_BA_F_600", "name": "Fibra 600Mb", "price": 35.54,
+        "name": "ADSL 100 min a fix o m\u00f2bil", "price": 36.0, "category": "adsl",
+        "minutes": null, "data": null, "bandwidth": 0, "available_for": ["member",
+        "coop_agreement"], "has_landline_phone": true}, {"code": "SE_SC_REC_BA_ADSL_1000",
+        "name": "ADSL 1000 min a fix", "price": 1.0, "category": "adsl", "minutes":
+        null, "data": null, "bandwidth": 0, "available_for": ["member", "coop_agreement"],
+        "has_landline_phone": true}, {"code": "SE_SC_REC_BA_ADSL_SF", "name": "ADSL
+        sense fix", "price": 31.5, "category": "adsl", "minutes": null, "data": null,
+        "bandwidth": 0, "available_for": ["member", "coop_agreement"], "has_landline_phone":
+        false}, {"code": "SE_SC_REC_BA_F_100", "name": "Fibra 100Mb", "price": 34.0,
+        "category": "fiber", "minutes": null, "data": null, "bandwidth": 100, "available_for":
+        ["member"], "has_landline_phone": true}, {"code": "SE_SC_REC_BA_F_1024", "name":
+        "Fibra 1Gb", "price": 58.0, "category": "fiber", "minutes": null, "data":
+        null, "bandwidth": 1024, "available_for": ["member"], "has_landline_phone":
+        true}, {"code": "SE_SC_REC_BA_F_300", "name": "Fibra 300Mb", "price": 34.0,
+        "category": "fiber", "minutes": null, "data": null, "bandwidth": 300, "available_for":
+        ["member"], "has_landline_phone": true}, {"code": "SE_SC_REC_BA_F_300_SF",
+        "name": "Fibra 300Mb Sense Fix", "price": 31.5, "category": "fiber", "minutes":
+        null, "data": null, "bandwidth": 300, "available_for": ["member"], "has_landline_phone":
+        false}, {"code": "SE_SC_REC_BA_F_600", "name": "Fibra 600Mb", "price": 43.0,
         "category": "fiber", "minutes": null, "data": null, "bandwidth": 600, "available_for":
-        ["member", "sponsored"], "has_landline_phone": true}, {"code": "SE_SC_REC_BA_F_GRETA_600",
-        "name": "Fibra GRETA 600Mb", "price": 1.0, "category": "fiber", "minutes":
-        null, "data": null, "bandwidth": 0, "available_for": ["member"], "has_landline_phone":
-        true}, {"code": "SE_SC_REC_BA_F_GRETA_600_A", "name": "Fibra GRETA 600Mb amb
-        aportaci\u00f3 a la infrastructura", "price": 1.0, "category": "fiber", "minutes":
-        null, "data": null, "bandwidth": 0, "available_for": ["member"], "has_landline_phone":
-        true}, {"code": "SE_SC_REC_BA_F_GRETA_600_SF", "name": "Fibra GRETA 600Mb
-        sense fix", "price": 1.0, "category": "fiber", "minutes": null, "data": null,
-        "bandwidth": 0, "available_for": ["member"], "has_landline_phone": true},
-        {"code": "SE_SC_REC_BA_F_GRETA_600_SF_A", "name": "Fibra GRETA 600Mb sense
-        fix amb aportaci\u00f3 a la infrastructura", "price": 1.0, "category": "fiber",
-        "minutes": null, "data": null, "bandwidth": 0, "available_for": ["member"],
-        "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_BA_IP_fix", "name":
-        "La Borda IP fixa", "price": 1.0, "category": "fiber", "minutes": null, "data":
-        null, "bandwidth": 0, "available_for": ["member"], "has_landline_phone": true},
-        {"code": "SE_SC_REC_MOBILE_T_0_0", "name": "0 min 0 MB", "price": 1.6500000000000001,
-        "category": "mobile", "minutes": 0, "data": 0, "bandwidth": null, "available_for":
-        ["member", "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_0_1024",
-        "name": "0 min 1 GB", "price": 3.72, "category": "mobile", "minutes": 0, "data":
-        1024, "bandwidth": null, "available_for": ["member", "coop_agreement", "sponsored"]},
-        {"code": "SE_SC_REC_MOBILE_T_0_10240", "name": "0 min 10 GB", "price": 9.09,
-        "category": "mobile", "minutes": 0, "data": 10240, "bandwidth": null, "available_for":
-        ["member", "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_0_200",
-        "name": "0 min 200 MB", "price": 1.0, "category": "mobile", "minutes": 0,
-        "data": 200, "bandwidth": null, "available_for": ["member", "coop_agreement",
+        ["member"], "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_T_0_0",
+        "name": "0 min 0 MB", "price": 2.0, "category": "mobile", "minutes": 0, "data":
+        0, "bandwidth": null, "available_for": ["member", "coop_agreement", "sponsored"]},
+        {"code": "SE_SC_REC_MOBILE_T_0_1024", "name": "0 min 1 GB", "price": 4.5,
+        "category": "mobile", "minutes": 0, "data": 1024, "bandwidth": null, "available_for":
+        ["member", "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_0_10240",
+        "name": "0 min 10 GB", "price": 11.0, "category": "mobile", "minutes": 0,
+        "data": 10240, "bandwidth": null, "available_for": ["member", "coop_agreement",
         "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_0_2048", "name": "0 min 2 GB",
-        "price": 5.79, "category": "mobile", "minutes": 0, "data": 2048, "bandwidth":
-        null, "available_for": ["member", "coop_agreement", "sponsored"]}, {"code":
-        "SE_SC_REC_MOBILE_T_0_3072", "name": "0 min 3 GB", "price": 1.0, "category":
-        "mobile", "minutes": 0, "data": 3072, "bandwidth": null, "available_for":
-        ["member", "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_0_500",
-        "name": "0 min 500 MB", "price": 2.89, "category": "mobile", "minutes": 0,
-        "data": 500, "bandwidth": null, "available_for": ["member", "coop_agreement",
-        "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_0_5120", "name": "0 min 5 GB",
-        "price": 1.0, "category": "mobile", "minutes": 0, "data": 5120, "bandwidth":
-        null, "available_for": ["member", "coop_agreement", "sponsored"]}, {"code":
-        "SE_SC_REC_MOBILE_T_100_0", "name": "100 min 0 MB", "price": 1.0, "category":
-        "mobile", "minutes": 100, "data": 0, "bandwidth": null, "available_for": ["member",
-        "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_100_200", "name":
-        "100 min 200 MB", "price": 1.0, "category": "mobile", "minutes": 100, "data":
-        200, "bandwidth": null, "available_for": ["member", "coop_agreement", "sponsored"]},
-        {"code": "SE_SC_REC_MOBILE_T_150_0", "name": "150 min 0 MB", "price": 3.72,
-        "category": "mobile", "minutes": 150, "data": 0, "bandwidth": null, "available_for":
-        ["member", "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_150_1024",
-        "name": "150 min 1 GB", "price": 6.61, "category": "mobile", "minutes": 150,
-        "data": 1024, "bandwidth": null, "available_for": ["member", "coop_agreement",
-        "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_150_10240", "name": "150 min 10
-        GB", "price": 9.92, "category": "mobile", "minutes": 150, "data": 10240, "bandwidth":
-        null, "available_for": ["member", "coop_agreement", "sponsored"]}, {"code":
-        "SE_SC_REC_MOBILE_T_150_2048", "name": "150 min 2 GB", "price": 8.26, "category":
-        "mobile", "minutes": 150, "data": 2048, "bandwidth": null, "available_for":
-        ["member", "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_150_500",
-        "name": "150 min 500 MB", "price": 6.2, "category": "mobile", "minutes": 150,
-        "data": 500, "bandwidth": null, "available_for": ["member", "coop_agreement",
-        "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_200_0", "name": "200 min 0 MB",
-        "price": 1.0, "category": "mobile", "minutes": 200, "data": 0, "bandwidth":
-        null, "available_for": ["member", "coop_agreement", "sponsored"]}, {"code":
-        "SE_SC_REC_MOBILE_T_200_1024", "name": "200 min 1 GB", "price": 1.0, "category":
-        "mobile", "minutes": 200, "data": 1024, "bandwidth": null, "available_for":
-        ["member", "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_200_200",
-        "name": "200 min 200 MB", "price": 1.0, "category": "mobile", "minutes": 200,
-        "data": 200, "bandwidth": null, "available_for": ["member", "coop_agreement",
-        "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_200_2048", "name": "200 min 2
-        GB", "price": 1.0, "category": "mobile", "minutes": 200, "data": 2048, "bandwidth":
+        "price": 7.0, "category": "mobile", "minutes": 0, "data": 2048, "bandwidth":
         null, "available_for": ["member", "coop_agreement", "sponsored"]}, {"code":
-        "SE_SC_REC_MOBILE_T_200_500", "name": "200 min 500 MB", "price": 1.0, "category":
-        "mobile", "minutes": 200, "data": 500, "bandwidth": null, "available_for":
-        ["member", "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_UNL_0",
-        "name": "Il\u00b7limitades 0 MB", "price": 7.44, "category": "mobile", "minutes":
-        99999, "data": 0, "bandwidth": null, "available_for": ["member", "coop_agreement",
-        "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_UNL_1024", "name": "Il\u00b7limitades
-        1 GB", "price": 9.09, "category": "mobile", "minutes": 99999, "data": 1024,
-        "bandwidth": null, "available_for": ["member", "coop_agreement", "sponsored"]},
-        {"code": "SE_SC_REC_MOBILE_T_UNL_10240", "name": "Il\u00b7limitades 10 GB",
-        "price": 11.57, "category": "mobile", "minutes": 99999, "data": 10240, "bandwidth":
+        "SE_SC_REC_MOBILE_T_0_500", "name": "0 min 500 MB", "price": 3.5, "category":
+        "mobile", "minutes": 0, "data": 500, "bandwidth": null, "available_for": ["member",
+        "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_100_0", "name":
+        "100 min 0 MB", "price": 1.0, "category": "mobile", "minutes": 100, "data":
+        0, "bandwidth": null, "available_for": ["member", "coop_agreement", "sponsored"]},
+        {"code": "SE_SC_REC_MOBILE_T_100_200", "name": "100 min 200 MB", "price":
+        1.0, "category": "mobile", "minutes": 100, "data": 200, "bandwidth": null,
+        "available_for": ["member", "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_150_0",
+        "name": "150 min 0 MB", "price": 4.5, "category": "mobile", "minutes": 150,
+        "data": 0, "bandwidth": null, "available_for": ["member", "coop_agreement",
+        "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_150_1024", "name": "150 min 1
+        GB", "price": 7.0, "category": "mobile", "minutes": 150, "data": 1024, "bandwidth":
         null, "available_for": ["member", "coop_agreement", "sponsored"]}, {"code":
-        "SE_SC_REC_MOBILE_T_UNL_2048", "name": "Il\u00b7limitades 2 GB", "price":
-        9.92, "category": "mobile", "minutes": 99999, "data": 2048, "bandwidth": null,
-        "available_for": ["member", "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_UNL_23552",
-        "name": "Il\u00b7limitades 23 GB", "price": 14.88, "category": "mobile", "minutes":
-        99999, "data": 23552, "bandwidth": null, "available_for": ["member", "coop_agreement",
-        "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_UNL_30720", "name": "Il\u00b7limitades
-        30 GB", "price": 18.18, "category": "mobile", "minutes": 99999, "data": 30720,
-        "bandwidth": null, "available_for": ["member", "coop_agreement", "sponsored"]},
-        {"code": "SE_SC_REC_MOBILE_T_UNL_500", "name": "Il\u00b7limitades 500 MB",
-        "price": 8.26, "category": "mobile", "minutes": 99999, "data": 500, "bandwidth":
+        "SE_SC_REC_MOBILE_T_150_10240", "name": "150 min 10 GB", "price": 12.0, "category":
+        "mobile", "minutes": 150, "data": 10240, "bandwidth": null, "available_for":
+        ["member", "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_150_2048",
+        "name": "150 min 2 GB", "price": 10.0, "category": "mobile", "minutes": 150,
+        "data": 2048, "bandwidth": null, "available_for": ["member", "coop_agreement",
+        "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_150_500", "name": "150 min 500
+        MB", "price": 7.5, "category": "mobile", "minutes": 150, "data": 500, "bandwidth":
         null, "available_for": ["member", "coop_agreement", "sponsored"]}, {"code":
-        "SE_SC_REC_MOBILE_T_UNL_5120", "name": "Il\u00b7limitades 5 GB", "price":
-        1.0, "category": "mobile", "minutes": 99999, "data": 5120, "bandwidth": null,
-        "available_for": ["member", "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_UNL_51200",
-        "name": "Il\u00b7limitades 50 GB", "price": 22.31, "category": "mobile", "minutes":
-        99999, "data": 51200, "bandwidth": null, "available_for": ["member", "coop_agreement",
-        "sponsored"]}],"packs":[]}]}'
+        "SE_SC_REC_MOBILE_T_200_0", "name": "200 min 0 MB", "price": 1.0, "category":
+        "mobile", "minutes": 200, "data": 0, "bandwidth": null, "available_for": ["member",
+        "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_200_200", "name":
+        "200 min 200 MB", "price": 1.0, "category": "mobile", "minutes": 200, "data":
+        200, "bandwidth": null, "available_for": ["member", "coop_agreement", "sponsored"]},
+        {"code": "SE_SC_REC_MOBILE_T_UNL_30720", "name": "Il\u00b7limitades 30 GB",
+        "price": 19.0, "category": "mobile", "minutes": 99999, "data": 30720, "bandwidth":
+        null, "available_for": ["member", "coop_agreement", "sponsored"], "offer":
+        {"code": "SE_SC_REC_MOBILE_PACK_UNL_30720", "price": 1.0, "name": "Il\u00b7limitades
+        30 GB (Pack)"}}], "packs": [{"code": "SE_SC_REC_PACK_FIBER_1000_2_MOBILES_50",
+        "name": "Fibra 1Gb + Fix + 50 GB compartides 2 m\u00f2bils", "price": 73.0,
+        "category": "mobile_shared_data", "available_for": ["member"], "mobiles_in_pack":
+        2, "fiber_bandwidth": 1024, "has_land_line": true, "products": [{"code": "SE_SC_REC_BA_F_1024",
+        "name": "Fibra 1Gb", "price": 58.0, "category": "fiber", "minutes": null,
+        "data": null, "bandwidth": 1024, "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_2_SHARED_UNL_51200",
+        "name": "Il\u00b7limitades 50 GB compartides entre 2 m\u00f2bils", "price":
+        7.5, "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null},
+        {"code": "SE_SC_REC_MOBILE_2_SHARED_UNL_51200", "name": "Il\u00b7limitades
+        50 GB compartides entre 2 m\u00f2bils", "price": 7.5, "category": "mobile",
+        "minutes": 99999, "data": 51200, "bandwidth": null}]}, {"code": "SE_SC_REC_PACK_FIBER_1000_3_MOBILES_50",
+        "name": "Fibra 1Gb + Fix + 50 GB compartides 3 m\u00f2bils", "price": 77.5,
+        "category": "mobile_shared_data", "available_for": ["member"], "mobiles_in_pack":
+        3, "fiber_bandwidth": 1024, "has_land_line": true, "products": [{"code": "SE_SC_REC_BA_F_1024",
+        "name": "Fibra 1Gb", "price": 58.0, "category": "fiber", "minutes": null,
+        "data": null, "bandwidth": 1024, "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200",
+        "name": "Il\u00b7limitades 50 GB compartides entre 3 m\u00f2bils", "price":
+        6.5, "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null},
+        {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200", "name": "Il\u00b7limitades
+        50 GB compartides entre 3 m\u00f2bils", "price": 6.5, "category": "mobile",
+        "minutes": 99999, "data": 51200, "bandwidth": null}, {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200",
+        "name": "Il\u00b7limitades 50 GB compartides entre 3 m\u00f2bils", "price":
+        6.5, "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null}]},
+        {"code": "SE_SC_REC_PACK_FIBER_100_SF_UNL_20480", "name": "Fibra 100Mb Sense
+        Fix + m\u00f2bil IL 20 GB", "price": 1.0, "category": "bonified_mobile", "available_for":
+        ["member"], "mobiles_in_pack": 1, "fiber_bandwidth": 100, "has_land_line":
+        false, "products": [{"code": "SE_SC_REC_BA_F_100_SF", "name": "Fibra 100Mb
+        Sense Fix", "price": 31.5, "category": "fiber", "minutes": null, "data": null,
+        "bandwidth": 100, "has_landline_phone": false}, {"code": "SE_SC_REC_MOBILE_PACK_UNL_20480",
+        "name": "Il\u00b7limitades 20 GB (Pack)", "price": 8.0, "category": "mobile",
+        "minutes": 99999, "data": 20480, "bandwidth": null}]}, {"code": "SE_SC_REC_PACK_FIBER_100_UNL_20480",
+        "name": "Fibra 100 Mb + m\u00f2bil IL 20 GB", "price": 1.0, "category": "bonified_mobile",
+        "available_for": ["member"], "mobiles_in_pack": 1, "fiber_bandwidth": 100,
+        "has_land_line": true, "products": [{"code": "SE_SC_REC_BA_F_100", "name":
+        "Fibra 100Mb", "price": 34.0, "category": "fiber", "minutes": null, "data":
+        null, "bandwidth": 100, "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_PACK_UNL_20480",
+        "name": "Il\u00b7limitades 20 GB (Pack)", "price": 8.0, "category": "mobile",
+        "minutes": 99999, "data": 20480, "bandwidth": null}]}, {"code": "SE_SC_REC_PACK_FIBER_1024_UNL_20480",
+        "name": "Fibra 1 Gb + m\u00f2bil IL 20 GB", "price": 1.0, "category": "bonified_mobile",
+        "available_for": ["member"], "mobiles_in_pack": 1, "fiber_bandwidth": 1024,
+        "has_land_line": true, "products": [{"code": "SE_SC_REC_BA_F_1024", "name":
+        "Fibra 1Gb", "price": 58.0, "category": "fiber", "minutes": null, "data":
+        null, "bandwidth": 1024, "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_PACK_UNL_20480",
+        "name": "Il\u00b7limitades 20 GB (Pack)", "price": 8.0, "category": "mobile",
+        "minutes": 99999, "data": 20480, "bandwidth": null}]}, {"code": "SE_SC_REC_PACK_FIBER_300_2_MOBILES_50",
+        "name": "Fibra 300Mb + Fix + 50 GB compartides 2 m\u00f2bils", "price": 49.0,
+        "category": "mobile_shared_data", "available_for": ["member"], "mobiles_in_pack":
+        2, "fiber_bandwidth": 300, "has_land_line": true, "products": [{"code": "SE_SC_REC_BA_F_300",
+        "name": "Fibra 300Mb", "price": 34.0, "category": "fiber", "minutes": null,
+        "data": null, "bandwidth": 300, "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_2_SHARED_UNL_51200",
+        "name": "Il\u00b7limitades 50 GB compartides entre 2 m\u00f2bils", "price":
+        7.5, "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null},
+        {"code": "SE_SC_REC_MOBILE_2_SHARED_UNL_51200", "name": "Il\u00b7limitades
+        50 GB compartides entre 2 m\u00f2bils", "price": 7.5, "category": "mobile",
+        "minutes": 99999, "data": 51200, "bandwidth": null}]}, {"code": "SE_SC_REC_PACK_FIBER_300_3_MOBILES_50",
+        "name": "Fibra 300Mb + Fix + 50 GB compartides 3 m\u00f2bils", "price": 53.5,
+        "category": "mobile_shared_data", "available_for": ["member"], "mobiles_in_pack":
+        3, "fiber_bandwidth": 300, "has_land_line": true, "products": [{"code": "SE_SC_REC_BA_F_300",
+        "name": "Fibra 300Mb", "price": 34.0, "category": "fiber", "minutes": null,
+        "data": null, "bandwidth": 300, "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200",
+        "name": "Il\u00b7limitades 50 GB compartides entre 3 m\u00f2bils", "price":
+        6.5, "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null},
+        {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200", "name": "Il\u00b7limitades
+        50 GB compartides entre 3 m\u00f2bils", "price": 6.5, "category": "mobile",
+        "minutes": 99999, "data": 51200, "bandwidth": null}, {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200",
+        "name": "Il\u00b7limitades 50 GB compartides entre 3 m\u00f2bils", "price":
+        6.5, "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null}]},
+        {"code": "SE_SC_REC_PACK_FIBER_300_SF_UNL_20480", "name": "Fibra 300Mb Sense
+        Fix + m\u00f2bil IL 20 GB", "price": 1.0, "category": "bonified_mobile", "available_for":
+        ["member"], "mobiles_in_pack": 1, "fiber_bandwidth": 300, "has_land_line":
+        false, "products": [{"code": "SE_SC_REC_BA_F_300_SF", "name": "Fibra 300Mb
+        Sense Fix", "price": 31.5, "category": "fiber", "minutes": null, "data": null,
+        "bandwidth": 300, "has_landline_phone": false}, {"code": "SE_SC_REC_MOBILE_PACK_UNL_20480",
+        "name": "Il\u00b7limitades 20 GB (Pack)", "price": 8.0, "category": "mobile",
+        "minutes": 99999, "data": 20480, "bandwidth": null}]}, {"code": "SE_SC_REC_PACK_FIBER_300_UNL_20480",
+        "name": "Fibra 300 Mb + m\u00f2bil IL 20 GB", "price": 1.0, "category": "bonified_mobile",
+        "available_for": ["member"], "mobiles_in_pack": 1, "fiber_bandwidth": 300,
+        "has_land_line": true, "products": [{"code": "SE_SC_REC_BA_F_300", "name":
+        "Fibra 300Mb", "price": 34.0, "category": "fiber", "minutes": null, "data":
+        null, "bandwidth": 300, "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_PACK_UNL_20480",
+        "name": "Il\u00b7limitades 20 GB (Pack)", "price": 8.0, "category": "mobile",
+        "minutes": 99999, "data": 20480, "bandwidth": null}]}, {"code": "SE_SC_REC_PACK_FIBER_600_UNL_20480",
+        "name": "Fibra 600 Mb + m\u00f2bil IL 20 GB", "price": 1.0, "category": "bonified_mobile",
+        "available_for": ["member"], "mobiles_in_pack": 1, "fiber_bandwidth": 600,
+        "has_land_line": true, "products": [{"code": "SE_SC_REC_BA_F_600", "name":
+        "Fibra 600Mb", "price": 43.0, "category": "fiber", "minutes": null, "data":
+        null, "bandwidth": 600, "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_PACK_UNL_20480",
+        "name": "Il\u00b7limitades 20 GB (Pack)", "price": 8.0, "category": "mobile",
+        "minutes": 99999, "data": 20480, "bandwidth": null}]}, {"code": "SE_SC_REC_PACK_FIBER_SF_300_2_MOBILES_50",
+        "name": "Fibra 300Mb + 50 GB compartides 2 m\u00f2bils", "price": 46.5, "category":
+        "mobile_shared_data", "available_for": ["member"], "mobiles_in_pack": 2, "fiber_bandwidth":
+        300, "has_land_line": false, "products": [{"code": "SE_SC_REC_BA_F_300_SF",
+        "name": "Fibra 300Mb Sense Fix", "price": 31.5, "category": "fiber", "minutes":
+        null, "data": null, "bandwidth": 300, "has_landline_phone": false}, {"code":
+        "SE_SC_REC_MOBILE_2_SHARED_UNL_51200", "name": "Il\u00b7limitades 50 GB compartides
+        entre 2 m\u00f2bils", "price": 7.5, "category": "mobile", "minutes": 99999,
+        "data": 51200, "bandwidth": null}, {"code": "SE_SC_REC_MOBILE_2_SHARED_UNL_51200",
+        "name": "Il\u00b7limitades 50 GB compartides entre 2 m\u00f2bils", "price":
+        7.5, "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null}]},
+        {"code": "SE_SC_REC_PACK_FIBER_SF_300_3_MOBILES_50", "name": "Fibra 300Mb
+        + 50 GB compartides 3 m\u00f2bils", "price": 51.0, "category": "mobile_shared_data",
+        "available_for": ["member"], "mobiles_in_pack": 3, "fiber_bandwidth": 300,
+        "has_land_line": false, "products": [{"code": "SE_SC_REC_BA_F_300_SF", "name":
+        "Fibra 300Mb Sense Fix", "price": 31.5, "category": "fiber", "minutes": null,
+        "data": null, "bandwidth": 300, "has_landline_phone": false}, {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200",
+        "name": "Il\u00b7limitades 50 GB compartides entre 3 m\u00f2bils", "price":
+        6.5, "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null},
+        {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200", "name": "Il\u00b7limitades
+        50 GB compartides entre 3 m\u00f2bils", "price": 6.5, "category": "mobile",
+        "minutes": 99999, "data": 51200, "bandwidth": null}, {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200",
+        "name": "Il\u00b7limitades 50 GB compartides entre 3 m\u00f2bils", "price":
+        6.5, "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null}]}]}]}'
     headers:
       Access-Control-Allow-Methods:
       - GET
       Access-Control-Allow-Origin:
       - None
       Content-Length:
-      - '9586'
+      - '14326'
       Content-Type:
       - application/json
       Cookie: '****'
       Date:
-      - Fri, 01 Jul 2022 17:22:39 GMT
+      - Mon, 03 Feb 2025 10:38:40 GMT
       Server:
       - Werkzeug/0.11.15 Python/3.7.7
       Set-Cookie: '****'
@@ -173,141 +226,195 @@ interactions:
       User-Agent:
       - python-requests/2.27.1
     method: GET
-    uri: http://odoo-sc.local:8069/api/product-catalog?code=21IVA&categ=&product_code=
+    uri: http://odoo-sc.local:8069/api/product-catalog?code=21IVA&categ=&is_company=false
   response:
     body:
       string: '{"pricelists": [{"code": "21IVA", "products": [{"code": "SE_SC_REC_BA_ADSL_100",
-        "name": "ADSL 100 min a fijo o m\u00f3vil", "price": 29.75, "category": "adsl",
-        "minutes": null, "data": null, "bandwidth": 20, "available_for": ["member",
-        "coop_agreement", "sponsored"], "has_landline_phone": true}, {"code": "SE_SC_REC_BA_ADSL_1000",
-        "name": "ADSL 1000 min a fijo", "price": 29.75, "category": "adsl", "minutes":
-        null, "data": null, "bandwidth": 20, "available_for": ["member", "coop_agreement",
-        "sponsored"], "has_landline_phone": true}, {"code": "SE_SC_REC_BA_ADSL_SF",
-        "name": "ADSL 20Mb sin tel\u00e9fono fijo", "price": 26.03, "category": "adsl",
-        "minutes": null, "data": null, "bandwidth": 20, "available_for": ["member",
-        "coop_agreement", "sponsored"], "has_landline_phone": false}, {"code": "SE_SC_REC_BA_BORDA",
-        "name": "Servicio fibra La Borda", "price": 1.0, "category": "fiber", "minutes":
-        null, "data": null, "bandwidth": 0, "available_for": ["member"], "has_landline_phone":
-        true}, {"code": "SE_SC_REC_BA_BORDA_LOCAL", "name": "Servicio fibra La Borda
-        bajos", "price": 1.0, "category": "fiber", "minutes": null, "data": null,
-        "bandwidth": 0, "available_for": ["member"], "has_landline_phone": true},
-        {"code": "SE_SC_REC_BA_BORDA_MANTENIMENT", "name": "Cuota mantenimento fibra
-        La Borda (OPEX)", "price": 1.0, "category": "fiber", "minutes": null, "data":
-        null, "bandwidth": 0, "available_for": ["member"], "has_landline_phone": true},
-        {"code": "SE_SC_REC_BA_F_100", "name": "Fibra 100Mb", "price": 29.75, "category":
-        "fiber", "minutes": null, "data": null, "bandwidth": 100, "available_for":
-        ["member", "sponsored"], "has_landline_phone": true}, {"code": "SE_SC_REC_BA_F_100_SF",
-        "name": "Fibra 100Mb Sense Fix", "price": 31.5, "category": "fiber", "minutes":
-        null, "data": null, "bandwidth": 100, "available_for": ["member", "sponsored"],
-        "has_landline_phone": true}, {"code": "SE_SC_REC_BA_F_1024", "name": "Fibra
-        1Gb", "price": 47.93, "category": "fiber", "minutes": null, "data": null,
-        "bandwidth": 1024, "available_for": ["member", "sponsored"], "has_landline_phone":
-        true}, {"code": "SE_SC_REC_BA_F_600", "name": "Fibra 600Mb", "price": 35.54,
-        "category": "fiber", "minutes": null, "data": null, "bandwidth": 600, "available_for":
-        ["member", "sponsored"], "has_landline_phone": true}, {"code": "SE_SC_REC_BA_F_GRETA_600",
-        "name": "Fibra GRETA 600Mb", "price": 1.0, "category": "fiber", "minutes":
-        null, "data": null, "bandwidth": 0, "available_for": ["member"], "has_landline_phone":
-        true}, {"code": "SE_SC_REC_BA_F_GRETA_600_A", "name": "Fibra GRETA 600Mb amb
-        aportaci\u00f3 a la infrastructura", "price": 1.0, "category": "fiber", "minutes":
-        null, "data": null, "bandwidth": 0, "available_for": ["member"], "has_landline_phone":
-        true}, {"code": "SE_SC_REC_BA_F_GRETA_600_SF", "name": "Fibra GRETA 600Mb
-        sense fix", "price": 1.0, "category": "fiber", "minutes": null, "data": null,
-        "bandwidth": 0, "available_for": ["member"], "has_landline_phone": true},
-        {"code": "SE_SC_REC_BA_F_GRETA_600_SF_A", "name": "Fibra GRETA 600Mb sense
-        fix amb aportaci\u00f3 a la infrastructura", "price": 1.0, "category": "fiber",
-        "minutes": null, "data": null, "bandwidth": 0, "available_for": ["member"],
-        "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_BA_IP_fix", "name":
-        "La Borda IP fija", "price": 1.0, "category": "fiber", "minutes": null, "data":
-        null, "bandwidth": 0, "available_for": ["member"], "has_landline_phone": true},
-        {"code": "SE_SC_REC_MOBILE_T_0_0", "name": "0 min 0 MB", "price": 1.6500000000000001,
+        "name": "ADSL 100 min a fijo o m\u00f3vil", "price": 36.0, "category": "adsl",
+        "minutes": null, "data": null, "bandwidth": 0, "available_for": ["member",
+        "coop_agreement"], "has_landline_phone": true}, {"code": "SE_SC_REC_BA_ADSL_1000",
+        "name": "ADSL 1000 min a fijo", "price": 1.0, "category": "adsl", "minutes":
+        null, "data": null, "bandwidth": 0, "available_for": ["member", "coop_agreement"],
+        "has_landline_phone": true}, {"code": "SE_SC_REC_BA_ADSL_SF", "name": "ADSL
+        20Mb sin tel\u00e9fono fijo", "price": 31.5, "category": "adsl", "minutes":
+        null, "data": null, "bandwidth": 0, "available_for": ["member", "coop_agreement"],
+        "has_landline_phone": false}, {"code": "SE_SC_REC_BA_F_100", "name": "Fibra
+        100Mb", "price": 34.0, "category": "fiber", "minutes": null, "data": null,
+        "bandwidth": 100, "available_for": ["member"], "has_landline_phone": true},
+        {"code": "SE_SC_REC_BA_F_1024", "name": "Fibra 1Gb", "price": 58.0, "category":
+        "fiber", "minutes": null, "data": null, "bandwidth": 1024, "available_for":
+        ["member"], "has_landline_phone": true}, {"code": "SE_SC_REC_BA_F_300", "name":
+        "Fibra 300Mb", "price": 34.0, "category": "fiber", "minutes": null, "data":
+        null, "bandwidth": 300, "available_for": ["member"], "has_landline_phone":
+        true}, {"code": "SE_SC_REC_BA_F_300_SF", "name": "Fibra 300Mb Sense Fix",
+        "price": 31.5, "category": "fiber", "minutes": null, "data": null, "bandwidth":
+        300, "available_for": ["member"], "has_landline_phone": false}, {"code": "SE_SC_REC_BA_F_600",
+        "name": "Fibra 600Mb", "price": 43.0, "category": "fiber", "minutes": null,
+        "data": null, "bandwidth": 600, "available_for": ["member"], "has_landline_phone":
+        true}, {"code": "SE_SC_REC_MOBILE_T_0_0", "name": "0 min 0 MB", "price": 2.0,
         "category": "mobile", "minutes": 0, "data": 0, "bandwidth": null, "available_for":
         ["member", "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_0_1024",
-        "name": "0 min 1 GB", "price": 3.72, "category": "mobile", "minutes": 0, "data":
+        "name": "0 min 1 GB", "price": 4.5, "category": "mobile", "minutes": 0, "data":
         1024, "bandwidth": null, "available_for": ["member", "coop_agreement", "sponsored"]},
-        {"code": "SE_SC_REC_MOBILE_T_0_10240", "name": "0 min 10 GB", "price": 9.09,
+        {"code": "SE_SC_REC_MOBILE_T_0_10240", "name": "0 min 10 GB", "price": 11.0,
         "category": "mobile", "minutes": 0, "data": 10240, "bandwidth": null, "available_for":
-        ["member", "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_0_200",
-        "name": "0 min 200 MB", "price": 1.0, "category": "mobile", "minutes": 0,
-        "data": 200, "bandwidth": null, "available_for": ["member", "coop_agreement",
-        "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_0_2048", "name": "0 min 2 GB",
-        "price": 5.79, "category": "mobile", "minutes": 0, "data": 2048, "bandwidth":
+        ["member", "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_0_2048",
+        "name": "0 min 2 GB", "price": 7.0, "category": "mobile", "minutes": 0, "data":
+        2048, "bandwidth": null, "available_for": ["member", "coop_agreement", "sponsored"]},
+        {"code": "SE_SC_REC_MOBILE_T_0_500", "name": "0 min 500 MB", "price": 3.5,
+        "category": "mobile", "minutes": 0, "data": 500, "bandwidth": null, "available_for":
+        ["member", "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_100_0",
+        "name": "100 min 0 MB", "price": 1.0, "category": "mobile", "minutes": 100,
+        "data": 0, "bandwidth": null, "available_for": ["member", "coop_agreement",
+        "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_100_200", "name": "100 min 200
+        MB", "price": 1.0, "category": "mobile", "minutes": 100, "data": 200, "bandwidth":
         null, "available_for": ["member", "coop_agreement", "sponsored"]}, {"code":
-        "SE_SC_REC_MOBILE_T_0_3072", "name": "0 min 3 GB", "price": 1.0, "category":
-        "mobile", "minutes": 0, "data": 3072, "bandwidth": null, "available_for":
-        ["member", "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_0_500",
-        "name": "0 min 500 MB", "price": 2.89, "category": "mobile", "minutes": 0,
-        "data": 500, "bandwidth": null, "available_for": ["member", "coop_agreement",
-        "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_0_5120", "name": "0 min 5 GB",
-        "price": 1.0, "category": "mobile", "minutes": 0, "data": 5120, "bandwidth":
+        "SE_SC_REC_MOBILE_T_150_0", "name": "150 min 0 MB", "price": 4.5, "category":
+        "mobile", "minutes": 150, "data": 0, "bandwidth": null, "available_for": ["member",
+        "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_150_1024", "name":
+        "150 min 1 GB", "price": 7.0, "category": "mobile", "minutes": 150, "data":
+        1024, "bandwidth": null, "available_for": ["member", "coop_agreement", "sponsored"]},
+        {"code": "SE_SC_REC_MOBILE_T_150_10240", "name": "150 min 10 GB", "price":
+        12.0, "category": "mobile", "minutes": 150, "data": 10240, "bandwidth": null,
+        "available_for": ["member", "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_150_2048",
+        "name": "150 min 2 GB", "price": 10.0, "category": "mobile", "minutes": 150,
+        "data": 2048, "bandwidth": null, "available_for": ["member", "coop_agreement",
+        "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_150_500", "name": "150 min 500
+        MB", "price": 7.5, "category": "mobile", "minutes": 150, "data": 500, "bandwidth":
         null, "available_for": ["member", "coop_agreement", "sponsored"]}, {"code":
-        "SE_SC_REC_MOBILE_T_100_0", "name": "100 min 0 MB", "price": 1.0, "category":
-        "mobile", "minutes": 100, "data": 0, "bandwidth": null, "available_for": ["member",
-        "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_100_200", "name":
-        "100 min 200 MB", "price": 1.0, "category": "mobile", "minutes": 100, "data":
+        "SE_SC_REC_MOBILE_T_200_0", "name": "200 min 0 MB", "price": 1.0, "category":
+        "mobile", "minutes": 200, "data": 0, "bandwidth": null, "available_for": ["member",
+        "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_200_200", "name":
+        "200 min 200 MB", "price": 1.0, "category": "mobile", "minutes": 200, "data":
         200, "bandwidth": null, "available_for": ["member", "coop_agreement", "sponsored"]},
-        {"code": "SE_SC_REC_MOBILE_T_150_0", "name": "150 min 0 MB", "price": 3.72,
-        "category": "mobile", "minutes": 150, "data": 0, "bandwidth": null, "available_for":
-        ["member", "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_150_1024",
-        "name": "150 min 1 GB", "price": 6.61, "category": "mobile", "minutes": 150,
-        "data": 1024, "bandwidth": null, "available_for": ["member", "coop_agreement",
-        "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_150_10240", "name": "150 min 10
-        GB", "price": 9.92, "category": "mobile", "minutes": 150, "data": 10240, "bandwidth":
-        null, "available_for": ["member", "coop_agreement", "sponsored"]}, {"code":
-        "SE_SC_REC_MOBILE_T_150_2048", "name": "150 min 2 GB", "price": 8.26, "category":
-        "mobile", "minutes": 150, "data": 2048, "bandwidth": null, "available_for":
-        ["member", "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_150_500",
-        "name": "150 min 500 MB", "price": 6.2, "category": "mobile", "minutes": 150,
-        "data": 500, "bandwidth": null, "available_for": ["member", "coop_agreement",
-        "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_200_0", "name": "200 min 0 MB",
-        "price": 1.0, "category": "mobile", "minutes": 200, "data": 0, "bandwidth":
-        null, "available_for": ["member", "coop_agreement", "sponsored"]}, {"code":
-        "SE_SC_REC_MOBILE_T_200_1024", "name": "200 min 1 GB", "price": 1.0, "category":
-        "mobile", "minutes": 200, "data": 1024, "bandwidth": null, "available_for":
-        ["member", "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_200_200",
-        "name": "200 min 200 MB", "price": 1.0, "category": "mobile", "minutes": 200,
-        "data": 200, "bandwidth": null, "available_for": ["member", "coop_agreement",
-        "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_200_2048", "name": "200 min 2
-        GB", "price": 1.0, "category": "mobile", "minutes": 200, "data": 2048, "bandwidth":
-        null, "available_for": ["member", "coop_agreement", "sponsored"]}, {"code":
-        "SE_SC_REC_MOBILE_T_200_500", "name": "200 min 500 MB", "price": 1.0, "category":
-        "mobile", "minutes": 200, "data": 500, "bandwidth": null, "available_for":
-        ["member", "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_UNL_0",
-        "name": "Ilimitadas 0 MB", "price": 7.44, "category": "mobile", "minutes":
-        99999, "data": 0, "bandwidth": null, "available_for": ["member", "coop_agreement",
-        "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_UNL_1024", "name": "Ilimitadas
-        1 GB", "price": 9.09, "category": "mobile", "minutes": 99999, "data": 1024,
-        "bandwidth": null, "available_for": ["member", "coop_agreement", "sponsored"]},
-        {"code": "SE_SC_REC_MOBILE_T_UNL_10240", "name": "Ilimitadas 10 GB", "price":
-        11.57, "category": "mobile", "minutes": 99999, "data": 10240, "bandwidth":
-        null, "available_for": ["member", "coop_agreement", "sponsored"]}, {"code":
-        "SE_SC_REC_MOBILE_T_UNL_2048", "name": "Ilimitadas 2 GB", "price": 9.92, "category":
-        "mobile", "minutes": 99999, "data": 2048, "bandwidth": null, "available_for":
-        ["member", "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_UNL_23552",
-        "name": "Ilimitadas 23 GB", "price": 14.88, "category": "mobile", "minutes":
-        99999, "data": 23552, "bandwidth": null, "available_for": ["member", "coop_agreement",
-        "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_UNL_30720", "name": "Ilimitadas
-        30 GB", "price": 18.18, "category": "mobile", "minutes": 99999, "data": 30720,
-        "bandwidth": null, "available_for": ["member", "coop_agreement", "sponsored"]},
-        {"code": "SE_SC_REC_MOBILE_T_UNL_500", "name": "Ilimitadas 500 MB", "price":
-        8.26, "category": "mobile", "minutes": 99999, "data": 500, "bandwidth": null,
-        "available_for": ["member", "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_UNL_5120",
-        "name": "Ilimitadas 5 GB", "price": 1.0, "category": "mobile", "minutes":
-        99999, "data": 5120, "bandwidth": null, "available_for": ["member", "coop_agreement",
-        "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_UNL_51200", "name": "Ilimitadas
-        50 GB", "price": 22.31, "category": "mobile", "minutes": 99999, "data": 51200,
-        "bandwidth": null, "available_for": ["member", "coop_agreement", "sponsored"]}],"packs":[]}]}'
+        {"code": "SE_SC_REC_MOBILE_T_UNL_30720", "name": "Ilimitadas 30 GB", "price":
+        19.0, "category": "mobile", "minutes": 99999, "data": 30720, "bandwidth":
+        null, "available_for": ["member", "coop_agreement", "sponsored"], "offer":
+        {"code": "SE_SC_REC_MOBILE_PACK_UNL_30720", "price": 1.0, "name": "Il\u00b7limitades
+        30 GB (Pack)"}}], "packs": [{"code": "SE_SC_REC_PACK_FIBER_1000_2_MOBILES_50",
+        "name": "Fibra 1Gb + Fix + 50 GB compartides 2 m\u00f2bils", "price": 73.0,
+        "category": "mobile_shared_data", "available_for": ["member"], "mobiles_in_pack":
+        2, "fiber_bandwidth": 1024, "has_land_line": true, "products": [{"code": "SE_SC_REC_BA_F_1024",
+        "name": "Fibra 1Gb", "price": 58.0, "category": "fiber", "minutes": null,
+        "data": null, "bandwidth": 1024, "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_2_SHARED_UNL_51200",
+        "name": "Ilimitadas 50 GB compartidas entre 2 m\u00f3viles", "price": 7.5,
+        "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null},
+        {"code": "SE_SC_REC_MOBILE_2_SHARED_UNL_51200", "name": "Ilimitadas 50 GB
+        compartidas entre 2 m\u00f3viles", "price": 7.5, "category": "mobile", "minutes":
+        99999, "data": 51200, "bandwidth": null}]}, {"code": "SE_SC_REC_PACK_FIBER_1000_3_MOBILES_50",
+        "name": "Fibra 1Gb + Fix + 50 GB compartides 3 m\u00f2bils", "price": 77.5,
+        "category": "mobile_shared_data", "available_for": ["member"], "mobiles_in_pack":
+        3, "fiber_bandwidth": 1024, "has_land_line": true, "products": [{"code": "SE_SC_REC_BA_F_1024",
+        "name": "Fibra 1Gb", "price": 58.0, "category": "fiber", "minutes": null,
+        "data": null, "bandwidth": 1024, "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200",
+        "name": "Ilimitadas 50 GB compartidas entre 3 m\u00f3viles", "price": 6.5,
+        "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null},
+        {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200", "name": "Ilimitadas 50 GB
+        compartidas entre 3 m\u00f3viles", "price": 6.5, "category": "mobile", "minutes":
+        99999, "data": 51200, "bandwidth": null}, {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200",
+        "name": "Ilimitadas 50 GB compartidas entre 3 m\u00f3viles", "price": 6.5,
+        "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null}]},
+        {"code": "SE_SC_REC_PACK_FIBER_100_SF_UNL_20480", "name": "Fibra 100Mb Sense
+        Fix + m\u00f2bil IL 20 GB", "price": 1.0, "category": "bonified_mobile", "available_for":
+        ["member"], "mobiles_in_pack": 1, "fiber_bandwidth": 100, "has_land_line":
+        false, "products": [{"code": "SE_SC_REC_BA_F_100_SF", "name": "Fibra 100Mb
+        Sense Fix", "price": 31.5, "category": "fiber", "minutes": null, "data": null,
+        "bandwidth": 100, "has_landline_phone": false}, {"code": "SE_SC_REC_MOBILE_PACK_UNL_20480",
+        "name": "Il\u00b7limitades 20 GB (Pack)", "price": 8.0, "category": "mobile",
+        "minutes": 99999, "data": 20480, "bandwidth": null}]}, {"code": "SE_SC_REC_PACK_FIBER_100_UNL_20480",
+        "name": "Fibra 100 Mb + m\u00f2bil IL 20 GB", "price": 1.0, "category": "bonified_mobile",
+        "available_for": ["member"], "mobiles_in_pack": 1, "fiber_bandwidth": 100,
+        "has_land_line": true, "products": [{"code": "SE_SC_REC_BA_F_100", "name":
+        "Fibra 100Mb", "price": 34.0, "category": "fiber", "minutes": null, "data":
+        null, "bandwidth": 100, "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_PACK_UNL_20480",
+        "name": "Il\u00b7limitades 20 GB (Pack)", "price": 8.0, "category": "mobile",
+        "minutes": 99999, "data": 20480, "bandwidth": null}]}, {"code": "SE_SC_REC_PACK_FIBER_1024_UNL_20480",
+        "name": "Fibra 1 Gb + m\u00f2bil IL 20 GB", "price": 1.0, "category": "bonified_mobile",
+        "available_for": ["member"], "mobiles_in_pack": 1, "fiber_bandwidth": 1024,
+        "has_land_line": true, "products": [{"code": "SE_SC_REC_BA_F_1024", "name":
+        "Fibra 1Gb", "price": 58.0, "category": "fiber", "minutes": null, "data":
+        null, "bandwidth": 1024, "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_PACK_UNL_20480",
+        "name": "Il\u00b7limitades 20 GB (Pack)", "price": 8.0, "category": "mobile",
+        "minutes": 99999, "data": 20480, "bandwidth": null}]}, {"code": "SE_SC_REC_PACK_FIBER_300_2_MOBILES_50",
+        "name": "Fibra 300Mb + Fix + 50 GB compartides 2 m\u00f2bils", "price": 49.0,
+        "category": "mobile_shared_data", "available_for": ["member"], "mobiles_in_pack":
+        2, "fiber_bandwidth": 300, "has_land_line": true, "products": [{"code": "SE_SC_REC_BA_F_300",
+        "name": "Fibra 300Mb", "price": 34.0, "category": "fiber", "minutes": null,
+        "data": null, "bandwidth": 300, "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_2_SHARED_UNL_51200",
+        "name": "Ilimitadas 50 GB compartidas entre 2 m\u00f3viles", "price": 7.5,
+        "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null},
+        {"code": "SE_SC_REC_MOBILE_2_SHARED_UNL_51200", "name": "Ilimitadas 50 GB
+        compartidas entre 2 m\u00f3viles", "price": 7.5, "category": "mobile", "minutes":
+        99999, "data": 51200, "bandwidth": null}]}, {"code": "SE_SC_REC_PACK_FIBER_300_3_MOBILES_50",
+        "name": "Fibra 300Mb + Fix + 50 GB compartides 3 m\u00f2bils", "price": 53.5,
+        "category": "mobile_shared_data", "available_for": ["member"], "mobiles_in_pack":
+        3, "fiber_bandwidth": 300, "has_land_line": true, "products": [{"code": "SE_SC_REC_BA_F_300",
+        "name": "Fibra 300Mb", "price": 34.0, "category": "fiber", "minutes": null,
+        "data": null, "bandwidth": 300, "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200",
+        "name": "Ilimitadas 50 GB compartidas entre 3 m\u00f3viles", "price": 6.5,
+        "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null},
+        {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200", "name": "Ilimitadas 50 GB
+        compartidas entre 3 m\u00f3viles", "price": 6.5, "category": "mobile", "minutes":
+        99999, "data": 51200, "bandwidth": null}, {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200",
+        "name": "Ilimitadas 50 GB compartidas entre 3 m\u00f3viles", "price": 6.5,
+        "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null}]},
+        {"code": "SE_SC_REC_PACK_FIBER_300_SF_UNL_20480", "name": "Fibra 300Mb Sense
+        Fix + m\u00f2bil IL 20 GB", "price": 1.0, "category": "bonified_mobile", "available_for":
+        ["member"], "mobiles_in_pack": 1, "fiber_bandwidth": 300, "has_land_line":
+        false, "products": [{"code": "SE_SC_REC_BA_F_300_SF", "name": "Fibra 300Mb
+        Sense Fix", "price": 31.5, "category": "fiber", "minutes": null, "data": null,
+        "bandwidth": 300, "has_landline_phone": false}, {"code": "SE_SC_REC_MOBILE_PACK_UNL_20480",
+        "name": "Il\u00b7limitades 20 GB (Pack)", "price": 8.0, "category": "mobile",
+        "minutes": 99999, "data": 20480, "bandwidth": null}]}, {"code": "SE_SC_REC_PACK_FIBER_300_UNL_20480",
+        "name": "Fibra 300 Mb + m\u00f2bil IL 20 GB", "price": 1.0, "category": "bonified_mobile",
+        "available_for": ["member"], "mobiles_in_pack": 1, "fiber_bandwidth": 300,
+        "has_land_line": true, "products": [{"code": "SE_SC_REC_BA_F_300", "name":
+        "Fibra 300Mb", "price": 34.0, "category": "fiber", "minutes": null, "data":
+        null, "bandwidth": 300, "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_PACK_UNL_20480",
+        "name": "Il\u00b7limitades 20 GB (Pack)", "price": 8.0, "category": "mobile",
+        "minutes": 99999, "data": 20480, "bandwidth": null}]}, {"code": "SE_SC_REC_PACK_FIBER_600_UNL_20480",
+        "name": "Fibra 600 Mb + m\u00f2bil IL 20 GB", "price": 1.0, "category": "bonified_mobile",
+        "available_for": ["member"], "mobiles_in_pack": 1, "fiber_bandwidth": 600,
+        "has_land_line": true, "products": [{"code": "SE_SC_REC_BA_F_600", "name":
+        "Fibra 600Mb", "price": 43.0, "category": "fiber", "minutes": null, "data":
+        null, "bandwidth": 600, "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_PACK_UNL_20480",
+        "name": "Il\u00b7limitades 20 GB (Pack)", "price": 8.0, "category": "mobile",
+        "minutes": 99999, "data": 20480, "bandwidth": null}]}, {"code": "SE_SC_REC_PACK_FIBER_SF_300_2_MOBILES_50",
+        "name": "Fibra 300Mb + 50 GB compartides 2 m\u00f2bils", "price": 46.5, "category":
+        "mobile_shared_data", "available_for": ["member"], "mobiles_in_pack": 2, "fiber_bandwidth":
+        300, "has_land_line": false, "products": [{"code": "SE_SC_REC_BA_F_300_SF",
+        "name": "Fibra 300Mb Sense Fix", "price": 31.5, "category": "fiber", "minutes":
+        null, "data": null, "bandwidth": 300, "has_landline_phone": false}, {"code":
+        "SE_SC_REC_MOBILE_2_SHARED_UNL_51200", "name": "Ilimitadas 50 GB compartidas
+        entre 2 m\u00f3viles", "price": 7.5, "category": "mobile", "minutes": 99999,
+        "data": 51200, "bandwidth": null}, {"code": "SE_SC_REC_MOBILE_2_SHARED_UNL_51200",
+        "name": "Ilimitadas 50 GB compartidas entre 2 m\u00f3viles", "price": 7.5,
+        "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null}]},
+        {"code": "SE_SC_REC_PACK_FIBER_SF_300_3_MOBILES_50", "name": "Fibra 300Mb
+        + 50 GB compartides 3 m\u00f2bils", "price": 51.0, "category": "mobile_shared_data",
+        "available_for": ["member"], "mobiles_in_pack": 3, "fiber_bandwidth": 300,
+        "has_land_line": false, "products": [{"code": "SE_SC_REC_BA_F_300_SF", "name":
+        "Fibra 300Mb Sense Fix", "price": 31.5, "category": "fiber", "minutes": null,
+        "data": null, "bandwidth": 300, "has_landline_phone": false}, {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200",
+        "name": "Ilimitadas 50 GB compartidas entre 3 m\u00f3viles", "price": 6.5,
+        "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null},
+        {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200", "name": "Ilimitadas 50 GB
+        compartidas entre 3 m\u00f3viles", "price": 6.5, "category": "mobile", "minutes":
+        99999, "data": 51200, "bandwidth": null}, {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200",
+        "name": "Ilimitadas 50 GB compartidas entre 3 m\u00f3viles", "price": 6.5,
+        "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null}]}]}]}'
     headers:
       Access-Control-Allow-Methods:
       - GET
       Access-Control-Allow-Origin:
       - None
       Content-Length:
-      - '9555'
+      - '14249'
       Content-Type:
       - application/json
       Cookie: '****'
       Date:
-      - Fri, 01 Jul 2022 17:22:39 GMT
+      - Mon, 03 Feb 2025 10:38:41 GMT
       Server:
       - Werkzeug/0.11.15 Python/3.7.7
       Set-Cookie: '****'
diff --git a/tests/resources/cassettes/test_product_catalog/TariffTests.test_search_code.yaml b/tests/resources/cassettes/test_product_catalog/TariffTests.test_search_code.yaml
index e2d288b2bd4aadc5995253d44d19d2980d416798..f4aad4f7df4871ccbe48bf6be1e9ee28e544269f 100644
--- a/tests/resources/cassettes/test_product_catalog/TariffTests.test_search_code.yaml
+++ b/tests/resources/cassettes/test_product_catalog/TariffTests.test_search_code.yaml
@@ -15,171 +15,195 @@ interactions:
       User-Agent:
       - python-requests/2.27.1
     method: GET
-    uri: http://odoo-sc.local:8069/api/product-catalog?code=21IVA&categ=&product_code=
+    uri: http://odoo-sc.local:8069/api/product-catalog?code=21IVA&categ=&is_company=false
   response:
     body:
       string: '{"pricelists": [{"code": "21IVA", "products": [{"code": "SE_SC_REC_BA_ADSL_100",
-        "name": "ADSL 100 min a fix o m\u00f2bil", "price": 29.75, "category": "adsl",
-        "minutes": null, "data": null, "bandwidth": 20, "available_for": ["member",
-        "coop_agreement", "sponsored"], "has_landline_phone": true}, {"code": "SE_SC_REC_BA_ADSL_1000",
-        "name": "ADSL 1000 min a fix", "price": 29.75, "category": "adsl", "minutes":
-        null, "data": null, "bandwidth": 20, "available_for": ["member", "coop_agreement",
-        "sponsored"], "has_landline_phone": true}, {"code": "SE_SC_REC_BA_ADSL_SF",
-        "name": "ADSL sense fix", "price": 26.03, "category": "adsl", "minutes": null,
-        "data": null, "bandwidth": 20, "available_for": ["member", "coop_agreement",
-        "sponsored"], "has_landline_phone": false}, {"code": "SE_SC_REC_BA_BORDA",
-        "name": "La Borda servei fibra", "price": 1.0, "category": "fiber", "minutes":
-        null, "data": null, "bandwidth": 0, "available_for": ["member"], "has_landline_phone":
-        true}, {"code": "SE_SC_REC_BA_BORDA_LOCAL", "name": "La Borda servei fibra
-        local", "price": 1.0, "category": "fiber", "minutes": null, "data": null,
-        "bandwidth": 0, "available_for": ["member"], "has_landline_phone": true},
-        {"code": "SE_SC_REC_BA_BORDA_MANTENIMENT", "name": "La Borda quota manteniment
-        fibra", "price": 1.0, "category": "fiber", "minutes": null, "data": null,
-        "bandwidth": 0, "available_for": ["member"], "has_landline_phone": true},
-        {"code": "SE_SC_REC_BA_F_100", "name": "Fibra 100Mb", "price": 29.75, "category":
-        "fiber", "minutes": null, "data": null, "bandwidth": 100, "available_for":
-        ["member", "sponsored"], "has_landline_phone": true}, {"code": "SE_SC_REC_BA_F_100_SF",
-        "name": "Fibra 100Mb Sense Fix", "price": 31.5, "category": "fiber", "minutes":
-        null, "data": null, "bandwidth": 100, "available_for": ["member", "sponsored"],
-        "has_landline_phone": true}, {"code": "SE_SC_REC_BA_F_1024", "name": "Fibra
-        1Gb", "price": 47.93, "category": "fiber", "minutes": null, "data": null,
-        "bandwidth": 1024, "available_for": ["member", "sponsored"], "has_landline_phone":
-        true}, {"code": "SE_SC_REC_BA_F_600", "name": "Fibra 600Mb", "price": 35.54,
+        "name": "ADSL 100 min a fix o m\u00f2bil", "price": 36.0, "category": "adsl",
+        "minutes": null, "data": null, "bandwidth": 0, "available_for": ["member",
+        "coop_agreement"], "has_landline_phone": true}, {"code": "SE_SC_REC_BA_ADSL_1000",
+        "name": "ADSL 1000 min a fix", "price": 1.0, "category": "adsl", "minutes":
+        null, "data": null, "bandwidth": 0, "available_for": ["member", "coop_agreement"],
+        "has_landline_phone": true}, {"code": "SE_SC_REC_BA_ADSL_SF", "name": "ADSL
+        sense fix", "price": 31.5, "category": "adsl", "minutes": null, "data": null,
+        "bandwidth": 0, "available_for": ["member", "coop_agreement"], "has_landline_phone":
+        false}, {"code": "SE_SC_REC_BA_F_100", "name": "Fibra 100Mb", "price": 34.0,
+        "category": "fiber", "minutes": null, "data": null, "bandwidth": 100, "available_for":
+        ["member"], "has_landline_phone": true}, {"code": "SE_SC_REC_BA_F_1024", "name":
+        "Fibra 1Gb", "price": 58.0, "category": "fiber", "minutes": null, "data":
+        null, "bandwidth": 1024, "available_for": ["member"], "has_landline_phone":
+        true}, {"code": "SE_SC_REC_BA_F_300", "name": "Fibra 300Mb", "price": 34.0,
+        "category": "fiber", "minutes": null, "data": null, "bandwidth": 300, "available_for":
+        ["member"], "has_landline_phone": true}, {"code": "SE_SC_REC_BA_F_300_SF",
+        "name": "Fibra 300Mb Sense Fix", "price": 31.5, "category": "fiber", "minutes":
+        null, "data": null, "bandwidth": 300, "available_for": ["member"], "has_landline_phone":
+        false}, {"code": "SE_SC_REC_BA_F_600", "name": "Fibra 600Mb", "price": 43.0,
         "category": "fiber", "minutes": null, "data": null, "bandwidth": 600, "available_for":
-        ["member", "sponsored"], "has_landline_phone": true}, {"code": "SE_SC_REC_BA_F_GRETA_600",
-        "name": "Fibra GRETA 600Mb", "price": 1.0, "category": "fiber", "minutes":
-        null, "data": null, "bandwidth": 0, "available_for": ["member"], "has_landline_phone":
-        true}, {"code": "SE_SC_REC_BA_F_GRETA_600_A", "name": "Fibra GRETA 600Mb amb
-        aportaci\u00f3 a la infrastructura", "price": 1.0, "category": "fiber", "minutes":
-        null, "data": null, "bandwidth": 0, "available_for": ["member"], "has_landline_phone":
-        true}, {"code": "SE_SC_REC_BA_F_GRETA_600_SF", "name": "Fibra GRETA 600Mb
-        sense fix", "price": 1.0, "category": "fiber", "minutes": null, "data": null,
-        "bandwidth": 0, "available_for": ["member"], "has_landline_phone": true},
-        {"code": "SE_SC_REC_BA_F_GRETA_600_SF_A", "name": "Fibra GRETA 600Mb sense
-        fix amb aportaci\u00f3 a la infrastructura", "price": 1.0, "category": "fiber",
-        "minutes": null, "data": null, "bandwidth": 0, "available_for": ["member"],
-        "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_BA_IP_fix", "name":
-        "La Borda IP fixa", "price": 1.0, "category": "fiber", "minutes": null, "data":
-        null, "bandwidth": 0, "available_for": ["member"], "has_landline_phone": true},
-        {"code": "SE_SC_REC_MOBILE_T_0_0", "name": "0 min 0 MB", "price": 1.6500000000000001,
-        "category": "mobile", "minutes": 0, "data": 0, "bandwidth": null, "available_for":
-        ["member", "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_0_1024",
-        "name": "0 min 1 GB", "price": 3.72, "category": "mobile", "minutes": 0, "data":
-        1024, "bandwidth": null, "available_for": ["member", "coop_agreement", "sponsored"]},
-        {"code": "SE_SC_REC_MOBILE_T_0_10240", "name": "0 min 10 GB", "price": 9.09,
-        "category": "mobile", "minutes": 0, "data": 10240, "bandwidth": null, "available_for":
-        ["member", "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_0_200",
-        "name": "0 min 200 MB", "price": 1.0, "category": "mobile", "minutes": 0,
-        "data": 200, "bandwidth": null, "available_for": ["member", "coop_agreement",
+        ["member"], "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_T_0_0",
+        "name": "0 min 0 MB", "price": 2.0, "category": "mobile", "minutes": 0, "data":
+        0, "bandwidth": null, "available_for": ["member", "coop_agreement", "sponsored"]},
+        {"code": "SE_SC_REC_MOBILE_T_0_1024", "name": "0 min 1 GB", "price": 4.5,
+        "category": "mobile", "minutes": 0, "data": 1024, "bandwidth": null, "available_for":
+        ["member", "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_0_10240",
+        "name": "0 min 10 GB", "price": 11.0, "category": "mobile", "minutes": 0,
+        "data": 10240, "bandwidth": null, "available_for": ["member", "coop_agreement",
         "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_0_2048", "name": "0 min 2 GB",
-        "price": 5.79, "category": "mobile", "minutes": 0, "data": 2048, "bandwidth":
+        "price": 7.0, "category": "mobile", "minutes": 0, "data": 2048, "bandwidth":
         null, "available_for": ["member", "coop_agreement", "sponsored"]}, {"code":
-        "SE_SC_REC_MOBILE_T_0_3072", "name": "0 min 3 GB", "price": 1.0, "category":
-        "mobile", "minutes": 0, "data": 3072, "bandwidth": null, "available_for":
-        ["member", "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_0_500",
-        "name": "0 min 500 MB", "price": 2.89, "category": "mobile", "minutes": 0,
-        "data": 500, "bandwidth": null, "available_for": ["member", "coop_agreement",
-        "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_0_5120", "name": "0 min 5 GB",
-        "price": 1.0, "category": "mobile", "minutes": 0, "data": 5120, "bandwidth":
+        "SE_SC_REC_MOBILE_T_0_500", "name": "0 min 500 MB", "price": 3.5, "category":
+        "mobile", "minutes": 0, "data": 500, "bandwidth": null, "available_for": ["member",
+        "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_100_0", "name":
+        "100 min 0 MB", "price": 1.0, "category": "mobile", "minutes": 100, "data":
+        0, "bandwidth": null, "available_for": ["member", "coop_agreement", "sponsored"]},
+        {"code": "SE_SC_REC_MOBILE_T_100_200", "name": "100 min 200 MB", "price":
+        1.0, "category": "mobile", "minutes": 100, "data": 200, "bandwidth": null,
+        "available_for": ["member", "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_150_0",
+        "name": "150 min 0 MB", "price": 4.5, "category": "mobile", "minutes": 150,
+        "data": 0, "bandwidth": null, "available_for": ["member", "coop_agreement",
+        "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_150_1024", "name": "150 min 1
+        GB", "price": 7.0, "category": "mobile", "minutes": 150, "data": 1024, "bandwidth":
         null, "available_for": ["member", "coop_agreement", "sponsored"]}, {"code":
-        "SE_SC_REC_MOBILE_T_100_0", "name": "100 min 0 MB", "price": 1.0, "category":
-        "mobile", "minutes": 100, "data": 0, "bandwidth": null, "available_for": ["member",
-        "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_100_200", "name":
-        "100 min 200 MB", "price": 1.0, "category": "mobile", "minutes": 100, "data":
-        200, "bandwidth": null, "available_for": ["member", "coop_agreement", "sponsored"]},
-        {"code": "SE_SC_REC_MOBILE_T_150_0", "name": "150 min 0 MB", "price": 3.72,
-        "category": "mobile", "minutes": 150, "data": 0, "bandwidth": null, "available_for":
-        ["member", "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_150_1024",
-        "name": "150 min 1 GB", "price": 6.61, "category": "mobile", "minutes": 150,
-        "data": 1024, "bandwidth": null, "available_for": ["member", "coop_agreement",
-        "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_150_10240", "name": "150 min 10
-        GB", "price": 9.92, "category": "mobile", "minutes": 150, "data": 10240, "bandwidth":
-        null, "available_for": ["member", "coop_agreement", "sponsored"]}, {"code":
-        "SE_SC_REC_MOBILE_T_150_2048", "name": "150 min 2 GB", "price": 8.26, "category":
-        "mobile", "minutes": 150, "data": 2048, "bandwidth": null, "available_for":
-        ["member", "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_150_500",
-        "name": "150 min 500 MB", "price": 6.2, "category": "mobile", "minutes": 150,
-        "data": 500, "bandwidth": null, "available_for": ["member", "coop_agreement",
-        "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_200_0", "name": "200 min 0 MB",
-        "price": 1.0, "category": "mobile", "minutes": 200, "data": 0, "bandwidth":
-        null, "available_for": ["member", "coop_agreement", "sponsored"]}, {"code":
-        "SE_SC_REC_MOBILE_T_200_1024", "name": "200 min 1 GB", "price": 1.0, "category":
-        "mobile", "minutes": 200, "data": 1024, "bandwidth": null, "available_for":
-        ["member", "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_200_200",
-        "name": "200 min 200 MB", "price": 1.0, "category": "mobile", "minutes": 200,
-        "data": 200, "bandwidth": null, "available_for": ["member", "coop_agreement",
-        "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_200_2048", "name": "200 min 2
-        GB", "price": 1.0, "category": "mobile", "minutes": 200, "data": 2048, "bandwidth":
+        "SE_SC_REC_MOBILE_T_150_10240", "name": "150 min 10 GB", "price": 12.0, "category":
+        "mobile", "minutes": 150, "data": 10240, "bandwidth": null, "available_for":
+        ["member", "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_150_2048",
+        "name": "150 min 2 GB", "price": 10.0, "category": "mobile", "minutes": 150,
+        "data": 2048, "bandwidth": null, "available_for": ["member", "coop_agreement",
+        "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_150_500", "name": "150 min 500
+        MB", "price": 7.5, "category": "mobile", "minutes": 150, "data": 500, "bandwidth":
         null, "available_for": ["member", "coop_agreement", "sponsored"]}, {"code":
-        "SE_SC_REC_MOBILE_T_200_500", "name": "200 min 500 MB", "price": 1.0, "category":
-        "mobile", "minutes": 200, "data": 500, "bandwidth": null, "available_for":
-        ["member", "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_UNL_0",
-        "name": "Il\u00b7limitades 0 MB", "price": 7.44, "category": "mobile", "minutes":
-        99999, "data": 0, "bandwidth": null, "available_for": ["member", "coop_agreement",
-        "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_UNL_1024", "name": "Il\u00b7limitades
-        1 GB", "price": 9.09, "category": "mobile", "minutes": 99999, "data": 1024,
-        "bandwidth": null, "available_for": ["member", "coop_agreement", "sponsored"]},
-        {"code": "SE_SC_REC_MOBILE_T_UNL_10240", "name": "Il\u00b7limitades 10 GB",
-        "price": 11.57, "category": "mobile", "minutes": 99999, "data": 10240, "bandwidth":
-        null, "available_for": ["member", "coop_agreement", "sponsored"]}, {"code":
-        "SE_SC_REC_MOBILE_T_UNL_2048", "name": "Il\u00b7limitades 2 GB", "price":
-        9.92, "category": "mobile", "minutes": 99999, "data": 2048, "bandwidth": null,
-        "available_for": ["member", "coop_agreement", "sponsored"], "offer":
-        {"code": "SE_SC_REC_MOBILE_PACK_UNL_2048", "price": 8, "name": "Il·limitades 2 GB associat a fibra"}}, 
-        {"code": "SE_SC_REC_MOBILE_T_UNL_23552","name": "Il\u00b7limitades 23 GB", "price": 14.88, "category": "mobile", "minutes":
-        99999, "data": 23552, "bandwidth": null, "available_for": ["member", "coop_agreement",
-        "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_UNL_30720", "name": "Il\u00b7limitades
-        30 GB", "price": 18.18, "category": "mobile", "minutes": 99999, "data": 30720,
-        "bandwidth": null, "available_for": ["member", "coop_agreement", "sponsored"]},
-        {"code": "SE_SC_REC_MOBILE_T_UNL_500", "name": "Il\u00b7limitades 500 MB",
-        "price": 8.26, "category": "mobile", "minutes": 99999, "data": 500, "bandwidth":
-        null, "available_for": ["member", "coop_agreement", "sponsored"]}, {"code":
-        "SE_SC_REC_MOBILE_T_UNL_5120", "name": "Il\u00b7limitades 5 GB", "price":
-        1.0, "category": "mobile", "minutes": 99999, "data": 5120, "bandwidth": null,
-        "available_for": ["member", "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_UNL_51200",
-        "name": "Il\u00b7limitades 50 GB", "price": 22.31, "category": "mobile", "minutes":
-        99999, "data": 51200, "bandwidth": null, "available_for": ["member", "coop_agreement",
-        "sponsored"]}],"packs": [{"code":"SE_SC_REC_PACK_FIBER_100_UNL_20480","mobiles_in_pack":"1","fiber_bandwidth":"100",
-        "has_land_line":"true","name":"Fibra 100 amb fix + 1 M\u00f2bil","price":42,"category":"pack",
-        "available_for":["member","coop_agreement","sponsored"],
-        "products":[{"code":"SE_SC_REC_BA_F_100","name":"Fibra 100Mb amb fix",
-        "has_landline_phone":true,"price":34,"category":"fiber","minutes":null,
-        "data":null,"bandwidth":100,"available_for":["member","coop_agreement","sponsored"]},
-        {"code":"SE_SC_REC_MOBILE_PACK_UNL_20480",
-        "name":"Ilimitadas 20 GB","price":8,"category":"mobile","minutes":99999,"data":20480,
-        "bandwidth":null,"available_for":["member","coop_agreement","sponsored"]}]},
-        {"code":"SE_SC_REC_PACK_FIBER_100_2_MBL","name":"Fibra 100 amb fix+ 2 M\u00f2bils","price":51,
-        "category":"pack","available_for":["member","coop_agreement","sponsored"],"mobiles_in_pack":"2","fiber_bandwidth":"100",
-        "has_land_line":"true","products":[{"code":"SE_SC_REC_BA_F_100","name":"Fibra 100Mb amb fix","has_landline_phone":true,
-        "price":34,"category":"fiber","minutes":null,"data":null,"bandwidth":100},{"code":"SE_SC_REC_MOBILE_PACK_UNL_20480",
-        "name":"Ilimitadas 20 GB","price":8,"category":"mobile","minutes":99999,"data":20480,
-        "bandwidth":null},{"code":"SE_SC_REC_MOBILE_T_UNL_5120","name":"Ilimitadas 5 GB","price":9,
-        "category":"mobile","minutes":99999,"data":5120,"bandwidth":null}]},{"code":"SE_SC_REC_PACK_FIBER_100_SF_UNL_20480",
-        "name":"Fibra 100 + 1 M\u00f2bil","price":39.5,"category":"pack","available_for":["member","coop_agreement","sponsored"],
-        "mobiles_in_pack":"1","fiber_bandwidth":"100","has_land_line":"false",
-        "products":[{"code":"SE_SC_REC_BA_F_100","name":"Fibra 100Mb",
-        "has_landline_phone":false,"price":31.5,"category":"fiber","minutes":null,"data":null,"bandwidth":100},
-        {"code":"SE_SC_REC_MOBILE_PACK_UNL_20480","name":"Ilimitadas 20 GB",
-        "price":8,"category":"mobile","minutes":99999,"data":20480,"bandwidth":null}]},
-        {"code":"SE_SC_REC_PACK_FIBER_100_SF_2_MBL","name":"Fibra 100 + 2 M\u00f2bils","price":48.5,"category":"pack","mobiles_in_pack":"2","fiber_bandwidth":"100",
-        "has_land_line":"false","available_for":["member","coop_agreement","sponsored"],"products":[{"code":"SE_SC_REC_BA_F_100",
-        "name":"Fibra 100Mb","has_landline_phone":false,"price":31.5,"category":"fiber",
-        "minutes":null,"data":null,"bandwidth":100},{"code":"SE_SC_REC_MOBILE_PACK_UNL_20480",
-        "name":"Ilimitadas 20 GB","price":8,"category":"mobile","minutes":99999,"data":20480,"bandwidth":null},
-        {"code":"SE_SC_REC_MOBILE_T_UNL_5120","name":"Ilimitadas 5 GB","price":9,
-        "category":"mobile","minutes":99999,"data":5120,"bandwidth":null}]}]}]}'
+        "SE_SC_REC_MOBILE_T_200_0", "name": "200 min 0 MB", "price": 1.0, "category":
+        "mobile", "minutes": 200, "data": 0, "bandwidth": null, "available_for": ["member",
+        "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_200_200", "name":
+        "200 min 200 MB", "price": 1.0, "category": "mobile", "minutes": 200, "data":
+        200, "bandwidth": null, "available_for": ["member", "coop_agreement", "sponsored"]},
+        {"code": "SE_SC_REC_MOBILE_T_UNL_30720", "name": "Il\u00b7limitades 30 GB",
+        "price": 19.0, "category": "mobile", "minutes": 99999, "data": 30720, "bandwidth":
+        null, "available_for": ["member", "coop_agreement", "sponsored"], "offer":
+        {"code": "SE_SC_REC_MOBILE_PACK_UNL_30720", "price": 1.0, "name": "Il\u00b7limitades
+        30 GB (Pack)"}}], "packs": [{"code": "SE_SC_REC_PACK_FIBER_1000_2_MOBILES_50",
+        "name": "Fibra 1Gb + Fix + 50 GB compartides 2 m\u00f2bils", "price": 73.0,
+        "category": "mobile_shared_data", "available_for": ["member"], "mobiles_in_pack":
+        2, "fiber_bandwidth": 1024, "has_land_line": true, "products": [{"code": "SE_SC_REC_BA_F_1024",
+        "name": "Fibra 1Gb", "price": 58.0, "category": "fiber", "minutes": null,
+        "data": null, "bandwidth": 1024, "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_2_SHARED_UNL_51200",
+        "name": "Il\u00b7limitades 50 GB compartides entre 2 m\u00f2bils", "price":
+        7.5, "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null},
+        {"code": "SE_SC_REC_MOBILE_2_SHARED_UNL_51200", "name": "Il\u00b7limitades
+        50 GB compartides entre 2 m\u00f2bils", "price": 7.5, "category": "mobile",
+        "minutes": 99999, "data": 51200, "bandwidth": null}]}, {"code": "SE_SC_REC_PACK_FIBER_1000_3_MOBILES_50",
+        "name": "Fibra 1Gb + Fix + 50 GB compartides 3 m\u00f2bils", "price": 77.5,
+        "category": "mobile_shared_data", "available_for": ["member"], "mobiles_in_pack":
+        3, "fiber_bandwidth": 1024, "has_land_line": true, "products": [{"code": "SE_SC_REC_BA_F_1024",
+        "name": "Fibra 1Gb", "price": 58.0, "category": "fiber", "minutes": null,
+        "data": null, "bandwidth": 1024, "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200",
+        "name": "Il\u00b7limitades 50 GB compartides entre 3 m\u00f2bils", "price":
+        6.5, "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null},
+        {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200", "name": "Il\u00b7limitades
+        50 GB compartides entre 3 m\u00f2bils", "price": 6.5, "category": "mobile",
+        "minutes": 99999, "data": 51200, "bandwidth": null}, {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200",
+        "name": "Il\u00b7limitades 50 GB compartides entre 3 m\u00f2bils", "price":
+        6.5, "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null}]},
+        {"code": "SE_SC_REC_PACK_FIBER_100_SF_UNL_20480", "name": "Fibra 100Mb Sense
+        Fix + m\u00f2bil IL 20 GB", "price": 1.0, "category": "bonified_mobile", "available_for":
+        ["member"], "mobiles_in_pack": 1, "fiber_bandwidth": 100, "has_land_line":
+        false, "products": [{"code": "SE_SC_REC_BA_F_100_SF", "name": "Fibra 100Mb
+        Sense Fix", "price": 31.5, "category": "fiber", "minutes": null, "data": null,
+        "bandwidth": 100, "has_landline_phone": false}, {"code": "SE_SC_REC_MOBILE_PACK_UNL_20480",
+        "name": "Il\u00b7limitades 20 GB (Pack)", "price": 8.0, "category": "mobile",
+        "minutes": 99999, "data": 20480, "bandwidth": null}]}, {"code": "SE_SC_REC_PACK_FIBER_100_UNL_20480",
+        "name": "Fibra 100 Mb + m\u00f2bil IL 20 GB", "price": 1.0, "category": "bonified_mobile",
+        "available_for": ["member"], "mobiles_in_pack": 1, "fiber_bandwidth": 100,
+        "has_land_line": true, "products": [{"code": "SE_SC_REC_BA_F_100", "name":
+        "Fibra 100Mb", "price": 34.0, "category": "fiber", "minutes": null, "data":
+        null, "bandwidth": 100, "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_PACK_UNL_20480",
+        "name": "Il\u00b7limitades 20 GB (Pack)", "price": 8.0, "category": "mobile",
+        "minutes": 99999, "data": 20480, "bandwidth": null}]}, {"code": "SE_SC_REC_PACK_FIBER_1024_UNL_20480",
+        "name": "Fibra 1 Gb + m\u00f2bil IL 20 GB", "price": 1.0, "category": "bonified_mobile",
+        "available_for": ["member"], "mobiles_in_pack": 1, "fiber_bandwidth": 1024,
+        "has_land_line": true, "products": [{"code": "SE_SC_REC_BA_F_1024", "name":
+        "Fibra 1Gb", "price": 58.0, "category": "fiber", "minutes": null, "data":
+        null, "bandwidth": 1024, "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_PACK_UNL_20480",
+        "name": "Il\u00b7limitades 20 GB (Pack)", "price": 8.0, "category": "mobile",
+        "minutes": 99999, "data": 20480, "bandwidth": null}]}, {"code": "SE_SC_REC_PACK_FIBER_300_2_MOBILES_50",
+        "name": "Fibra 300Mb + Fix + 50 GB compartides 2 m\u00f2bils", "price": 49.0,
+        "category": "mobile_shared_data", "available_for": ["member"], "mobiles_in_pack":
+        2, "fiber_bandwidth": 300, "has_land_line": true, "products": [{"code": "SE_SC_REC_BA_F_300",
+        "name": "Fibra 300Mb", "price": 34.0, "category": "fiber", "minutes": null,
+        "data": null, "bandwidth": 300, "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_2_SHARED_UNL_51200",
+        "name": "Il\u00b7limitades 50 GB compartides entre 2 m\u00f2bils", "price":
+        7.5, "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null},
+        {"code": "SE_SC_REC_MOBILE_2_SHARED_UNL_51200", "name": "Il\u00b7limitades
+        50 GB compartides entre 2 m\u00f2bils", "price": 7.5, "category": "mobile",
+        "minutes": 99999, "data": 51200, "bandwidth": null}]}, {"code": "SE_SC_REC_PACK_FIBER_300_3_MOBILES_50",
+        "name": "Fibra 300Mb + Fix + 50 GB compartides 3 m\u00f2bils", "price": 53.5,
+        "category": "mobile_shared_data", "available_for": ["member"], "mobiles_in_pack":
+        3, "fiber_bandwidth": 300, "has_land_line": true, "products": [{"code": "SE_SC_REC_BA_F_300",
+        "name": "Fibra 300Mb", "price": 34.0, "category": "fiber", "minutes": null,
+        "data": null, "bandwidth": 300, "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200",
+        "name": "Il\u00b7limitades 50 GB compartides entre 3 m\u00f2bils", "price":
+        6.5, "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null},
+        {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200", "name": "Il\u00b7limitades
+        50 GB compartides entre 3 m\u00f2bils", "price": 6.5, "category": "mobile",
+        "minutes": 99999, "data": 51200, "bandwidth": null}, {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200",
+        "name": "Il\u00b7limitades 50 GB compartides entre 3 m\u00f2bils", "price":
+        6.5, "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null}]},
+        {"code": "SE_SC_REC_PACK_FIBER_300_SF_UNL_20480", "name": "Fibra 300Mb Sense
+        Fix + m\u00f2bil IL 20 GB", "price": 1.0, "category": "bonified_mobile", "available_for":
+        ["member"], "mobiles_in_pack": 1, "fiber_bandwidth": 300, "has_land_line":
+        false, "products": [{"code": "SE_SC_REC_BA_F_300_SF", "name": "Fibra 300Mb
+        Sense Fix", "price": 31.5, "category": "fiber", "minutes": null, "data": null,
+        "bandwidth": 300, "has_landline_phone": false}, {"code": "SE_SC_REC_MOBILE_PACK_UNL_20480",
+        "name": "Il\u00b7limitades 20 GB (Pack)", "price": 8.0, "category": "mobile",
+        "minutes": 99999, "data": 20480, "bandwidth": null}]}, {"code": "SE_SC_REC_PACK_FIBER_300_UNL_20480",
+        "name": "Fibra 300 Mb + m\u00f2bil IL 20 GB", "price": 1.0, "category": "bonified_mobile",
+        "available_for": ["member"], "mobiles_in_pack": 1, "fiber_bandwidth": 300,
+        "has_land_line": true, "products": [{"code": "SE_SC_REC_BA_F_300", "name":
+        "Fibra 300Mb", "price": 34.0, "category": "fiber", "minutes": null, "data":
+        null, "bandwidth": 300, "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_PACK_UNL_20480",
+        "name": "Il\u00b7limitades 20 GB (Pack)", "price": 8.0, "category": "mobile",
+        "minutes": 99999, "data": 20480, "bandwidth": null}]}, {"code": "SE_SC_REC_PACK_FIBER_600_UNL_20480",
+        "name": "Fibra 600 Mb + m\u00f2bil IL 20 GB", "price": 1.0, "category": "bonified_mobile",
+        "available_for": ["member"], "mobiles_in_pack": 1, "fiber_bandwidth": 600,
+        "has_land_line": true, "products": [{"code": "SE_SC_REC_BA_F_600", "name":
+        "Fibra 600Mb", "price": 43.0, "category": "fiber", "minutes": null, "data":
+        null, "bandwidth": 600, "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_PACK_UNL_20480",
+        "name": "Il\u00b7limitades 20 GB (Pack)", "price": 8.0, "category": "mobile",
+        "minutes": 99999, "data": 20480, "bandwidth": null}]}, {"code": "SE_SC_REC_PACK_FIBER_SF_300_2_MOBILES_50",
+        "name": "Fibra 300Mb + 50 GB compartides 2 m\u00f2bils", "price": 46.5, "category":
+        "mobile_shared_data", "available_for": ["member"], "mobiles_in_pack": 2, "fiber_bandwidth":
+        300, "has_land_line": false, "products": [{"code": "SE_SC_REC_BA_F_300_SF",
+        "name": "Fibra 300Mb Sense Fix", "price": 31.5, "category": "fiber", "minutes":
+        null, "data": null, "bandwidth": 300, "has_landline_phone": false}, {"code":
+        "SE_SC_REC_MOBILE_2_SHARED_UNL_51200", "name": "Il\u00b7limitades 50 GB compartides
+        entre 2 m\u00f2bils", "price": 7.5, "category": "mobile", "minutes": 99999,
+        "data": 51200, "bandwidth": null}, {"code": "SE_SC_REC_MOBILE_2_SHARED_UNL_51200",
+        "name": "Il\u00b7limitades 50 GB compartides entre 2 m\u00f2bils", "price":
+        7.5, "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null}]},
+        {"code": "SE_SC_REC_PACK_FIBER_SF_300_3_MOBILES_50", "name": "Fibra 300Mb
+        + 50 GB compartides 3 m\u00f2bils", "price": 51.0, "category": "mobile_shared_data",
+        "available_for": ["member"], "mobiles_in_pack": 3, "fiber_bandwidth": 300,
+        "has_land_line": false, "products": [{"code": "SE_SC_REC_BA_F_300_SF", "name":
+        "Fibra 300Mb Sense Fix", "price": 31.5, "category": "fiber", "minutes": null,
+        "data": null, "bandwidth": 300, "has_landline_phone": false}, {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200",
+        "name": "Il\u00b7limitades 50 GB compartides entre 3 m\u00f2bils", "price":
+        6.5, "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null},
+        {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200", "name": "Il\u00b7limitades
+        50 GB compartides entre 3 m\u00f2bils", "price": 6.5, "category": "mobile",
+        "minutes": 99999, "data": 51200, "bandwidth": null}, {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200",
+        "name": "Il\u00b7limitades 50 GB compartides entre 3 m\u00f2bils", "price":
+        6.5, "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null}]}]}]}'
     headers:
       Access-Control-Allow-Methods:
       - GET
       Access-Control-Allow-Origin:
       - None
       Content-Length:
-      - '9586'
+      - '14326'
       Content-Type:
       - application/json
       Cookie: '****'
       Date:
-      - Fri, 01 Jul 2022 17:22:39 GMT
+      - Mon, 03 Feb 2025 10:38:41 GMT
       Server:
       - Werkzeug/0.11.15 Python/3.7.7
       Set-Cookie: '****'
diff --git a/tests/resources/cassettes/test_product_catalog/TariffTests.test_search_code_with_category_filter.yaml b/tests/resources/cassettes/test_product_catalog/TariffTests.test_search_code_with_category_filter.yaml
index b3c3ede42ccd1c7e7f1ba4d680378df9d0f06115..347d46717252ae61d8765502aa6720ab0fd212df 100644
--- a/tests/resources/cassettes/test_product_catalog/TariffTests.test_search_code_with_category_filter.yaml
+++ b/tests/resources/cassettes/test_product_catalog/TariffTests.test_search_code_with_category_filter.yaml
@@ -15,49 +15,174 @@ interactions:
       User-Agent:
       - python-requests/2.27.1
     method: GET
-    uri: http://odoo-sc.local:8069/api/product-catalog?code=21IVA&categ=mobile
+    uri: http://odoo-sc.local:8069/api/product-catalog?code=21IVA&categ=mobile&is_company=false
   response:
     body:
       string: '{"pricelists": [{"code": "21IVA", "products": [{"code": "SE_SC_REC_MOBILE_T_0_0",
         "name": "0 min 0 MB", "price": 2.0, "category": "mobile", "minutes": 0, "data":
-        0, "bandwidth": null, "available_for": ["member", "coop_agreement"]}, {"code":
-        "SE_SC_REC_MOBILE_T_0_1024", "name": "0 min 1 GB", "price": 4.5, "category":
-        "mobile", "minutes": 0, "data": 1024, "bandwidth": null, "available_for":
-        ["member", "coop_agreement"]}, {"code": "SE_SC_REC_MOBILE_T_150_0", "name":
-        "150 min 0 MB", "price": 4.5, "category": "mobile", "minutes": 150, "data":
-        0, "bandwidth": null, "available_for": ["member", "coop_agreement"]}, {"code":
-        "SE_SC_REC_MOBILE_T_150_1024", "name": "150 min 1 GB", "price": 7.0, "category":
-        "mobile", "minutes": 150, "data": 1024, "bandwidth": null, "available_for":
-        ["member", "coop_agreement"]}, {"code": "SE_SC_REC_MOBILE_T_UNL_10240", "name":
-        "Il\u00b7limitades 10 GB", "price": 12.0, "category": "mobile", "minutes":
-        99999, "data": 10240, "bandwidth": null, "available_for": ["member", "coop_agreement",
-        "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_UNL_102400", "name": "Il\u00b7limitades
-        100 GB", "price": 31.5, "category": "mobile", "minutes": 99999, "data": 102400,
-        "bandwidth": null, "available_for": ["member", "coop_agreement", "sponsored"]},
-        {"code": "SE_SC_REC_MOBILE_T_UNL_20480", "name": "Il\u00b7limitades 20 GB",
-        "price": 15.5, "category": "mobile", "minutes": 99999, "data": 20480, "bandwidth":
+        0, "bandwidth": null, "available_for": ["member", "coop_agreement", "sponsored"]},
+        {"code": "SE_SC_REC_MOBILE_T_0_1024", "name": "0 min 1 GB", "price": 4.5,
+        "category": "mobile", "minutes": 0, "data": 1024, "bandwidth": null, "available_for":
+        ["member", "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_0_10240",
+        "name": "0 min 10 GB", "price": 11.0, "category": "mobile", "minutes": 0,
+        "data": 10240, "bandwidth": null, "available_for": ["member", "coop_agreement",
+        "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_0_2048", "name": "0 min 2 GB",
+        "price": 7.0, "category": "mobile", "minutes": 0, "data": 2048, "bandwidth":
         null, "available_for": ["member", "coop_agreement", "sponsored"]}, {"code":
-        "SE_SC_REC_MOBILE_T_UNL_30720", "name": "Il\u00b7limitades 30 GB", "price":
-        19.0, "category": "mobile", "minutes": 99999, "data": 30720, "bandwidth":
+        "SE_SC_REC_MOBILE_T_0_500", "name": "0 min 500 MB", "price": 3.5, "category":
+        "mobile", "minutes": 0, "data": 500, "bandwidth": null, "available_for": ["member",
+        "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_100_0", "name":
+        "100 min 0 MB", "price": 1.0, "category": "mobile", "minutes": 100, "data":
+        0, "bandwidth": null, "available_for": ["member", "coop_agreement", "sponsored"]},
+        {"code": "SE_SC_REC_MOBILE_T_100_200", "name": "100 min 200 MB", "price":
+        1.0, "category": "mobile", "minutes": 100, "data": 200, "bandwidth": null,
+        "available_for": ["member", "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_150_0",
+        "name": "150 min 0 MB", "price": 4.5, "category": "mobile", "minutes": 150,
+        "data": 0, "bandwidth": null, "available_for": ["member", "coop_agreement",
+        "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_150_1024", "name": "150 min 1
+        GB", "price": 7.0, "category": "mobile", "minutes": 150, "data": 1024, "bandwidth":
         null, "available_for": ["member", "coop_agreement", "sponsored"]}, {"code":
-        "SE_SC_REC_MOBILE_T_UNL_5120", "name": "Il\u00b7limitades 5 GB", "price":
-        9.0, "category": "mobile", "minutes": 99999, "data": 5120, "bandwidth": null,
-        "available_for": ["member", "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_UNL_51200",
-        "name": "Il\u00b7limitades 50 GB", "price": 24.0, "category": "mobile", "minutes":
-        99999, "data": 51200, "bandwidth": null, "available_for": ["member", "coop_agreement",
-        "sponsored"]}],"packs":[]}]}'
+        "SE_SC_REC_MOBILE_T_150_10240", "name": "150 min 10 GB", "price": 12.0, "category":
+        "mobile", "minutes": 150, "data": 10240, "bandwidth": null, "available_for":
+        ["member", "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_150_2048",
+        "name": "150 min 2 GB", "price": 10.0, "category": "mobile", "minutes": 150,
+        "data": 2048, "bandwidth": null, "available_for": ["member", "coop_agreement",
+        "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_150_500", "name": "150 min 500
+        MB", "price": 7.5, "category": "mobile", "minutes": 150, "data": 500, "bandwidth":
+        null, "available_for": ["member", "coop_agreement", "sponsored"]}, {"code":
+        "SE_SC_REC_MOBILE_T_200_0", "name": "200 min 0 MB", "price": 1.0, "category":
+        "mobile", "minutes": 200, "data": 0, "bandwidth": null, "available_for": ["member",
+        "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_200_200", "name":
+        "200 min 200 MB", "price": 1.0, "category": "mobile", "minutes": 200, "data":
+        200, "bandwidth": null, "available_for": ["member", "coop_agreement", "sponsored"]},
+        {"code": "SE_SC_REC_MOBILE_T_UNL_30720", "name": "Il\u00b7limitades 30 GB",
+        "price": 19.0, "category": "mobile", "minutes": 99999, "data": 30720, "bandwidth":
+        null, "available_for": ["member", "coop_agreement", "sponsored"], "offer":
+        {"code": "SE_SC_REC_MOBILE_PACK_UNL_30720", "price": 1.0, "name": "Il\u00b7limitades
+        30 GB (Pack)"}}], "packs": [{"code": "SE_SC_REC_PACK_FIBER_1000_2_MOBILES_50",
+        "name": "Fibra 1Gb + Fix + 50 GB compartides 2 m\u00f2bils", "price": 73.0,
+        "category": "mobile_shared_data", "available_for": ["member"], "mobiles_in_pack":
+        2, "fiber_bandwidth": 1024, "has_land_line": true, "products": [{"code": "SE_SC_REC_BA_F_1024",
+        "name": "Fibra 1Gb", "price": 58.0, "category": "fiber", "minutes": null,
+        "data": null, "bandwidth": 1024, "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_2_SHARED_UNL_51200",
+        "name": "Il\u00b7limitades 50 GB compartides entre 2 m\u00f2bils", "price":
+        7.5, "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null},
+        {"code": "SE_SC_REC_MOBILE_2_SHARED_UNL_51200", "name": "Il\u00b7limitades
+        50 GB compartides entre 2 m\u00f2bils", "price": 7.5, "category": "mobile",
+        "minutes": 99999, "data": 51200, "bandwidth": null}]}, {"code": "SE_SC_REC_PACK_FIBER_1000_3_MOBILES_50",
+        "name": "Fibra 1Gb + Fix + 50 GB compartides 3 m\u00f2bils", "price": 77.5,
+        "category": "mobile_shared_data", "available_for": ["member"], "mobiles_in_pack":
+        3, "fiber_bandwidth": 1024, "has_land_line": true, "products": [{"code": "SE_SC_REC_BA_F_1024",
+        "name": "Fibra 1Gb", "price": 58.0, "category": "fiber", "minutes": null,
+        "data": null, "bandwidth": 1024, "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200",
+        "name": "Il\u00b7limitades 50 GB compartides entre 3 m\u00f2bils", "price":
+        6.5, "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null},
+        {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200", "name": "Il\u00b7limitades
+        50 GB compartides entre 3 m\u00f2bils", "price": 6.5, "category": "mobile",
+        "minutes": 99999, "data": 51200, "bandwidth": null}, {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200",
+        "name": "Il\u00b7limitades 50 GB compartides entre 3 m\u00f2bils", "price":
+        6.5, "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null}]},
+        {"code": "SE_SC_REC_PACK_FIBER_100_SF_UNL_20480", "name": "Fibra 100Mb Sense
+        Fix + m\u00f2bil IL 20 GB", "price": 1.0, "category": "bonified_mobile", "available_for":
+        ["member"], "mobiles_in_pack": 1, "fiber_bandwidth": 100, "has_land_line":
+        false, "products": [{"code": "SE_SC_REC_BA_F_100_SF", "name": "Fibra 100Mb
+        Sense Fix", "price": 31.5, "category": "fiber", "minutes": null, "data": null,
+        "bandwidth": 100, "has_landline_phone": false}, {"code": "SE_SC_REC_MOBILE_PACK_UNL_20480",
+        "name": "Il\u00b7limitades 20 GB (Pack)", "price": 8.0, "category": "mobile",
+        "minutes": 99999, "data": 20480, "bandwidth": null}]}, {"code": "SE_SC_REC_PACK_FIBER_100_UNL_20480",
+        "name": "Fibra 100 Mb + m\u00f2bil IL 20 GB", "price": 1.0, "category": "bonified_mobile",
+        "available_for": ["member"], "mobiles_in_pack": 1, "fiber_bandwidth": 100,
+        "has_land_line": true, "products": [{"code": "SE_SC_REC_BA_F_100", "name":
+        "Fibra 100Mb", "price": 34.0, "category": "fiber", "minutes": null, "data":
+        null, "bandwidth": 100, "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_PACK_UNL_20480",
+        "name": "Il\u00b7limitades 20 GB (Pack)", "price": 8.0, "category": "mobile",
+        "minutes": 99999, "data": 20480, "bandwidth": null}]}, {"code": "SE_SC_REC_PACK_FIBER_1024_UNL_20480",
+        "name": "Fibra 1 Gb + m\u00f2bil IL 20 GB", "price": 1.0, "category": "bonified_mobile",
+        "available_for": ["member"], "mobiles_in_pack": 1, "fiber_bandwidth": 1024,
+        "has_land_line": true, "products": [{"code": "SE_SC_REC_BA_F_1024", "name":
+        "Fibra 1Gb", "price": 58.0, "category": "fiber", "minutes": null, "data":
+        null, "bandwidth": 1024, "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_PACK_UNL_20480",
+        "name": "Il\u00b7limitades 20 GB (Pack)", "price": 8.0, "category": "mobile",
+        "minutes": 99999, "data": 20480, "bandwidth": null}]}, {"code": "SE_SC_REC_PACK_FIBER_300_2_MOBILES_50",
+        "name": "Fibra 300Mb + Fix + 50 GB compartides 2 m\u00f2bils", "price": 49.0,
+        "category": "mobile_shared_data", "available_for": ["member"], "mobiles_in_pack":
+        2, "fiber_bandwidth": 300, "has_land_line": true, "products": [{"code": "SE_SC_REC_BA_F_300",
+        "name": "Fibra 300Mb", "price": 34.0, "category": "fiber", "minutes": null,
+        "data": null, "bandwidth": 300, "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_2_SHARED_UNL_51200",
+        "name": "Il\u00b7limitades 50 GB compartides entre 2 m\u00f2bils", "price":
+        7.5, "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null},
+        {"code": "SE_SC_REC_MOBILE_2_SHARED_UNL_51200", "name": "Il\u00b7limitades
+        50 GB compartides entre 2 m\u00f2bils", "price": 7.5, "category": "mobile",
+        "minutes": 99999, "data": 51200, "bandwidth": null}]}, {"code": "SE_SC_REC_PACK_FIBER_300_3_MOBILES_50",
+        "name": "Fibra 300Mb + Fix + 50 GB compartides 3 m\u00f2bils", "price": 53.5,
+        "category": "mobile_shared_data", "available_for": ["member"], "mobiles_in_pack":
+        3, "fiber_bandwidth": 300, "has_land_line": true, "products": [{"code": "SE_SC_REC_BA_F_300",
+        "name": "Fibra 300Mb", "price": 34.0, "category": "fiber", "minutes": null,
+        "data": null, "bandwidth": 300, "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200",
+        "name": "Il\u00b7limitades 50 GB compartides entre 3 m\u00f2bils", "price":
+        6.5, "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null},
+        {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200", "name": "Il\u00b7limitades
+        50 GB compartides entre 3 m\u00f2bils", "price": 6.5, "category": "mobile",
+        "minutes": 99999, "data": 51200, "bandwidth": null}, {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200",
+        "name": "Il\u00b7limitades 50 GB compartides entre 3 m\u00f2bils", "price":
+        6.5, "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null}]},
+        {"code": "SE_SC_REC_PACK_FIBER_300_SF_UNL_20480", "name": "Fibra 300Mb Sense
+        Fix + m\u00f2bil IL 20 GB", "price": 1.0, "category": "bonified_mobile", "available_for":
+        ["member"], "mobiles_in_pack": 1, "fiber_bandwidth": 300, "has_land_line":
+        false, "products": [{"code": "SE_SC_REC_BA_F_300_SF", "name": "Fibra 300Mb
+        Sense Fix", "price": 31.5, "category": "fiber", "minutes": null, "data": null,
+        "bandwidth": 300, "has_landline_phone": false}, {"code": "SE_SC_REC_MOBILE_PACK_UNL_20480",
+        "name": "Il\u00b7limitades 20 GB (Pack)", "price": 8.0, "category": "mobile",
+        "minutes": 99999, "data": 20480, "bandwidth": null}]}, {"code": "SE_SC_REC_PACK_FIBER_300_UNL_20480",
+        "name": "Fibra 300 Mb + m\u00f2bil IL 20 GB", "price": 1.0, "category": "bonified_mobile",
+        "available_for": ["member"], "mobiles_in_pack": 1, "fiber_bandwidth": 300,
+        "has_land_line": true, "products": [{"code": "SE_SC_REC_BA_F_300", "name":
+        "Fibra 300Mb", "price": 34.0, "category": "fiber", "minutes": null, "data":
+        null, "bandwidth": 300, "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_PACK_UNL_20480",
+        "name": "Il\u00b7limitades 20 GB (Pack)", "price": 8.0, "category": "mobile",
+        "minutes": 99999, "data": 20480, "bandwidth": null}]}, {"code": "SE_SC_REC_PACK_FIBER_600_UNL_20480",
+        "name": "Fibra 600 Mb + m\u00f2bil IL 20 GB", "price": 1.0, "category": "bonified_mobile",
+        "available_for": ["member"], "mobiles_in_pack": 1, "fiber_bandwidth": 600,
+        "has_land_line": true, "products": [{"code": "SE_SC_REC_BA_F_600", "name":
+        "Fibra 600Mb", "price": 43.0, "category": "fiber", "minutes": null, "data":
+        null, "bandwidth": 600, "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_PACK_UNL_20480",
+        "name": "Il\u00b7limitades 20 GB (Pack)", "price": 8.0, "category": "mobile",
+        "minutes": 99999, "data": 20480, "bandwidth": null}]}, {"code": "SE_SC_REC_PACK_FIBER_SF_300_2_MOBILES_50",
+        "name": "Fibra 300Mb + 50 GB compartides 2 m\u00f2bils", "price": 46.5, "category":
+        "mobile_shared_data", "available_for": ["member"], "mobiles_in_pack": 2, "fiber_bandwidth":
+        300, "has_land_line": false, "products": [{"code": "SE_SC_REC_BA_F_300_SF",
+        "name": "Fibra 300Mb Sense Fix", "price": 31.5, "category": "fiber", "minutes":
+        null, "data": null, "bandwidth": 300, "has_landline_phone": false}, {"code":
+        "SE_SC_REC_MOBILE_2_SHARED_UNL_51200", "name": "Il\u00b7limitades 50 GB compartides
+        entre 2 m\u00f2bils", "price": 7.5, "category": "mobile", "minutes": 99999,
+        "data": 51200, "bandwidth": null}, {"code": "SE_SC_REC_MOBILE_2_SHARED_UNL_51200",
+        "name": "Il\u00b7limitades 50 GB compartides entre 2 m\u00f2bils", "price":
+        7.5, "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null}]},
+        {"code": "SE_SC_REC_PACK_FIBER_SF_300_3_MOBILES_50", "name": "Fibra 300Mb
+        + 50 GB compartides 3 m\u00f2bils", "price": 51.0, "category": "mobile_shared_data",
+        "available_for": ["member"], "mobiles_in_pack": 3, "fiber_bandwidth": 300,
+        "has_land_line": false, "products": [{"code": "SE_SC_REC_BA_F_300_SF", "name":
+        "Fibra 300Mb Sense Fix", "price": 31.5, "category": "fiber", "minutes": null,
+        "data": null, "bandwidth": 300, "has_landline_phone": false}, {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200",
+        "name": "Il\u00b7limitades 50 GB compartides entre 3 m\u00f2bils", "price":
+        6.5, "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null},
+        {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200", "name": "Il\u00b7limitades
+        50 GB compartides entre 3 m\u00f2bils", "price": 6.5, "category": "mobile",
+        "minutes": 99999, "data": 51200, "bandwidth": null}, {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200",
+        "name": "Il\u00b7limitades 50 GB compartides entre 3 m\u00f2bils", "price":
+        6.5, "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null}]}]}]}'
     headers:
       Access-Control-Allow-Methods:
       - GET
       Access-Control-Allow-Origin:
       - None
       Content-Length:
-      - '2168'
+      - '12651'
       Content-Type:
       - application/json
       Cookie: '****'
       Date:
-      - Tue, 22 Mar 2022 10:48:50 GMT
+      - Mon, 03 Feb 2025 10:38:42 GMT
       Server:
       - Werkzeug/0.11.15 Python/3.7.7
       Set-Cookie: '****'
diff --git a/tests/resources/cassettes/test_product_catalog/TariffTests.test_search_company_catalog.yaml b/tests/resources/cassettes/test_product_catalog/TariffTests.test_search_company_catalog.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..bc93d2979b10c79bae71502c43bcbbc56d562910
--- /dev/null
+++ b/tests/resources/cassettes/test_product_catalog/TariffTests.test_search_company_catalog.yaml
@@ -0,0 +1,387 @@
+interactions:
+- request:
+    body: null
+    headers:
+      API-KEY:
+      - '****'
+      Accept:
+      - application/json
+      Accept-Encoding:
+      - gzip, deflate
+      Accept-Language:
+      - ca
+      Connection:
+      - keep-alive
+      User-Agent:
+      - python-requests/2.27.1
+    method: GET
+    uri: http://odoo-sc.local:8069/api/product-catalog?code=&categ=&is_company=true
+  response:
+    body:
+      string: '{"pricelists": [{"code": "21IVA", "products": [{"code": "SE_SC_REC_BA_ADSL_100",
+        "name": "ADSL 100 min a fix o m\u00f2bil", "price": 36.0, "category": "adsl",
+        "minutes": null, "data": null, "bandwidth": 0, "available_for": ["member",
+        "coop_agreement"], "has_landline_phone": true}, {"code": "SE_SC_REC_BA_ADSL_1000",
+        "name": "ADSL 1000 min a fix", "price": 1.0, "category": "adsl", "minutes":
+        null, "data": null, "bandwidth": 0, "available_for": ["member", "coop_agreement"],
+        "has_landline_phone": true}, {"code": "SE_SC_REC_BA_ADSL_SF", "name": "ADSL
+        sense fix", "price": 31.5, "category": "adsl", "minutes": null, "data": null,
+        "bandwidth": 0, "available_for": ["member", "coop_agreement"], "has_landline_phone":
+        false}, {"code": "SE_SC_REC_BA_F_100", "name": "Fibra 100Mb", "price": 34.0,
+        "category": "fiber", "minutes": null, "data": null, "bandwidth": 100, "available_for":
+        ["member"], "has_landline_phone": true}, {"code": "SE_SC_REC_BA_F_1024", "name":
+        "Fibra 1Gb", "price": 58.0, "category": "fiber", "minutes": null, "data":
+        null, "bandwidth": 1024, "available_for": ["member"], "has_landline_phone":
+        true}, {"code": "SE_SC_REC_BA_F_300", "name": "Fibra 300Mb", "price": 34.0,
+        "category": "fiber", "minutes": null, "data": null, "bandwidth": 300, "available_for":
+        ["member"], "has_landline_phone": true}, {"code": "SE_SC_REC_BA_F_300_SF",
+        "name": "Fibra 300Mb Sense Fix", "price": 31.5, "category": "fiber", "minutes":
+        null, "data": null, "bandwidth": 300, "available_for": ["member"], "has_landline_phone":
+        false}, {"code": "SE_SC_REC_BA_F_600", "name": "Fibra 600Mb", "price": 43.0,
+        "category": "fiber", "minutes": null, "data": null, "bandwidth": 600, "available_for":
+        ["member"], "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_T_0_0",
+        "name": "0 min 0 MB", "price": 2.0, "category": "mobile", "minutes": 0, "data":
+        0, "bandwidth": null, "available_for": ["member", "coop_agreement", "sponsored"]},
+        {"code": "SE_SC_REC_MOBILE_T_0_1024", "name": "0 min 1 GB", "price": 4.5,
+        "category": "mobile", "minutes": 0, "data": 1024, "bandwidth": null, "available_for":
+        ["member", "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_0_10240",
+        "name": "0 min 10 GB", "price": 11.0, "category": "mobile", "minutes": 0,
+        "data": 10240, "bandwidth": null, "available_for": ["member", "coop_agreement",
+        "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_0_2048", "name": "0 min 2 GB",
+        "price": 7.0, "category": "mobile", "minutes": 0, "data": 2048, "bandwidth":
+        null, "available_for": ["member", "coop_agreement", "sponsored"]}, {"code":
+        "SE_SC_REC_MOBILE_T_0_500", "name": "0 min 500 MB", "price": 3.5, "category":
+        "mobile", "minutes": 0, "data": 500, "bandwidth": null, "available_for": ["member",
+        "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_100_0", "name":
+        "100 min 0 MB", "price": 1.0, "category": "mobile", "minutes": 100, "data":
+        0, "bandwidth": null, "available_for": ["member", "coop_agreement", "sponsored"]},
+        {"code": "SE_SC_REC_MOBILE_T_100_200", "name": "100 min 200 MB", "price":
+        1.0, "category": "mobile", "minutes": 100, "data": 200, "bandwidth": null,
+        "available_for": ["member", "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_150_0",
+        "name": "150 min 0 MB", "price": 4.5, "category": "mobile", "minutes": 150,
+        "data": 0, "bandwidth": null, "available_for": ["member", "coop_agreement",
+        "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_150_1024", "name": "150 min 1
+        GB", "price": 7.0, "category": "mobile", "minutes": 150, "data": 1024, "bandwidth":
+        null, "available_for": ["member", "coop_agreement", "sponsored"]}, {"code":
+        "SE_SC_REC_MOBILE_T_150_10240", "name": "150 min 10 GB", "price": 12.0, "category":
+        "mobile", "minutes": 150, "data": 10240, "bandwidth": null, "available_for":
+        ["member", "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_150_2048",
+        "name": "150 min 2 GB", "price": 10.0, "category": "mobile", "minutes": 150,
+        "data": 2048, "bandwidth": null, "available_for": ["member", "coop_agreement",
+        "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_150_500", "name": "150 min 500
+        MB", "price": 7.5, "category": "mobile", "minutes": 150, "data": 500, "bandwidth":
+        null, "available_for": ["member", "coop_agreement", "sponsored"]}, {"code":
+        "SE_SC_REC_MOBILE_T_200_0", "name": "200 min 0 MB", "price": 1.0, "category":
+        "mobile", "minutes": 200, "data": 0, "bandwidth": null, "available_for": ["member",
+        "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_200_200", "name":
+        "200 min 200 MB", "price": 1.0, "category": "mobile", "minutes": 200, "data":
+        200, "bandwidth": null, "available_for": ["member", "coop_agreement", "sponsored"]},
+        {"code": "SE_SC_REC_MOBILE_T_UNL_30720", "name": "Il\u00b7limitades 30 GB",
+        "price": 19.0, "category": "mobile", "minutes": 99999, "data": 30720, "bandwidth":
+        null, "available_for": ["member", "coop_agreement", "sponsored"], "offer":
+        {"code": "SE_SC_REC_MOBILE_PACK_UNL_30720", "price": 1.0, "name": "Il\u00b7limitades
+        30 GB (Pack)"}}], "packs": [{"code": "SE_SC_REC_PACK_FIBER_1000_2_MOBILES_50",
+        "name": "Fibra 1Gb + Fix + 50 GB compartides 2 m\u00f2bils", "price": 73.0,
+        "category": "mobile_shared_data", "available_for": ["member"], "mobiles_in_pack":
+        2, "fiber_bandwidth": 1024, "has_land_line": true, "products": [{"code": "SE_SC_REC_BA_F_1024",
+        "name": "Fibra 1Gb", "price": 58.0, "category": "fiber", "minutes": null,
+        "data": null, "bandwidth": 1024, "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_2_SHARED_UNL_51200",
+        "name": "Il\u00b7limitades 50 GB compartides entre 2 m\u00f2bils", "price":
+        7.5, "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null},
+        {"code": "SE_SC_REC_MOBILE_2_SHARED_UNL_51200", "name": "Il\u00b7limitades
+        50 GB compartides entre 2 m\u00f2bils", "price": 7.5, "category": "mobile",
+        "minutes": 99999, "data": 51200, "bandwidth": null}]}, {"code": "SE_SC_REC_PACK_FIBER_1000_3_MOBILES_50",
+        "name": "Fibra 1Gb + Fix + 50 GB compartides 3 m\u00f2bils", "price": 77.5,
+        "category": "mobile_shared_data", "available_for": ["member"], "mobiles_in_pack":
+        3, "fiber_bandwidth": 1024, "has_land_line": true, "products": [{"code": "SE_SC_REC_BA_F_1024",
+        "name": "Fibra 1Gb", "price": 58.0, "category": "fiber", "minutes": null,
+        "data": null, "bandwidth": 1024, "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200",
+        "name": "Il\u00b7limitades 50 GB compartides entre 3 m\u00f2bils", "price":
+        6.5, "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null},
+        {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200", "name": "Il\u00b7limitades
+        50 GB compartides entre 3 m\u00f2bils", "price": 6.5, "category": "mobile",
+        "minutes": 99999, "data": 51200, "bandwidth": null}, {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200",
+        "name": "Il\u00b7limitades 50 GB compartides entre 3 m\u00f2bils", "price":
+        6.5, "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null}]},
+        {"code": "SE_SC_REC_PACK_FIBER_100_SF_UNL_20480", "name": "Fibra 100Mb Sense
+        Fix + m\u00f2bil IL 20 GB", "price": 1.0, "category": "bonified_mobile", "available_for":
+        ["member"], "mobiles_in_pack": 1, "fiber_bandwidth": 100, "has_land_line":
+        false, "products": [{"code": "SE_SC_REC_BA_F_100_SF", "name": "Fibra 100Mb
+        Sense Fix", "price": 31.5, "category": "fiber", "minutes": null, "data": null,
+        "bandwidth": 100, "has_landline_phone": false}, {"code": "SE_SC_REC_MOBILE_PACK_UNL_20480",
+        "name": "Il\u00b7limitades 20 GB (Pack)", "price": 8.0, "category": "mobile",
+        "minutes": 99999, "data": 20480, "bandwidth": null}]}, {"code": "SE_SC_REC_PACK_FIBER_100_UNL_20480",
+        "name": "Fibra 100 Mb + m\u00f2bil IL 20 GB", "price": 1.0, "category": "bonified_mobile",
+        "available_for": ["member"], "mobiles_in_pack": 1, "fiber_bandwidth": 100,
+        "has_land_line": true, "products": [{"code": "SE_SC_REC_BA_F_100", "name":
+        "Fibra 100Mb", "price": 34.0, "category": "fiber", "minutes": null, "data":
+        null, "bandwidth": 100, "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_PACK_UNL_20480",
+        "name": "Il\u00b7limitades 20 GB (Pack)", "price": 8.0, "category": "mobile",
+        "minutes": 99999, "data": 20480, "bandwidth": null}]}, {"code": "SE_SC_REC_PACK_FIBER_1024_UNL_20480",
+        "name": "Fibra 1 Gb + m\u00f2bil IL 20 GB", "price": 1.0, "category": "bonified_mobile",
+        "available_for": ["member"], "mobiles_in_pack": 1, "fiber_bandwidth": 1024,
+        "has_land_line": true, "products": [{"code": "SE_SC_REC_BA_F_1024", "name":
+        "Fibra 1Gb", "price": 58.0, "category": "fiber", "minutes": null, "data":
+        null, "bandwidth": 1024, "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_PACK_UNL_20480",
+        "name": "Il\u00b7limitades 20 GB (Pack)", "price": 8.0, "category": "mobile",
+        "minutes": 99999, "data": 20480, "bandwidth": null}]}, {"code": "SE_SC_REC_PACK_FIBER_300_2_MOBILES_50",
+        "name": "Fibra 300Mb + Fix + 50 GB compartides 2 m\u00f2bils", "price": 49.0,
+        "category": "mobile_shared_data", "available_for": ["member"], "mobiles_in_pack":
+        2, "fiber_bandwidth": 300, "has_land_line": true, "products": [{"code": "SE_SC_REC_BA_F_300",
+        "name": "Fibra 300Mb", "price": 34.0, "category": "fiber", "minutes": null,
+        "data": null, "bandwidth": 300, "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_2_SHARED_UNL_51200",
+        "name": "Il\u00b7limitades 50 GB compartides entre 2 m\u00f2bils", "price":
+        7.5, "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null},
+        {"code": "SE_SC_REC_MOBILE_2_SHARED_UNL_51200", "name": "Il\u00b7limitades
+        50 GB compartides entre 2 m\u00f2bils", "price": 7.5, "category": "mobile",
+        "minutes": 99999, "data": 51200, "bandwidth": null}]}, {"code": "SE_SC_REC_PACK_FIBER_300_3_MOBILES_50",
+        "name": "Fibra 300Mb + Fix + 50 GB compartides 3 m\u00f2bils", "price": 53.5,
+        "category": "mobile_shared_data", "available_for": ["member"], "mobiles_in_pack":
+        3, "fiber_bandwidth": 300, "has_land_line": true, "products": [{"code": "SE_SC_REC_BA_F_300",
+        "name": "Fibra 300Mb", "price": 34.0, "category": "fiber", "minutes": null,
+        "data": null, "bandwidth": 300, "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200",
+        "name": "Il\u00b7limitades 50 GB compartides entre 3 m\u00f2bils", "price":
+        6.5, "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null},
+        {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200", "name": "Il\u00b7limitades
+        50 GB compartides entre 3 m\u00f2bils", "price": 6.5, "category": "mobile",
+        "minutes": 99999, "data": 51200, "bandwidth": null}, {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200",
+        "name": "Il\u00b7limitades 50 GB compartides entre 3 m\u00f2bils", "price":
+        6.5, "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null}]},
+        {"code": "SE_SC_REC_PACK_FIBER_300_SF_UNL_20480", "name": "Fibra 300Mb Sense
+        Fix + m\u00f2bil IL 20 GB", "price": 1.0, "category": "bonified_mobile", "available_for":
+        ["member"], "mobiles_in_pack": 1, "fiber_bandwidth": 300, "has_land_line":
+        false, "products": [{"code": "SE_SC_REC_BA_F_300_SF", "name": "Fibra 300Mb
+        Sense Fix", "price": 31.5, "category": "fiber", "minutes": null, "data": null,
+        "bandwidth": 300, "has_landline_phone": false}, {"code": "SE_SC_REC_MOBILE_PACK_UNL_20480",
+        "name": "Il\u00b7limitades 20 GB (Pack)", "price": 8.0, "category": "mobile",
+        "minutes": 99999, "data": 20480, "bandwidth": null}]}, {"code": "SE_SC_REC_PACK_FIBER_300_UNL_20480",
+        "name": "Fibra 300 Mb + m\u00f2bil IL 20 GB", "price": 1.0, "category": "bonified_mobile",
+        "available_for": ["member"], "mobiles_in_pack": 1, "fiber_bandwidth": 300,
+        "has_land_line": true, "products": [{"code": "SE_SC_REC_BA_F_300", "name":
+        "Fibra 300Mb", "price": 34.0, "category": "fiber", "minutes": null, "data":
+        null, "bandwidth": 300, "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_PACK_UNL_20480",
+        "name": "Il\u00b7limitades 20 GB (Pack)", "price": 8.0, "category": "mobile",
+        "minutes": 99999, "data": 20480, "bandwidth": null}]}, {"code": "SE_SC_REC_PACK_FIBER_600_UNL_20480",
+        "name": "Fibra 600 Mb + m\u00f2bil IL 20 GB", "price": 1.0, "category": "bonified_mobile",
+        "available_for": ["member"], "mobiles_in_pack": 1, "fiber_bandwidth": 600,
+        "has_land_line": true, "products": [{"code": "SE_SC_REC_BA_F_600", "name":
+        "Fibra 600Mb", "price": 43.0, "category": "fiber", "minutes": null, "data":
+        null, "bandwidth": 600, "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_PACK_UNL_20480",
+        "name": "Il\u00b7limitades 20 GB (Pack)", "price": 8.0, "category": "mobile",
+        "minutes": 99999, "data": 20480, "bandwidth": null}]}, {"code": "SE_SC_REC_PACK_FIBER_SF_300_2_MOBILES_50",
+        "name": "Fibra 300Mb + 50 GB compartides 2 m\u00f2bils", "price": 46.5, "category":
+        "mobile_shared_data", "available_for": ["member"], "mobiles_in_pack": 2, "fiber_bandwidth":
+        300, "has_land_line": false, "products": [{"code": "SE_SC_REC_BA_F_300_SF",
+        "name": "Fibra 300Mb Sense Fix", "price": 31.5, "category": "fiber", "minutes":
+        null, "data": null, "bandwidth": 300, "has_landline_phone": false}, {"code":
+        "SE_SC_REC_MOBILE_2_SHARED_UNL_51200", "name": "Il\u00b7limitades 50 GB compartides
+        entre 2 m\u00f2bils", "price": 7.5, "category": "mobile", "minutes": 99999,
+        "data": 51200, "bandwidth": null}, {"code": "SE_SC_REC_MOBILE_2_SHARED_UNL_51200",
+        "name": "Il\u00b7limitades 50 GB compartides entre 2 m\u00f2bils", "price":
+        7.5, "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null}]},
+        {"code": "SE_SC_REC_PACK_FIBER_SF_300_3_MOBILES_50", "name": "Fibra 300Mb
+        + 50 GB compartides 3 m\u00f2bils", "price": 51.0, "category": "mobile_shared_data",
+        "available_for": ["member"], "mobiles_in_pack": 3, "fiber_bandwidth": 300,
+        "has_land_line": false, "products": [{"code": "SE_SC_REC_BA_F_300_SF", "name":
+        "Fibra 300Mb Sense Fix", "price": 31.5, "category": "fiber", "minutes": null,
+        "data": null, "bandwidth": 300, "has_landline_phone": false}, {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200",
+        "name": "Il\u00b7limitades 50 GB compartides entre 3 m\u00f2bils", "price":
+        6.5, "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null},
+        {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200", "name": "Il\u00b7limitades
+        50 GB compartides entre 3 m\u00f2bils", "price": 6.5, "category": "mobile",
+        "minutes": 99999, "data": 51200, "bandwidth": null}, {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200",
+        "name": "Il\u00b7limitades 50 GB compartides entre 3 m\u00f2bils", "price":
+        6.5, "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null}]}]},
+        {"code": "0IVA", "products": [{"code": "SE_SC_REC_BA_ADSL_100", "name": "ADSL
+        100 min a fix o m\u00f2bil", "price": 26.03, "category": "adsl", "minutes":
+        null, "data": null, "bandwidth": 0, "available_for": ["member", "coop_agreement"],
+        "has_landline_phone": true}, {"code": "SE_SC_REC_BA_ADSL_1000", "name": "ADSL
+        1000 min a fix", "price": 28.09, "category": "adsl", "minutes": null, "data":
+        null, "bandwidth": 0, "available_for": ["member", "coop_agreement"], "has_landline_phone":
+        true}, {"code": "SE_SC_REC_BA_ADSL_SF", "name": "ADSL sense fix", "price":
+        26.03, "category": "adsl", "minutes": null, "data": null, "bandwidth": 0,
+        "available_for": ["member", "coop_agreement"], "has_landline_phone": false},
+        {"code": "SE_SC_REC_BA_F_100", "name": "Fibra 100Mb", "price": 28.1, "category":
+        "fiber", "minutes": null, "data": null, "bandwidth": 100, "available_for":
+        ["member"], "has_landline_phone": true}, {"code": "SE_SC_REC_BA_F_1024", "name":
+        "Fibra 1Gb", "price": 47.93, "category": "fiber", "minutes": null, "data":
+        null, "bandwidth": 1024, "available_for": ["member"], "has_landline_phone":
+        true}, {"code": "SE_SC_REC_BA_F_300", "name": "Fibra 300Mb", "price": 34.0,
+        "category": "fiber", "minutes": null, "data": null, "bandwidth": 300, "available_for":
+        ["member"], "has_landline_phone": true}, {"code": "SE_SC_REC_BA_F_300_SF",
+        "name": "Fibra 300Mb Sense Fix", "price": 31.5, "category": "fiber", "minutes":
+        null, "data": null, "bandwidth": 300, "available_for": ["member"], "has_landline_phone":
+        false}, {"code": "SE_SC_REC_BA_F_600", "name": "Fibra 600Mb", "price": 35.54,
+        "category": "fiber", "minutes": null, "data": null, "bandwidth": 600, "available_for":
+        ["member"], "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_T_0_0",
+        "name": "0 min 0 MB", "price": 1.6500000000000001, "category": "mobile", "minutes":
+        0, "data": 0, "bandwidth": null, "available_for": ["member", "coop_agreement",
+        "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_0_1024", "name": "0 min 1 GB",
+        "price": 3.72, "category": "mobile", "minutes": 0, "data": 1024, "bandwidth":
+        null, "available_for": ["member", "coop_agreement", "sponsored"]}, {"code":
+        "SE_SC_REC_MOBILE_T_0_10240", "name": "0 min 10 GB", "price": 9.09, "category":
+        "mobile", "minutes": 0, "data": 10240, "bandwidth": null, "available_for":
+        ["member", "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_0_2048",
+        "name": "0 min 2 GB", "price": 5.79, "category": "mobile", "minutes": 0, "data":
+        2048, "bandwidth": null, "available_for": ["member", "coop_agreement", "sponsored"]},
+        {"code": "SE_SC_REC_MOBILE_T_0_500", "name": "0 min 500 MB", "price": 2.89,
+        "category": "mobile", "minutes": 0, "data": 500, "bandwidth": null, "available_for":
+        ["member", "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_100_0",
+        "name": "100 min 0 MB", "price": 2.89, "category": "mobile", "minutes": 100,
+        "data": 0, "bandwidth": null, "available_for": ["member", "coop_agreement",
+        "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_100_200", "name": "100 min 200
+        MB", "price": 4.96, "category": "mobile", "minutes": 100, "data": 200, "bandwidth":
+        null, "available_for": ["member", "coop_agreement", "sponsored"]}, {"code":
+        "SE_SC_REC_MOBILE_T_150_0", "name": "150 min 0 MB", "price": 3.72, "category":
+        "mobile", "minutes": 150, "data": 0, "bandwidth": null, "available_for": ["member",
+        "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_150_1024", "name":
+        "150 min 1 GB", "price": 5.79, "category": "mobile", "minutes": 150, "data":
+        1024, "bandwidth": null, "available_for": ["member", "coop_agreement", "sponsored"]},
+        {"code": "SE_SC_REC_MOBILE_T_150_10240", "name": "150 min 10 GB", "price":
+        9.92, "category": "mobile", "minutes": 150, "data": 10240, "bandwidth": null,
+        "available_for": ["member", "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_150_2048",
+        "name": "150 min 2 GB", "price": 8.26, "category": "mobile", "minutes": 150,
+        "data": 2048, "bandwidth": null, "available_for": ["member", "coop_agreement",
+        "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_150_500", "name": "150 min 500
+        MB", "price": 6.2, "category": "mobile", "minutes": 150, "data": 500, "bandwidth":
+        null, "available_for": ["member", "coop_agreement", "sponsored"]}, {"code":
+        "SE_SC_REC_MOBILE_T_200_0", "name": "200 min 0 MB", "price": 4.55, "category":
+        "mobile", "minutes": 200, "data": 0, "bandwidth": null, "available_for": ["member",
+        "coop_agreement", "sponsored"]}, {"code": "SE_SC_REC_MOBILE_T_200_200", "name":
+        "200 min 200 MB", "price": 6.61, "category": "mobile", "minutes": 200, "data":
+        200, "bandwidth": null, "available_for": ["member", "coop_agreement", "sponsored"]},
+        {"code": "SE_SC_REC_MOBILE_T_UNL_30720", "name": "Il\u00b7limitades 30 GB",
+        "price": 15.700000000000001, "category": "mobile", "minutes": 99999, "data":
+        30720, "bandwidth": null, "available_for": ["member", "coop_agreement", "sponsored"],
+        "offer": {"code": "SE_SC_REC_MOBILE_PACK_UNL_30720", "price": 1.0, "name":
+        "Il\u00b7limitades 30 GB (Pack)"}}], "packs": [{"code": "SE_SC_REC_PACK_FIBER_1000_2_MOBILES_50",
+        "name": "Fibra 1Gb + Fix + 50 GB compartides 2 m\u00f2bils", "price": 60.33,
+        "category": "mobile_shared_data", "available_for": ["member"], "mobiles_in_pack":
+        2, "fiber_bandwidth": 1024, "has_land_line": true, "products": [{"code": "SE_SC_REC_BA_F_1024",
+        "name": "Fibra 1Gb", "price": 47.93, "category": "fiber", "minutes": null,
+        "data": null, "bandwidth": 1024, "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_2_SHARED_UNL_51200",
+        "name": "Il\u00b7limitades 50 GB compartides entre 2 m\u00f2bils", "price":
+        6.2, "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null},
+        {"code": "SE_SC_REC_MOBILE_2_SHARED_UNL_51200", "name": "Il\u00b7limitades
+        50 GB compartides entre 2 m\u00f2bils", "price": 6.2, "category": "mobile",
+        "minutes": 99999, "data": 51200, "bandwidth": null}]}, {"code": "SE_SC_REC_PACK_FIBER_1000_3_MOBILES_50",
+        "name": "Fibra 1Gb + Fix + 50 GB compartides 3 m\u00f2bils", "price": 64.13,
+        "category": "mobile_shared_data", "available_for": ["member"], "mobiles_in_pack":
+        3, "fiber_bandwidth": 1024, "has_land_line": true, "products": [{"code": "SE_SC_REC_BA_F_1024",
+        "name": "Fibra 1Gb", "price": 47.93, "category": "fiber", "minutes": null,
+        "data": null, "bandwidth": 1024, "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200",
+        "name": "Il\u00b7limitades 50 GB compartides entre 3 m\u00f2bils", "price":
+        5.4, "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null},
+        {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200", "name": "Il\u00b7limitades
+        50 GB compartides entre 3 m\u00f2bils", "price": 5.4, "category": "mobile",
+        "minutes": 99999, "data": 51200, "bandwidth": null}, {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200",
+        "name": "Il\u00b7limitades 50 GB compartides entre 3 m\u00f2bils", "price":
+        5.4, "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null}]},
+        {"code": "SE_SC_REC_PACK_FIBER_100_SF_UNL_20480", "name": "Fibra 100Mb Sense
+        Fix + m\u00f2bil IL 20 GB", "price": 1.0, "category": "bonified_mobile", "available_for":
+        ["member"], "mobiles_in_pack": 1, "fiber_bandwidth": 100, "has_land_line":
+        false, "products": [{"code": "SE_SC_REC_BA_F_100_SF", "name": "Fibra 100Mb
+        Sense Fix", "price": 26.03, "category": "fiber", "minutes": null, "data":
+        null, "bandwidth": 100, "has_landline_phone": false}, {"code": "SE_SC_REC_MOBILE_PACK_UNL_20480",
+        "name": "Il\u00b7limitades 20 GB (Pack)", "price": 8.0, "category": "mobile",
+        "minutes": 99999, "data": 20480, "bandwidth": null}]}, {"code": "SE_SC_REC_PACK_FIBER_100_UNL_20480",
+        "name": "Fibra 100 Mb + m\u00f2bil IL 20 GB", "price": 1.0, "category": "bonified_mobile",
+        "available_for": ["member"], "mobiles_in_pack": 1, "fiber_bandwidth": 100,
+        "has_land_line": true, "products": [{"code": "SE_SC_REC_BA_F_100", "name":
+        "Fibra 100Mb", "price": 28.1, "category": "fiber", "minutes": null, "data":
+        null, "bandwidth": 100, "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_PACK_UNL_20480",
+        "name": "Il\u00b7limitades 20 GB (Pack)", "price": 8.0, "category": "mobile",
+        "minutes": 99999, "data": 20480, "bandwidth": null}]}, {"code": "SE_SC_REC_PACK_FIBER_1024_UNL_20480",
+        "name": "Fibra 1 Gb + m\u00f2bil IL 20 GB", "price": 1.0, "category": "bonified_mobile",
+        "available_for": ["member"], "mobiles_in_pack": 1, "fiber_bandwidth": 1024,
+        "has_land_line": true, "products": [{"code": "SE_SC_REC_BA_F_1024", "name":
+        "Fibra 1Gb", "price": 47.93, "category": "fiber", "minutes": null, "data":
+        null, "bandwidth": 1024, "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_PACK_UNL_20480",
+        "name": "Il\u00b7limitades 20 GB (Pack)", "price": 8.0, "category": "mobile",
+        "minutes": 99999, "data": 20480, "bandwidth": null}]}, {"code": "SE_SC_REC_PACK_FIBER_300_2_MOBILES_50",
+        "name": "Fibra 300Mb + Fix + 50 GB compartides 2 m\u00f2bils", "price": 46.4,
+        "category": "mobile_shared_data", "available_for": ["member"], "mobiles_in_pack":
+        2, "fiber_bandwidth": 300, "has_land_line": true, "products": [{"code": "SE_SC_REC_BA_F_300",
+        "name": "Fibra 300Mb", "price": 34.0, "category": "fiber", "minutes": null,
+        "data": null, "bandwidth": 300, "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_2_SHARED_UNL_51200",
+        "name": "Il\u00b7limitades 50 GB compartides entre 2 m\u00f2bils", "price":
+        6.2, "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null},
+        {"code": "SE_SC_REC_MOBILE_2_SHARED_UNL_51200", "name": "Il\u00b7limitades
+        50 GB compartides entre 2 m\u00f2bils", "price": 6.2, "category": "mobile",
+        "minutes": 99999, "data": 51200, "bandwidth": null}]}, {"code": "SE_SC_REC_PACK_FIBER_300_3_MOBILES_50",
+        "name": "Fibra 300Mb + Fix + 50 GB compartides 3 m\u00f2bils", "price": 50.2,
+        "category": "mobile_shared_data", "available_for": ["member"], "mobiles_in_pack":
+        3, "fiber_bandwidth": 300, "has_land_line": true, "products": [{"code": "SE_SC_REC_BA_F_300",
+        "name": "Fibra 300Mb", "price": 34.0, "category": "fiber", "minutes": null,
+        "data": null, "bandwidth": 300, "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200",
+        "name": "Il\u00b7limitades 50 GB compartides entre 3 m\u00f2bils", "price":
+        5.4, "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null},
+        {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200", "name": "Il\u00b7limitades
+        50 GB compartides entre 3 m\u00f2bils", "price": 5.4, "category": "mobile",
+        "minutes": 99999, "data": 51200, "bandwidth": null}, {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200",
+        "name": "Il\u00b7limitades 50 GB compartides entre 3 m\u00f2bils", "price":
+        5.4, "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null}]},
+        {"code": "SE_SC_REC_PACK_FIBER_300_SF_UNL_20480", "name": "Fibra 300Mb Sense
+        Fix + m\u00f2bil IL 20 GB", "price": 1.0, "category": "bonified_mobile", "available_for":
+        ["member"], "mobiles_in_pack": 1, "fiber_bandwidth": 300, "has_land_line":
+        false, "products": [{"code": "SE_SC_REC_BA_F_300_SF", "name": "Fibra 300Mb
+        Sense Fix", "price": 31.5, "category": "fiber", "minutes": null, "data": null,
+        "bandwidth": 300, "has_landline_phone": false}, {"code": "SE_SC_REC_MOBILE_PACK_UNL_20480",
+        "name": "Il\u00b7limitades 20 GB (Pack)", "price": 8.0, "category": "mobile",
+        "minutes": 99999, "data": 20480, "bandwidth": null}]}, {"code": "SE_SC_REC_PACK_FIBER_300_UNL_20480",
+        "name": "Fibra 300 Mb + m\u00f2bil IL 20 GB", "price": 1.0, "category": "bonified_mobile",
+        "available_for": ["member"], "mobiles_in_pack": 1, "fiber_bandwidth": 300,
+        "has_land_line": true, "products": [{"code": "SE_SC_REC_BA_F_300", "name":
+        "Fibra 300Mb", "price": 34.0, "category": "fiber", "minutes": null, "data":
+        null, "bandwidth": 300, "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_PACK_UNL_20480",
+        "name": "Il\u00b7limitades 20 GB (Pack)", "price": 8.0, "category": "mobile",
+        "minutes": 99999, "data": 20480, "bandwidth": null}]}, {"code": "SE_SC_REC_PACK_FIBER_600_UNL_20480",
+        "name": "Fibra 600 Mb + m\u00f2bil IL 20 GB", "price": 1.0, "category": "bonified_mobile",
+        "available_for": ["member"], "mobiles_in_pack": 1, "fiber_bandwidth": 600,
+        "has_land_line": true, "products": [{"code": "SE_SC_REC_BA_F_600", "name":
+        "Fibra 600Mb", "price": 35.54, "category": "fiber", "minutes": null, "data":
+        null, "bandwidth": 600, "has_landline_phone": true}, {"code": "SE_SC_REC_MOBILE_PACK_UNL_20480",
+        "name": "Il\u00b7limitades 20 GB (Pack)", "price": 8.0, "category": "mobile",
+        "minutes": 99999, "data": 20480, "bandwidth": null}]}, {"code": "SE_SC_REC_PACK_FIBER_SF_300_2_MOBILES_50",
+        "name": "Fibra 300Mb + 50 GB compartides 2 m\u00f2bils", "price": 43.9, "category":
+        "mobile_shared_data", "available_for": ["member"], "mobiles_in_pack": 2, "fiber_bandwidth":
+        300, "has_land_line": false, "products": [{"code": "SE_SC_REC_BA_F_300_SF",
+        "name": "Fibra 300Mb Sense Fix", "price": 31.5, "category": "fiber", "minutes":
+        null, "data": null, "bandwidth": 300, "has_landline_phone": false}, {"code":
+        "SE_SC_REC_MOBILE_2_SHARED_UNL_51200", "name": "Il\u00b7limitades 50 GB compartides
+        entre 2 m\u00f2bils", "price": 6.2, "category": "mobile", "minutes": 99999,
+        "data": 51200, "bandwidth": null}, {"code": "SE_SC_REC_MOBILE_2_SHARED_UNL_51200",
+        "name": "Il\u00b7limitades 50 GB compartides entre 2 m\u00f2bils", "price":
+        6.2, "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null}]},
+        {"code": "SE_SC_REC_PACK_FIBER_SF_300_3_MOBILES_50", "name": "Fibra 300Mb
+        + 50 GB compartides 3 m\u00f2bils", "price": 47.7, "category": "mobile_shared_data",
+        "available_for": ["member"], "mobiles_in_pack": 3, "fiber_bandwidth": 300,
+        "has_land_line": false, "products": [{"code": "SE_SC_REC_BA_F_300_SF", "name":
+        "Fibra 300Mb Sense Fix", "price": 31.5, "category": "fiber", "minutes": null,
+        "data": null, "bandwidth": 300, "has_landline_phone": false}, {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200",
+        "name": "Il\u00b7limitades 50 GB compartides entre 3 m\u00f2bils", "price":
+        5.4, "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null},
+        {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200", "name": "Il\u00b7limitades
+        50 GB compartides entre 3 m\u00f2bils", "price": 5.4, "category": "mobile",
+        "minutes": 99999, "data": 51200, "bandwidth": null}, {"code": "SE_SC_REC_MOBILE_3_SHARED_UNL_51200",
+        "name": "Il\u00b7limitades 50 GB compartides entre 3 m\u00f2bils", "price":
+        5.4, "category": "mobile", "minutes": 99999, "data": 51200, "bandwidth": null}]}]}]}'
+    headers:
+      Access-Control-Allow-Methods:
+      - GET
+      Access-Control-Allow-Origin:
+      - None
+      Content-Length:
+      - '28686'
+      Content-Type:
+      - application/json
+      Cookie: '****'
+      Date:
+      - Mon, 03 Feb 2025 10:38:43 GMT
+      Server:
+      - Werkzeug/0.11.15 Python/3.7.7
+      Set-Cookie: '****'
+    status:
+      code: 200
+      message: OK
+version: 1
diff --git a/tests/resources/cassettes/test_product_catalog/TariffTests.test_search_non_existant_code.yaml b/tests/resources/cassettes/test_product_catalog/TariffTests.test_search_non_existant_code.yaml
index 5b2da85b5b0ce93dbc11a74a848ab7d0112fdc3d..79ff1e4c7d0fcb90e3c7b23ff73e30eff10cb6c4 100644
--- a/tests/resources/cassettes/test_product_catalog/TariffTests.test_search_non_existant_code.yaml
+++ b/tests/resources/cassettes/test_product_catalog/TariffTests.test_search_non_existant_code.yaml
@@ -15,7 +15,7 @@ interactions:
       User-Agent:
       - python-requests/2.27.1
     method: GET
-    uri: http://odoo-sc.local:8069/api/product-catalog?code=BBBB&categ=&product_code=
+    uri: http://odoo-sc.local:8069/api/product-catalog?code=BBBB&categ=&is_company=false
   response:
     body:
       string: '{"pricelists": []}'
@@ -30,7 +30,7 @@ interactions:
       - application/json
       Cookie: '****'
       Date:
-      - Fri, 01 Jul 2022 17:22:40 GMT
+      - Mon, 03 Feb 2025 10:38:43 GMT
       Server:
       - Werkzeug/0.11.15 Python/3.7.7
       Set-Cookie: '****'
diff --git a/tests/resources/test_product_catalog.py b/tests/resources/test_product_catalog.py
index ff5f57f011a774e12930ad86040ad2eab923434c..7176a6ecce0ee4ca7c12b99e80f44c2472359db1 100644
--- a/tests/resources/test_product_catalog.py
+++ b/tests/resources/test_product_catalog.py
@@ -28,7 +28,7 @@ class TariffTests(unittest.TestCase):
             tariff_names.append(product.name)
             tariff_codes.append(product.code)
             tariff_available_for.append(product.available_for)
-            if product.code == "SE_SC_REC_MOBILE_T_UNL_2048":
+            if product.code == "SE_SC_REC_MOBILE_T_UNL_30720":
                 tariff_offer = product.offer
 
         self.assertIn("ADSL sense fix", tariff_names)
@@ -36,9 +36,9 @@ class TariffTests(unittest.TestCase):
         self.assertIn(["member"], tariff_available_for)
 
         self.assertIsInstance(tariff_offer, Offer)
-        self.assertIn("SE_SC_REC_MOBILE_PACK_UNL_2048", tariff_offer.code)
-        self.assertIn("Il·limitades 2 GB associat a fibra", tariff_offer.name)
-        self.assertEqual(8, tariff_offer.price)
+        self.assertIn("SE_SC_REC_MOBILE_PACK_UNL_30720", tariff_offer.code)
+        self.assertIn("Il·limitades 30 GB (Pack)", tariff_offer.name)
+        self.assertEqual(1.0, tariff_offer.price)
 
         adsl_wo_fix_product = list(
             filter(lambda p: p.code == "SE_SC_REC_BA_ADSL_SF", pricelist_21IVA.products)
@@ -73,11 +73,11 @@ class TariffTests(unittest.TestCase):
                 pack_tariff_codes.append(product.code)
 
         self.assertIn("SE_SC_REC_PACK_FIBER_100_UNL_20480", pack_codes)
-        self.assertIn("Fibra 100 amb fix+ 2 M\u00f2bils", pack_names)
-        self.assertIn("Fibra 100Mb amb fix", pack_tariff_names)
+        self.assertIn("Fibra 1Gb + Fix + 50 GB compartides 2 mòbils", pack_names)
+        self.assertIn("Fibra 300Mb Sense Fix", pack_tariff_names)
         self.assertIn("SE_SC_REC_MOBILE_PACK_UNL_20480", pack_tariff_codes)
-        self.assertIn("2", pack_mobiles_in_pack)
-        self.assertIn("100", pack_fiber_bandwidth)
+        self.assertIn(2, pack_mobiles_in_pack)
+        self.assertIn(100, pack_fiber_bandwidth)
 
     @pytest.mark.vcr()
     def test_search_non_existant_code(self):
@@ -104,15 +104,24 @@ class TariffTests(unittest.TestCase):
         ca_product_names = [p.name for p in ca_pricelists[0].products]
         es_product_names = [p.name for p in es_pricelists[0].products]
 
-        self.assertIn("Il·limitades 10 GB", ca_product_names)
-        self.assertIn("Ilimitadas 10 GB", es_product_names)
+        self.assertIn("Il·limitades 30 GB", ca_product_names)
+        self.assertIn("Ilimitadas 30 GB", es_product_names)
 
     @pytest.mark.vcr()
-    def test_search_available_products_for_product_code(self):
+    def test_get_by_product_code(self):
         """For product fibra 100Mb only are available other Fiber products."""
-        pricelists = ProductCatalog.search(product_code="SE_SC_REC_BA_F_100")
+        pricelists = ProductCatalog.get_by_product_code(
+            product_code="SE_SC_REC_BA_F_100"
+        )
+        product_codes = [p.code for p in pricelists[0].products]
+
+        self.assertIn("SE_SC_REC_BA_F_100_SF", product_codes)
+
+    @pytest.mark.vcr()
+    def test_search_company_catalog(self):
+        pricelists = ProductCatalog.search(is_company="true")
         product_codes = [p.code for p in pricelists[0].products]
+        pack_codes = [p.code for p in pricelists[0].packs]
 
-        self.assertIn("SE_SC_REC_BA_F_1024", product_codes)
-        self.assertIn("SE_SC_REC_BA_F_600", product_codes)
-        self.assertNotIn("SE_SC_REC_BA_ADSL_SF", product_codes)
+        self.assertIn("SE_SC_REC_MOBILE_T_UNL_30720", product_codes)
+        self.assertIn("SE_SC_REC_PACK_FIBER_1000_2_MOBILES_50", pack_codes)