{"id":3174,"date":"2026-11-11T13:07:21","date_gmt":"2026-11-11T13:07:21","guid":{"rendered":"https:\/\/circularpass.io\/?page_id=3174"},"modified":"2026-11-12T13:38:53","modified_gmt":"2026-11-12T13:38:53","slug":"faqs","status":"publish","type":"page","link":"https:\/\/circularpass.io\/es\/faqs\/","title":{"rendered":"Preguntas frecuentes"},"content":{"rendered":"<div class=\"vce-row-container\" data-vce-boxed-width=\"true\"><div class=\"vce-row vce-row--col-gap-30 vce-row-equal-height vce-row-content--top\" id=\"el-424f1e7f\" data-vce-do-apply=\"all el-424f1e7f\"><div class=\"vce-row-content\" data-vce-element-content=\"true\"><div class=\"vce-col vce-col--md-auto vce-col--xs-1 vce-col--xs-last vce-col--xs-first vce-col--sm-last vce-col--sm-first vce-col--md-last vce-col--lg-last vce-col--xl-last vce-col--md-first vce-col--lg-first vce-col--xl-first\" id=\"el-0d6a668a\"><div class=\"vce-col-inner\" data-vce-do-apply=\"border margin background  el-0d6a668a\"><div class=\"vce-col-content\" data-vce-element-content=\"true\" data-vce-do-apply=\"padding el-0d6a668a\"><div class=\"vce-raw-html\"><div class=\"vce-raw-html-wrapper\" id=\"el-e479057a\" data-vce-do-apply=\"all el-e479057a\">\n<!-- ==========================================\n CIRCULARPASS - FREQUENTLY ASKED QUESTIONS\n FINAL ELEMENTOR VERSION\n NUNITO \/ GS1 SPACING \/ INTERACTIVE\n========================================== -->\n\n<div id=\"circularpass-faq\">\n\n<style>\n@import url('https:\/\/fonts.googleapis.com\/css2?family=Nunito:wght@300;400;500;600;700;800;900&display=swap');\n\n\/* ==========================================\n BASE\n========================================== *\/\n\n#circularpass-faq {\n  --purple: #7900ff;\n  --beige: #f5f2f0;\n  --dark: #191919;\n  --muted: #777277;\n\n  font-family: 'Nunito', sans-serif !important;\n  color: var(--dark);\n  background: #fff;\n\n  width: 100vw;\n  max-width: none;\n  margin-left: calc(50% - 50vw);\n  margin-right: calc(50% - 50vw);\n  overflow-x: clip;\n  box-sizing: border-box;\n}\n\n#circularpass-faq *,\n#circularpass-faq *::before,\n#circularpass-faq *::after {\n  box-sizing: border-box;\n  font-family: 'Nunito', sans-serif !important;\n}\n\n#circularpass-faq h1,\n#circularpass-faq h2,\n#circularpass-faq h3,\n#circularpass-faq p {\n  margin-top: 0;\n}\n\n#circularpass-faq button {\n  cursor: pointer;\n}\n\n\/* ==========================================\n CONTENT WIDTH - SAME AS GS1 RESOLVER\n========================================== *\/\n\n#circularpass-faq .faq-container {\n  width: 100%;\n  max-width: 1250px;\n  margin-left: auto;\n  margin-right: auto;\n  padding-left: 24px;\n  padding-right: 24px;\n}\n\n\/* ==========================================\n HERO\n========================================== *\/\n\n#circularpass-faq .faq-hero {\n  background: var(--beige);\n  padding: 60px 0;\n}\n\n#circularpass-faq .faq-hero-content {\n  max-width: 840px;\n}\n\n#circularpass-faq .faq-tag {\n  display: inline-flex;\n  align-items: center;\n  gap: 9px;\n\n  padding: 9px 16px;\n\n  border-radius: 30px;\n  background: #eee2ff;\n  border: 1px solid #e3d2ff;\n\n  color: var(--purple);\n  font-size: 12px;\n  font-weight: 700;\n}\n\n#circularpass-faq .faq-dot {\n  width: 7px;\n  height: 7px;\n  background: var(--purple);\n  border-radius: 50%;\n  flex-shrink: 0;\n}\n\n#circularpass-faq h1 {\n  font-size: clamp(36px, 3.5vw, 56px);\n  font-weight: 400;\n  letter-spacing: -1.5px;\n  line-height: 1.15;\n  color: #191919;\n  margin: 27px 0;\n}\n\n#circularpass-faq .faq-purple {\n  color: var(--purple);\n}\n\n#circularpass-faq .faq-hero p {\n  font-size: 14px;\n  font-weight: 400;\n  line-height: 1.85;\n  color: var(--muted);\n  max-width: 560px;\n  margin-bottom: 0;\n}\n\n\/* ==========================================\n SEARCH\n========================================== *\/\n\n#circularpass-faq .faq-search-box {\n  display: flex;\n  align-items: center;\n  gap: 14px;\n\n  max-width: 560px;\n  background: #fff;\n  border: 1px solid #ddd4e2;\n  border-radius: 12px;\n\n  padding: 6px 16px;\n  margin-top: 28px;\n\n  box-shadow: 0 10px 30px #00000005;\n  transition: border-color .2s, box-shadow .2s;\n}\n\n#circularpass-faq .faq-search-box:focus-within {\n  border-color: var(--purple);\n  box-shadow: 0 0 0 3px #7900ff10;\n}\n\n#circularpass-faq .faq-search-icon {\n  color: var(--purple);\n  font-size: 23px;\n  line-height: 1;\n  flex-shrink: 0;\n}\n\n#circularpass-faq .faq-search-input {\n  flex: 1;\n  width: 100%;\n  min-width: 0;\n\n  background: transparent;\n  border: none;\n  outline: none;\n  box-shadow: none;\n\n  padding: 12px 0;\n\n  font-size: 13px;\n  font-weight: 400;\n  color: #191919;\n}\n\n#circularpass-faq .faq-search-input:focus {\n  outline: none;\n  border: none;\n  box-shadow: none;\n}\n\n#circularpass-faq .faq-search-input::placeholder {\n  color: #aaa3a8;\n}\n\n#circularpass-faq .faq-search-hint {\n  color: #aaa;\n  font-size: 10px;\n  font-weight: 700;\n}\n\n\/* ==========================================\n MAIN FAQ SECTION\n========================================== *\/\n\n#circularpass-faq .faq-main {\n  background: #fff;\n  padding: 75px 0;\n}\n\n#circularpass-faq .faq-label {\n  color: var(--purple);\n  font-size: 11px;\n  font-weight: 800;\n  letter-spacing: 1.4px;\n}\n\n#circularpass-faq h2 {\n  font-size: clamp(27px, 2.5vw, 36px);\n  font-weight: 500;\n  line-height: 1.25;\n  letter-spacing: -1px;\n  color: #191919;\n  margin: 18px 0 28px;\n}\n\n#circularpass-faq .faq-description {\n  color: var(--muted);\n  font-size: 14px;\n  font-weight: 400;\n  line-height: 1.85;\n  max-width: 750px;\n  margin-bottom: 28px;\n}\n\n\/* ==========================================\n FILTERS\n========================================== *\/\n\n#circularpass-faq .faq-filters {\n  display: flex;\n  flex-wrap: wrap;\n  align-items: center;\n  gap: 9px;\n  margin: 30px 0;\n}\n\n#circularpass-faq .faq-filter {\n  display: inline-flex;\n  align-items: center;\n  justify-content: center;\n\n  background: #fff;\n  border: 1px solid #e2dce5;\n  color: #665d6b;\n  border-radius: 30px;\n\n  padding: 9px 15px;\n\n  font-size: 12px;\n  font-weight: 800;\n  line-height: 1.4;\n\n  transition: .2s ease;\n}\n\n#circularpass-faq .faq-filter:hover {\n  border-color: var(--purple);\n  color: var(--purple);\n}\n\n#circularpass-faq .faq-filter.active {\n  background: var(--purple);\n  border-color: var(--purple);\n  color: #fff;\n}\n\n#circularpass-faq .faq-filter:focus-visible,\n#circularpass-faq .faq-question:focus-visible,\n#circularpass-faq .faq-expand-all:focus-visible {\n  outline: 2px solid var(--purple);\n  outline-offset: 3px;\n}\n\n\/* ==========================================\n FAQ TOOLBAR\n========================================== *\/\n\n#circularpass-faq .faq-toolbar {\n  display: flex;\n  align-items: center;\n  justify-content: space-between;\n  gap: 12px;\n  margin: 28px 0 18px;\n}\n\n#circularpass-faq .faq-count {\n  color: #999;\n  font-size: 12px;\n}\n\n#circularpass-faq .faq-expand-all {\n  background: transparent;\n  border: none;\n  padding: 8px 0;\n\n  color: var(--purple);\n  font-size: 12px;\n  font-weight: 800;\n}\n\n#circularpass-faq .faq-expand-all:hover {\n  text-decoration: underline;\n}\n\n\/* ==========================================\n FAQ ACCORDION\n========================================== *\/\n\n#circularpass-faq .faq-grid {\n  display: grid;\n  grid-template-columns: 1fr;\n  gap: 11px;\n}\n\n#circularpass-faq .faq-item {\n  background: #fff;\n  border: 1px solid #e9e3e9;\n  border-radius: 15px;\n  overflow: hidden;\n\n  transition:\n    border-color .2s,\n    box-shadow .2s;\n}\n\n#circularpass-faq .faq-item:hover {\n  border-color: #d6c3e8;\n}\n\n#circularpass-faq .faq-item.open {\n  border-color: #dcc9ef;\n  box-shadow: 0 12px 30px #00000005;\n}\n\n#circularpass-faq .faq-question {\n  display: flex;\n  align-items: center;\n  gap: 16px;\n\n  width: 100%;\n  text-align: left;\n\n  padding: 20px 24px;\n\n  border: none;\n  background: transparent;\n  color: #191919;\n}\n\n#circularpass-faq .faq-number {\n  display: inline-flex;\n  align-items: center;\n  justify-content: center;\n\n  min-width: 31px;\n  height: 31px;\n\n  background: #f1e6ff;\n  color: var(--purple);\n\n  border-radius: 8px;\n\n  font-size: 11px;\n  font-weight: 800;\n  flex-shrink: 0;\n}\n\n#circularpass-faq .faq-question-text {\n  flex: 1;\n  min-width: 0;\n\n  color: #191919;\n  font-size: 14px;\n  font-weight: 800;\n  line-height: 1.5;\n}\n\n#circularpass-faq .faq-toggle-icon {\n  display: inline-flex;\n  align-items: center;\n  justify-content: center;\n\n  width: 25px;\n  height: 25px;\n\n  color: var(--purple);\n  font-size: 22px;\n  font-weight: 400;\n  flex-shrink: 0;\n}\n\n\/* ==========================================\n ANSWERS\n========================================== *\/\n\n#circularpass-faq .faq-answer {\n  display: none;\n\n  padding: 0 24px 24px 71px;\n\n  color: #6d686e;\n  font-size: 13px;\n  line-height: 1.85;\n}\n\n#circularpass-faq .faq-item.open .faq-answer {\n  display: block;\n}\n\n#circularpass-faq .faq-answer p {\n  margin: 0 0 15px;\n\n  color: #6d686e;\n  font-size: 13px;\n  font-weight: 400;\n  line-height: 1.85;\n}\n\n#circularpass-faq .faq-answer p:last-child {\n  margin-bottom: 0;\n}\n\n\/* STATUS LABEL *\/\n\n#circularpass-faq .faq-status {\n  display: inline-block;\n\n  background: #fff2d9;\n  color: #91651c;\n\n  padding: 6px 10px;\n  border-radius: 6px;\n\n  font-size: 10px;\n  font-weight: 800;\n  margin-bottom: 12px;\n}\n\n\/* EMPTY SEARCH RESULTS *\/\n\n#circularpass-faq .faq-empty {\n  text-align: center;\n  padding: 50px 20px;\n\n  background: var(--beige);\n  border-radius: 14px;\n\n  color: #888;\n  font-size: 14px;\n}\n\n\/* INFORMATION NOTE *\/\n\n#circularpass-faq .faq-results-note {\n  color: #928c92;\n  font-size: 11px;\n  line-height: 1.7;\n  margin-top: 25px;\n}\n\n\/* ==========================================\n FINAL CALL TO ACTION\n========================================== *\/\n\n#circularpass-faq .faq-cta {\n  background: #191919;\n  text-align: center;\n  padding: 75px 24px;\n}\n\n#circularpass-faq .faq-cta h2 {\n  color: #fff !important;\n  max-width: 800px;\n  margin: 20px auto;\n}\n\n#circularpass-faq .faq-cta p {\n  color: #b3b3b3;\n  font-size: 14px;\n  line-height: 1.85;\n  max-width: 650px;\n  margin: 0 auto 28px;\n}\n\n#circularpass-faq .faq-cta-button {\n  display: inline-block;\n\n  background: #d9ff64;\n  color: #191919 !important;\n\n  border-radius: 9px;\n  padding: 13px 22px;\n\n  text-decoration: none !important;\n\n  font-size: 13px;\n  font-weight: 800;\n\n  transition: background .2s;\n}\n\n#circularpass-faq .faq-cta-button:hover {\n  background: #c9ee4e;\n}\n\n\/* ==========================================\n RESPONSIVE\n========================================== *\/\n\n@media (max-width: 800px) {\n\n  #circularpass-faq .faq-hero {\n    padding: 55px 0;\n  }\n\n  #circularpass-faq .faq-main {\n    padding: 60px 0;\n  }\n\n  #circularpass-faq .faq-cta {\n    padding: 65px 20px;\n  }\n\n}\n\n@media (max-width: 480px) {\n\n  #circularpass-faq .faq-container {\n    padding-left: 20px;\n    padding-right: 20px;\n  }\n\n  #circularpass-faq h1 {\n    font-size: 36px;\n    letter-spacing: -1px;\n  }\n\n  #circularpass-faq h2 {\n    font-size: 27px;\n  }\n\n  #circularpass-faq .faq-search-box {\n    gap: 9px;\n    padding: 5px 12px;\n  }\n\n  #circularpass-faq .faq-search-input {\n    font-size: 12px;\n  }\n\n  #circularpass-faq .faq-filter {\n    font-size: 11px;\n    padding: 9px 12px;\n  }\n\n  #circularpass-faq .faq-question {\n    padding: 18px;\n    gap: 10px;\n  }\n\n  #circularpass-faq .faq-question-text {\n    font-size: 13px;\n  }\n\n  #circularpass-faq .faq-number {\n    min-width: 28px;\n    height: 28px;\n    font-size: 10px;\n  }\n\n  #circularpass-faq .faq-answer {\n    padding: 0 18px 25px;\n    font-size: 13px;\n  }\n\n  #circularpass-faq .faq-toggle-icon {\n    font-size: 20px;\n  }\n\n}\n\n@media (prefers-reduced-motion: reduce) {\n  #circularpass-faq * {\n    transition: none !important;\n  }\n}\n<\/style>\n\n<!-- ==========================================\n HERO\n========================================== -->\n\n<section class=\"faq-hero\">\n\n  <div class=\"faq-container\">\n\n    <div class=\"faq-hero-content\">\n\n      <div class=\"faq-tag\">\n        <span class=\"faq-dot\"><\/span>\n        Support &amp; Knowledge\n      <\/div>\n\n      <h1>\n        Frequently asked<br>\n        questions<span class=\"faq-purple\">.<\/span>\n      <\/h1>\n\n      <p>\n        Everything you need to know about CircularPass,\n        from Digital Product Passports and data ownership\n        to integrations, deployment and technology.\n      <\/p>\n\n      <!-- SEARCH -->\n\n      <div class=\"faq-search-box\">\n\n        <span class=\"faq-search-icon\" aria-hidden=\"true\">\n          \u2315\n        <\/span>\n\n        <input type=\"search\" class=\"faq-search-input\" id=\"cp-faq-search\" placeholder=\"Search questions, products or topics...\" aria-label=\"Search frequently asked questions\">\n\n        <span class=\"faq-search-hint\">FAQ<\/span>\n\n      <\/div>\n\n    <\/div>\n\n  <\/div>\n\n<\/section>\n\n<!-- ==========================================\n FAQ CONTENT\n========================================== -->\n\n<section class=\"faq-main\">\n\n  <div class=\"faq-container\">\n\n    <div class=\"faq-label\">\n      KNOWLEDGE BASE\n    <\/div>\n\n    <h2>\n      How can we help you?\n    <\/h2>\n\n    <p class=\"faq-description\">\n      Explore our frequently asked questions and discover\n      how CircularPass helps organisations manage product\n      data, integrations and Digital Product Passports.\n    <\/p>\n\n    <!-- CATEGORY FILTERS -->\n\n    <div class=\"faq-filters\" id=\"cp-faq-filters\">\n    <\/div>\n\n    <!-- TOOLBAR -->\n\n    <div class=\"faq-toolbar\">\n\n      <span class=\"faq-count\" id=\"cp-faq-count\">\n      <\/span>\n\n      <button class=\"faq-expand-all\" id=\"cp-faq-expand\" type=\"button\">\n        Expand all +\n      <\/button>\n\n    <\/div>\n\n    <!-- INTERACTIVE QUESTIONS -->\n\n    <div class=\"faq-grid\" id=\"cp-faq-list\">\n    <\/div>\n\n    <p class=\"faq-results-note\">\n      Information is based on the CircularPass FAQ reference.\n      Features and commercial conditions subject to confirmation\n      are identified within the relevant answers.\n    <\/p>\n\n  <\/div>\n\n<\/section>\n\n<!-- ==========================================\n FINAL CTA\n========================================== -->\n\n<section class=\"faq-cta\">\n\n  <div class=\"faq-label\" style=\"color:#b77aff\">\n    CIRCULARPASS SUPPORT\n  <\/div>\n\n  <h2>\n    Still have questions?\n  <\/h2>\n\n  <p>\n    Explore CircularPass and discover the solutions\n    available for your organisation.\n  <\/p>\n\n  <a href=\"https:\/\/circularpass.io\/\" class=\"faq-cta-button\" target=\"_blank\" rel=\"noopener noreferrer\">\n    Visit CircularPass \u2197\n  <\/a>\n\n<\/section>\n\n<!-- ==========================================\n FAQ DATA + INTERACTIVE JAVASCRIPT\n========================================== -->\n\n<script>\n(function () {\n\n  const root = document.getElementById(\"circularpass-faq\");\n\n  if (!root || root.dataset.ready === \"true\") {\n    return;\n  }\n\n  root.dataset.ready = \"true\";\n\n  const get = id => root.querySelector(\"#\" + id);\n\n  const searchInput = get(\"cp-faq-search\");\n  const filterContainer = get(\"cp-faq-filters\");\n  const faqList = get(\"cp-faq-list\");\n  const countElement = get(\"cp-faq-count\");\n  const expandButton = get(\"cp-faq-expand\");\n\n  \/* ==========================================\n     CATEGORIES\n  ========================================== *\/\n\n  const categories = [\n    \"All topics\",\n    \"Environmental impact\",\n    \"Deployment\",\n    \"Data & ownership\",\n    \"Integrations\",\n    \"DPP & traceability\",\n    \"Technology\",\n    \"Pricing\"\n  ];\n\n  \/* ==========================================\n     QUESTIONS AND ANSWERS\n  ========================================== *\/\n\n  const faqs = [\n\n    \/* ENVIRONMENTAL IMPACT *\/\n\n    {\n      category: \"Environmental impact\",\n\n      question:\n        \"Which databases, methodologies and standards does CircularPass use?\",\n\n      answer:\n        \"CircularPass supports waste management impact data derived primarily from IPCC sources. Each life-cycle assessment (LCA) process is identified and linked to its reference source. \" +\n        \"Operators can also incorporate their own process-specific impact values when these can be substantiated. \" +\n        \"In addition, CircularPass has an internal calculation engine based on the European PEF 3.1 methodology. \" +\n        \"Using this engine requires defining the relevant processes and elementary flows. Portnet is an example of its application.\"\n    },\n\n    {\n      category: \"Environmental impact\",\n\n      question:\n        \"Can CircularPass perform a complete environmental impact assessment?\",\n\n      answer:\n        \"CircularPass can incorporate environmental impact calculation results and associate them with a process, product or company. \" +\n        \"When a customer requires a complete impact assessment with documented justification of compliance with applicable standards, \" +\n        \"the study should be developed with EIG or another specialised partner.\"\n    },\n\n    \/* DEPLOYMENT *\/\n\n    {\n      category: \"Deployment\",\n\n      question:\n        \"What deployment options are available for CircularPass?\",\n\n      answer:\n        \"CircularPass offers three deployment models. \" +\n        \"Multi-tenant SaaS runs on shared infrastructure managed by BRI, with each organisation accessing its own data and functionalities through a subscription. \" +\n        \"A dedicated BRI-managed environment provides separate infrastructure and data storage, with licensing or subscription and associated maintenance costs. \" +\n        \"Customer-hosted deployment installs CircularPass on the customer's own infrastructure, with implementation services and technical operations managed by the customer or contracted to BRI.\"\n    },\n\n    {\n      category: \"Deployment\",\n\n      question:\n        \"How do the deployment models differ?\",\n\n      answer:\n        \"Multi-tenant SaaS uses shared infrastructure and logically separated customer data, with centralised maintenance and updates. \" +\n        \"BRI-managed dedicated hosting uses isolated infrastructure and customer-specific storage, with maintenance and updates managed according to the contracted service. \" +\n        \"Customer-hosted deployment places the application and data in the customer's infrastructure, with technical management and updates coordinated according to the agreement. \" +\n        \"Costs vary depending on infrastructure isolation, implementation, maintenance and support requirements.\"\n    },\n\n    \/* DATA AND OWNERSHIP *\/\n\n    {\n      category: \"Data & ownership\",\n\n      question:\n        \"Where is customer data stored, and is it separated by customer?\",\n\n      answer:\n        \"In the multi-tenant SaaS model, customer data is logically separated within shared infrastructure managed by BRI. \" +\n        \"Dedicated hosting and customer-hosted deployment use physically separated environments or storage for each customer. \" +\n        \"The hosting location and infrastructure arrangements depend on the selected deployment model.\"\n    },\n\n    {\n      category: \"Data & ownership\",\n\n      question:\n        \"Who owns the information stored in CircularPass?\",\n\n      answer:\n        \"Customers retain ownership of all data they upload or generate through CircularPass. \" +\n        \"This includes product, material, process and operational data, as well as documents, certificates and Digital Product Passports. \" +\n        \"Hosting and processing this information to provide the service does not transfer its ownership to CircularPass. \" +\n        \"CircularPass retains platform usage and operational data, such as functionality metrics, technical performance information and system logs, to manage, maintain and improve the service, subject to confidentiality and applicable data protection rules.\"\n    },\n\n    \/* INTEGRATIONS *\/\n\n    {\n      category: \"Integrations\",\n\n      question:\n        \"Does CircularPass provide an API for external system integrations?\",\n\n      answer:\n        \"Yes. CircularPass and WasteTrace provide REST API integration capabilities for connecting with existing enterprise systems. \" +\n        \"Custom integration services are also available to adapt data exchange to the technical and operational requirements of each organisation.\"\n    },\n\n    {\n      category: \"Integrations\",\n\n      question:\n        \"Can CircularPass connect to ERP, CRM and other corporate systems?\",\n\n      answer:\n        \"Custom connectors are developed using Apache Camel, an integration framework offering more than 300 connectors for systems and technologies such as ERP, CRM, SAP S\/4HANA, databases, data lakes, messaging platforms, web services and files. \" +\n        \"Each integration requires configuring access permissions, mapping data fields and defining the relevant transformation and synchronisation rules.\"\n    },\n\n    {\n      category: \"Integrations\",\n\n      question:\n        \"How are custom connectors hosted and maintained?\",\n\n      answer:\n        \"A custom connector requires a runtime environment and ongoing maintenance to ensure operational continuity. \" +\n        \"The integration can be hosted and maintained by BRI or deployed within the customer's infrastructure. \" +\n        \"Implementation, hosting and maintenance costs are defined in the project proposal based on the number of connected systems, data volume, synchronisation frequency and required service level.\"\n    },\n\n    {\n      category: \"Integrations\",\n\n      question:\n        \"Can CircularPass integrate with IoT devices and industrial equipment?\",\n\n      answer:\n        \"Yes. CircularPass and WasteTrace can be integrated with IoT devices, industrial equipment and monitoring platforms through custom integrations. \" +\n        \"The integration framework includes support for industrial communication protocols such as MQTT, MQTT 5 and OPC UA.\"\n    },\n\n    \/* DPP AND TRACEABILITY *\/\n\n    {\n      category: \"DPP & traceability\",\n\n      question:\n        \"How is information reviewed before publishing a Digital Product Passport?\",\n\n      answer:\n        \"Before publication, the Digital Product Passport is reviewed against the applicable regulatory requirements. \" +\n        \"The administration interface supporting this review process is under development.\"\n    },\n\n    {\n      category: \"DPP & traceability\",\n\n      question:\n        \"What happens when a published Digital Product Passport needs to be corrected?\",\n\n      answer:\n        \"Each modification generates a new version of the Digital Product Passport. \" +\n        \"The referenced ISO framework defines mechanisms for recording versions and demonstrating immutability through signatures. \" +\n        \"Traceability corrections are registered as new events linked to the original event. \" +\n        \"An optional blockchain mechanism can store proof of the generation and authorship of each DPP version or event, without storing the full information on the blockchain.\"\n    },\n\n    {\n      category: \"DPP & traceability\",\n\n      question:\n        \"Which identification schemes does CircularPass support?\",\n\n      answer:\n        \"CircularPass has implemented three identification approaches: did:web identifiers, GS1 identifiers and proprietary identifiers based on an ISO identification scheme. \" +\n        \"According to the reference document, did:web and proprietary ISO-based identifiers can be generated without an identifier-generation fee, while GS1 identifiers involve a cost. \" +\n        \"The exact ISO standard reference remains to be confirmed.\",\n\n      pending: true\n    },\n\n    {\n      category: \"DPP & traceability\",\n\n      question:\n        \"Can CircularPass generate QR codes and export DPPs as JSON?\",\n\n      answer:\n        \"The availability of QR-code generation and Digital Product Passport export in JSON has not yet been confirmed in the reference documentation. \" +\n        \"These capabilities should be verified before being presented as available product features.\",\n\n      pending: true\n    },\n\n    {\n      category: \"DPP & traceability\",\n\n      question:\n        \"How can companies identify missing DPP attributes?\",\n\n      answer:\n        \"CircularPass can provide an example Digital Product Passport data structure from the EasyTrack product demonstrations, including attributes defined under the Ecodesign for Sustainable Products Regulation (ESPR). \" +\n        \"Companies can compare these attributes with the information they already collect to identify missing fields and data requirements.\"\n    },\n\n    \/* TECHNOLOGY *\/\n\n    {\n      category: \"Technology\",\n\n      question:\n        \"What technology architecture does CircularPass use?\",\n\n      answer:\n        \"The documented architecture includes Microsoft Azure for cloud infrastructure, an API Gateway as the entry point, Apache Kafka for asynchronous communication and event management, and Docker-based microservices orchestrated through Azure Kubernetes Service (AKS). \" +\n        \"Data storage includes MongoDB Atlas for NoSQL information and Azure Database for PostgreSQL for relational data. \" +\n        \"Redis is used for caching.\"\n    },\n\n    {\n      category: \"Technology\",\n\n      question:\n        \"What development and quality controls are used?\",\n\n      answer:\n        \"The documented continuous integration and deployment process includes dependency controls, code analysis, pull request validation, AI-assisted review and SonarQube quality gates. \" +\n        \"The reference also lists infrastructure assessment results against several security and compliance frameworks, but their dates, scope and measurement criteria require confirmation. \" +\n        \"Those results should not be interpreted as independently verified certifications.\",\n\n      pending: true\n    },\n\n    \/* PRICING *\/\n\n    {\n      category: \"Pricing\",\n\n      question:\n        \"How is CircularPass commercially licensed?\",\n\n      answer:\n        \"The commercial model depends on the deployment option. \" +\n        \"Multi-tenant SaaS is subscription-based, potentially according to the organisation, enabled modules or usage volume. \" +\n        \"Dedicated BRI-managed hosting combines licensing or subscription with infrastructure and maintenance costs. \" +\n        \"Customer-hosted deployment includes licensing or subscription and implementation services, with optional support and maintenance.\"\n    },\n\n    {\n      category: \"Pricing\",\n\n      question:\n        \"What are the indicative costs of an EasyTrack implementation?\",\n\n      answer:\n        \"The reference document provides an indicative initial phase cost of \u20ac5,000 for a single product or a simple product line, with an estimated duration of approximately four months. \" +\n        \"A full implementation is indicatively priced at \u20ac20,000\u2013\u20ac40,000 plus a monthly subscription, depending on complexity. \" +\n        \"These amounts are preliminary and subject to a formal commercial proposal. \" +\n        \"The basis of the initial phase price and possible adjustments when structured data is already available remain to be confirmed.\",\n\n      pending: true\n    }\n\n  ];\n\n  \/* ==========================================\n     INTERACTION STATE\n  ========================================== *\/\n\n  let currentCategory = \"All topics\";\n  let searchTerm = \"\";\n  const expanded = new Set();\n\n  \/* ==========================================\n     FILTER QUESTIONS\n  ========================================== *\/\n\n  function getFiltered() {\n\n    return faqs\n      .map((faq, index) => ({ faq, index }))\n      .filter(({ faq }) => {\n\n        const matchesCategory =\n          currentCategory === \"All topics\" ||\n          faq.category === currentCategory;\n\n        const content = (\n          faq.question + \" \" +\n          faq.answer + \" \" +\n          faq.category\n        ).toLowerCase();\n\n        return matchesCategory &&\n          content.includes(searchTerm);\n\n      });\n\n  }\n\n  \/* ==========================================\n     RENDER FILTERS\n  ========================================== *\/\n\n  function renderFilters() {\n\n    filterContainer.replaceChildren();\n\n    categories.forEach(category => {\n\n      const button = document.createElement(\"button\");\n      button.type = \"button\";\n\n      button.className =\n        \"faq-filter\" +\n        (category === currentCategory ? \" active\" : \"\");\n\n      button.textContent = category;\n\n      button.setAttribute(\n        \"aria-pressed\",\n        String(category === currentCategory)\n      );\n\n      button.addEventListener(\"click\", () => {\n\n        currentCategory = category;\n        expanded.clear();\n        render();\n\n      });\n\n      filterContainer.appendChild(button);\n\n    });\n\n  }\n\n  \/* ==========================================\n     RENDER FAQ ACCORDION\n  ========================================== *\/\n\n  function renderItems() {\n\n    const filtered = getFiltered();\n\n    faqList.replaceChildren();\n\n    countElement.textContent =\n      filtered.length +\n      (filtered.length === 1\n        ? \" question\"\n        : \" questions\");\n\n    \/* EMPTY RESULTS *\/\n\n    if (!filtered.length) {\n\n      const empty = document.createElement(\"div\");\n\n      empty.className = \"faq-empty\";\n\n      empty.textContent =\n        \"No matching questions. Try another search or category.\";\n\n      faqList.appendChild(empty);\n\n    }\n\n    \/* FAQ ITEMS *\/\n\n    filtered.forEach(({ faq, index }) => {\n\n      const isOpen = expanded.has(index);\n\n      const item = document.createElement(\"article\");\n\n      item.className =\n        \"faq-item\" + (isOpen ? \" open\" : \"\");\n\n      \/* QUESTION BUTTON *\/\n\n      const question = document.createElement(\"button\");\n\n      question.type = \"button\";\n      question.className = \"faq-question\";\n\n      question.setAttribute(\n        \"aria-expanded\",\n        String(isOpen)\n      );\n\n      const answerId = \"cp-faq-answer-\" + index;\n\n      question.setAttribute(\n        \"aria-controls\",\n        answerId\n      );\n\n      \/* QUESTION NUMBER *\/\n\n      const number = document.createElement(\"span\");\n\n      number.className = \"faq-number\";\n\n      number.textContent =\n        String(index + 1).padStart(2, \"0\");\n\n      \/* QUESTION TEXT *\/\n\n      const title = document.createElement(\"span\");\n\n      title.className = \"faq-question-text\";\n      title.textContent = faq.question;\n\n      \/* PLUS \/ MINUS ICON *\/\n\n      const icon = document.createElement(\"span\");\n\n      icon.className = \"faq-toggle-icon\";\n\n      icon.textContent = isOpen ? \"\u2212\" : \"+\";\n\n      icon.setAttribute(\n        \"aria-hidden\",\n        \"true\"\n      );\n\n      question.append(number, title, icon);\n\n      \/* ANSWER *\/\n\n      const answer = document.createElement(\"div\");\n\n      answer.className = \"faq-answer\";\n      answer.id = answerId;\n\n      if (faq.pending) {\n\n        const status = document.createElement(\"span\");\n\n        status.className = \"faq-status\";\n\n        status.textContent = \"Confirmation required\";\n\n        answer.appendChild(status);\n\n      }\n\n      const paragraph = document.createElement(\"p\");\n\n      paragraph.textContent = faq.answer;\n\n      answer.appendChild(paragraph);\n\n      \/* ACCORDION CLICK *\/\n\n      question.addEventListener(\"click\", () => {\n\n        if (expanded.has(index)) {\n          expanded.delete(index);\n        } else {\n          expanded.add(index);\n        }\n\n        renderItems();\n\n        const updatedQuestion = faqList.querySelector(\n          '[aria-controls=\"' + answerId + '\"]'\n        );\n\n        if (updatedQuestion) {\n          updatedQuestion.focus({ preventScroll: true });\n        }\n\n      });\n\n      item.append(question, answer);\n\n      faqList.appendChild(item);\n\n    });\n\n    \/* EXPAND ALL BUTTON STATE *\/\n\n    const allOpen = filtered.length > 0 &&\n      filtered.every(({ index }) => expanded.has(index));\n\n    expandButton.textContent = allOpen\n      ? \"Collapse all \u2212\"\n      : \"Expand all +\";\n\n  }\n\n  \/* ==========================================\n     RENDER PAGE\n  ========================================== *\/\n\n  function render() {\n    renderFilters();\n    renderItems();\n  }\n\n  \/* ==========================================\n     LIVE SEARCH\n  ========================================== *\/\n\n  searchInput.addEventListener(\"input\", function () {\n\n    searchTerm = this.value.toLowerCase().trim();\n\n    renderItems();\n\n  });\n\n  \/* ==========================================\n     EXPAND \/ COLLAPSE ALL\n  ========================================== *\/\n\n  expandButton.addEventListener(\"click\", function () {\n\n    const filtered = getFiltered();\n\n    const allOpen = filtered.length > 0 &&\n      filtered.every(({ index }) => expanded.has(index));\n\n    filtered.forEach(({ index }) => {\n\n      if (allOpen) {\n        expanded.delete(index);\n      } else {\n        expanded.add(index);\n      }\n\n    });\n\n    renderItems();\n\n  });\n\n  \/* INITIALISE *\/\n\n  render();\n\n})();\n<\/script>\n\n<\/div>\n\n<!-- END CIRCULARPASS FAQ PAGE -->\n<\/div><\/div><\/div><\/div><\/div><\/div><\/div><\/div>\n","protected":false},"excerpt":{"rendered":"<p>Support &amp; Knowledge Frequently asked questions. Everything you need to know about CircularPass, from Digital Product Passports and data ownership to integrations, deployment and technology. \u2315 FAQ KNOWLEDGE BASE How can we help you? Explore our frequently asked questions and discover how CircularPass helps organisations manage product data, integrations and Digital Product Passports. Expand all [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-3174","page","type-page","status-publish","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.8 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>FAQs - CircularPass<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/circularpass.io\/es\/faqs\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"FAQs - CircularPass\" \/>\n<meta property=\"og:description\" content=\"Support &amp; Knowledge Frequently asked questions. Everything you need to know about CircularPass, from Digital Product Passports and data ownership to integrations, deployment and technology. \u2315 FAQ KNOWLEDGE BASE How can we help you? Explore our frequently asked questions and discover how CircularPass helps organisations manage product data, integrations and Digital Product Passports. Expand all [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/circularpass.io\/es\/faqs\/\" \/>\n<meta property=\"og:site_name\" content=\"CircularPass\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/BlueRoomInnovation\/\" \/>\n<meta property=\"article:modified_time\" content=\"2026-11-12T13:38:53+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data1\" content=\"1 minuto\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/circularpass.io\\\/faqs\\\/\",\"url\":\"https:\\\/\\\/circularpass.io\\\/faqs\\\/\",\"name\":\"FAQs - CircularPass\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/circularpass.io\\\/#website\"},\"datePublished\":\"2026-11-11T13:07:21+00:00\",\"dateModified\":\"2026-11-12T13:38:53+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/circularpass.io\\\/faqs\\\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/circularpass.io\\\/faqs\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/circularpass.io\\\/faqs\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Portada\",\"item\":\"https:\\\/\\\/circularpass.io\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"FAQs\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/circularpass.io\\\/#website\",\"url\":\"https:\\\/\\\/circularpass.io\\\/\",\"name\":\"CircularPass\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/circularpass.io\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/circularpass.io\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/circularpass.io\\\/#organization\",\"name\":\"CircularPass\",\"url\":\"https:\\\/\\\/circularpass.io\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/circularpass.io\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.circularpass.io\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/circularpass_logo-e1782977218819.webp\",\"contentUrl\":\"https:\\\/\\\/www.circularpass.io\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/circularpass_logo-e1782977218819.webp\",\"width\":2000,\"height\":840,\"caption\":\"CircularPass\"},\"image\":{\"@id\":\"https:\\\/\\\/circularpass.io\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/BlueRoomInnovation\\\/\",\"https:\\\/\\\/www.linkedin.com\\\/company\\\/blue-room-innovation\\\/mycompany\\\/\",\"https:\\\/\\\/www.instagram.com\\\/blueroominnovation\\\/\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"FAQs - CircularPass","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/circularpass.io\/es\/faqs\/","og_locale":"es_ES","og_type":"article","og_title":"FAQs - CircularPass","og_description":"Support &amp; Knowledge Frequently asked questions. Everything you need to know about CircularPass, from Digital Product Passports and data ownership to integrations, deployment and technology. \u2315 FAQ KNOWLEDGE BASE How can we help you? Explore our frequently asked questions and discover how CircularPass helps organisations manage product data, integrations and Digital Product Passports. Expand all [&hellip;]","og_url":"https:\/\/circularpass.io\/es\/faqs\/","og_site_name":"CircularPass","article_publisher":"https:\/\/www.facebook.com\/BlueRoomInnovation\/","article_modified_time":"2026-11-12T13:38:53+00:00","twitter_card":"summary_large_image","twitter_misc":{"Tiempo de lectura":"1 minuto"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/circularpass.io\/faqs\/","url":"https:\/\/circularpass.io\/faqs\/","name":"FAQs - CircularPass","isPartOf":{"@id":"https:\/\/circularpass.io\/#website"},"datePublished":"2026-11-11T13:07:21+00:00","dateModified":"2026-11-12T13:38:53+00:00","breadcrumb":{"@id":"https:\/\/circularpass.io\/faqs\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/circularpass.io\/faqs\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/circularpass.io\/faqs\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Portada","item":"https:\/\/circularpass.io\/"},{"@type":"ListItem","position":2,"name":"FAQs"}]},{"@type":"WebSite","@id":"https:\/\/circularpass.io\/#website","url":"https:\/\/circularpass.io\/","name":"CircularPass","description":"","publisher":{"@id":"https:\/\/circularpass.io\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/circularpass.io\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Organization","@id":"https:\/\/circularpass.io\/#organization","name":"CircularPass","url":"https:\/\/circularpass.io\/","logo":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/circularpass.io\/#\/schema\/logo\/image\/","url":"https:\/\/www.circularpass.io\/wp-content\/uploads\/2026\/07\/circularpass_logo-e1782977218819.webp","contentUrl":"https:\/\/www.circularpass.io\/wp-content\/uploads\/2026\/07\/circularpass_logo-e1782977218819.webp","width":2000,"height":840,"caption":"CircularPass"},"image":{"@id":"https:\/\/circularpass.io\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/BlueRoomInnovation\/","https:\/\/www.linkedin.com\/company\/blue-room-innovation\/mycompany\/","https:\/\/www.instagram.com\/blueroominnovation\/"]}]}},"_links":{"self":[{"href":"https:\/\/circularpass.io\/es\/wp-json\/wp\/v2\/pages\/3174","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/circularpass.io\/es\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/circularpass.io\/es\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/circularpass.io\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/circularpass.io\/es\/wp-json\/wp\/v2\/comments?post=3174"}],"version-history":[{"count":5,"href":"https:\/\/circularpass.io\/es\/wp-json\/wp\/v2\/pages\/3174\/revisions"}],"predecessor-version":[{"id":3185,"href":"https:\/\/circularpass.io\/es\/wp-json\/wp\/v2\/pages\/3174\/revisions\/3185"}],"wp:attachment":[{"href":"https:\/\/circularpass.io\/es\/wp-json\/wp\/v2\/media?parent=3174"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}