Saltar al contenido
RGPD + LOPDGDD · Versión para España (UE)

Política de privacidad

En ChocoMaestro respetamos tu privacidad y tratamos los datos personales con transparencia, medidas de seguridad y cumplimiento del Reglamento (UE) 2016/679 (RGPD) y la Ley Orgánica 3/2018 (LOPDGDD).

Ver índice
Última revisión:

Control y derechos

Acceso, rectificación, supresión, oposición, limitación, portabilidad y retirada del consentimiento.

Conservación

Plazos definidos por finalidad, obligación legal y criterios de minimización.

1. Responsable del tratamiento

Identidad

ChocoMaestro (marca comercial). A efectos informativos de esta web, actuamos como responsable del tratamiento de los datos que nos facilitas a través de formularios, comunicaciones y preferencias de cookies.

Contacto

Si utilizamos un Delegado de Protección de Datos (DPO) para determinados tratamientos, lo indicaremos en comunicaciones específicas. En todo caso, puedes ejercer tus derechos por los canales anteriores.

2. Datos personales que tratamos

Tratamos únicamente los datos adecuados, pertinentes y limitados a lo necesario para las finalidades descritas:

Datos identificativos y de contacto

  • Nombre y apellidos (si lo proporcionas)
  • Email
  • Teléfono (si lo proporcionas)

Datos de uso y técnicos

  • Preferencias de cookies y consentimiento
  • Identificadores técnicos (p. ej., ID de sesión local)
  • Información del dispositivo/navegador (de forma agregada si aplica)

Contenido de comunicaciones

  • Mensajes que nos envías mediante formularios
  • Información incluida voluntariamente en tu solicitud

Datos sensibles

No solicitamos categorías especiales de datos (salud, ideología, etc.). Por favor, no los incluyas en formularios. Si los recibimos, aplicaremos medidas de minimización y supresión cuando proceda.

3. Finalidades del tratamiento y bases jurídicas

A continuación se describen las finalidades y sus respectivas bases de legitimación (art. 6 RGPD). En determinados casos, podremos requerir información adicional para verificar identidad cuando sea necesario para proteger datos personales.

Atender solicitudes

Formulario / email

Responder consultas, ejercer derechos, gestionar incidencias y solicitudes relacionadas con privacidad o con nuestros servicios.

Base jurídica: consentimiento (art. 6.1.a) y/o interés legítimo (art. 6.1.f) en la gestión de comunicaciones.

Gestión de consentimientos

Cookies / preferencias

Registrar y mantener tu elección respecto a cookies no necesarias y funcionalidades relacionadas (analítica/marketing), así como la visualización del aviso.

Base jurídica: consentimiento (art. 6.1.a) y cumplimiento normativo (art. 6.1.c) para evidenciar la opción.

Cumplimiento legal

Obligaciones aplicables

Atender requerimientos de autoridades competentes, obligaciones en materia de protección de datos y seguridad de la información cuando proceda.

Base jurídica: obligación legal (art. 6.1.c).

Principio de minimización

Los campos marcados como obligatorios se limitan a lo imprescindible. Si no facilitas ciertos datos, puede que no podamos atender la solicitud.

4. Plazos de conservación

Conservamos los datos únicamente durante el tiempo necesario para cumplir la finalidad para la que se recabaron y, en su caso, durante los plazos exigidos por ley o para el ejercicio/defensa de reclamaciones.

Solicitudes y consultas

Hasta la resolución de la solicitud y durante un plazo adicional razonable (normalmente hasta 12 meses) para seguimiento, salvo que exista obligación legal o litigio.

Evidencias de consentimiento

Mientras sea necesario para demostrar el consentimiento otorgado y gestionar preferencias, o hasta su retirada, aplicando criterios de minimización.

5. Destinatarios, encargados y acceso a datos

No vendemos tus datos. Podrán tener acceso a datos personales los siguientes destinatarios, cuando resulte necesario:

Proveedores (encargados del tratamiento)

Proveedores tecnológicos que prestan servicios de alojamiento, mantenimiento, seguridad o soporte, actuando bajo contrato con instrucciones y medidas de seguridad adecuadas.

Autoridades competentes

Administraciones públicas, jueces y tribunales, fuerzas y cuerpos de seguridad, cuando exista una obligación legal o requerimiento válido.

6. Transferencias internacionales

Con carácter general, procuramos que los datos se traten dentro del Espacio Económico Europeo (EEE). Si fuera necesario transferir datos fuera del EEE (por ejemplo, por el uso de determinados proveedores), aplicaremos garantías adecuadas, como:

  • Decisiones de adecuación de la Comisión Europea.
  • Cláusulas Contractuales Tipo (SCC) y evaluaciones de impacto cuando proceda.
  • Medidas técnicas y organizativas adicionales (cifrado, minimización, control de acceso).

7. Derechos y cómo ejercerlos

Puedes ejercer los derechos de acceso, rectificación, supresión, oposición, limitación del tratamiento, portabilidad y a no ser objeto de decisiones automatizadas, así como retirar tu consentimiento en cualquier momento (sin afectar a la licitud previa).

Canales

Puedes escribirnos a [email protected] o usar el formulario de esta página.

Plazos de respuesta

Responderemos sin dilación indebida y, en todo caso, en el plazo máximo de un mes desde la recepción. Este plazo puede ampliarse dos meses más en casos complejos, informándote oportunamente.

Verificación de identidad

Para evitar accesos no autorizados, podremos solicitar información adicional razonable para verificar tu identidad (por ejemplo, confirmación desde el mismo email usado en la solicitud).

8. Medidas de seguridad

Aplicamos medidas técnicas y organizativas para proteger los datos contra pérdida, acceso no autorizado, alteración o divulgación. Entre otras:

Control de acceso

Principio de mínimo privilegio y registro de accesos cuando procede.

Cifrado

Medidas de cifrado en tránsito cuando es aplicable (p. ej. HTTPS).

Retención

Políticas de conservación y supresión segura.

9. Cookies y tecnologías similares

Utilizamos cookies necesarias para el funcionamiento del sitio y, previa aceptación, cookies analíticas y/o de marketing. En cualquier momento puedes revisar o cambiar tus preferencias.

Necesarias (siempre activas)

Permiten funciones básicas como guardar la selección de tema y el estado del banner de cookies.

Analítica y marketing (opcionales)

Nos ayudan a entender el uso y mejorar la experiencia. Solo se activan con tu consentimiento.

10. Menores

Nuestros servicios y formularios no están dirigidos a menores de 14 años. Si eres madre/padre o tutor y crees que un menor nos ha proporcionado datos, contacta con nosotros para su supresión.

11. Cambios en la política

Podremos actualizar esta política cuando sea necesario por cambios legales, técnicos u organizativos. Publicaremos la versión vigente en esta página indicando la fecha de revisión.

12. Reclamaciones ante la autoridad de control

Si consideras que el tratamiento de tus datos no se ajusta a la normativa, puedes presentar una reclamación ante la Agencia Española de Protección de Datos (AEPD) u otra autoridad competente de tu país de residencia en la UE.

Recomendación

Te sugerimos que antes nos contactes para intentar resolver cualquier cuestión de forma ágil y transparente.

'; mount.prepend(wrap.firstChild); } const themeBtn = v4m9n('themeToggleBtn'); if(themeBtn) themeBtn.addEventListener('click', k7n2h); }).catch(()=>{ mount.innerHTML = '

Iniciar sesión

Acceso seguro. Si necesitas ayuda, llama al +34 911 835 602.

Crear cuenta

Restablecer contraseña

'; const themeBtn = v4m9n('themeToggleBtn'); if(themeBtn) themeBtn.addEventListener('click', k7n2h); }); } function s3y7q(){ const mount = v4m9n('appFooterMount'); if(!mount) return; fetch('./footer.html', {cache:'no-store'}).then(r=>r.text()).then(html=>{ mount.innerHTML = html; const footer = u8f3q('footer', mount); if(!footer){ const wrap = document.createElement('div'); wrap.innerHTML = ''; mount.appendChild(wrap.firstChild); } }).catch(()=>{ mount.innerHTML = ''; }); } function v2o5e(){ const y = u8f3q('#yearNow'); if(y) y.textContent = String(new Date().getFullYear()); } function a0m7j(){ const openPrefs = v4m9n('openCookiePrefsBtn'); const openPrefs2 = v4m9n('openCookiePrefsBtn2'); const withdraw = v4m9n('withdrawConsentBtn'); if(openPrefs) openPrefs.addEventListener('click', c4n7p); if(openPrefs2) openPrefs2.addEventListener('click', c4n7p); if(withdraw) withdraw.addEventListener('click', ()=>{ l8e2v(); }); const bannerClose = v4m9n('cookieBannerCloseX'); if(bannerClose) bannerClose.addEventListener('click', ()=>{ const b=v4m9n('cookieBanner'); if(b) b.classList.add('hidden'); }); const acceptAll = v4m9n('cookieAcceptAllBtn'); const reject = v4m9n('cookieRejectBtn'); const configure = v4m9n('cookieConfigureBtn'); if(acceptAll) acceptAll.addEventListener('click', h6s4n); if(reject) reject.addEventListener('click', w8q3l); if(configure) configure.addEventListener('click', c4n7p); const prefsClose = v4m9n('cookiePrefsCloseX'); if(prefsClose) prefsClose.addEventListener('click', i2z9q); const save = v4m9n('cookieSaveBtn'); const acc2 = v4m9n('cookieAcceptAllBtn2'); const rej2 = v4m9n('cookieRejectBtn2'); if(save) save.addEventListener('click', ()=>{ const a = v4m9n('toggleAnalytics').checked; const m = v4m9n('toggleMarketing').checked; q0r3a({analytics:a, marketing:m}); i2z9q(); }); if(acc2) acc2.addEventListener('click', ()=>{ h6s4n(); i2z9q(); }); if(rej2) rej2.addEventListener('click', ()=>{ w8q3l(); i2z9q(); }); } function p7h2c(){ const btn = v4m9n('scrollTopBtn'); if(btn) btn.addEventListener('click', ()=>window.scrollTo({top:0, behavior:'smooth'})); const pr = v4m9n('printBtn'); if(pr) pr.addEventListener('click', ()=>window.print()); } function e7w1k(){ const open = v4m9n('openDsrBtn'); const open2 = v4m9n('openDsrBtn2'); if(open) open.addEventListener('click', t6p1d); if(open2) open2.addEventListener('click', t6p1d); const closeX = v4m9n('dsrCloseX'); const cancel = v4m9n('dsrCancelBtn'); const closeAfter = v4m9n('dsrCloseAfterBtn'); if(closeX) closeX.addEventListener('click', f1k8x); if(cancel) cancel.addEventListener('click', f1k8x); if(closeAfter) closeAfter.addEventListener('click', f1k8x); const details = v4m9n('dsrDetails'); const count = v4m9n('detailsCount'); if(details && count){ const update = ()=>{ const v = details.value.slice(0,600); if(details.value!==v) details.value=v; count.textContent = String(v.length); }; details.addEventListener('input', update); update(); } const form = v4m9n('dsrForm'); if(form){ form.addEventListener('submit', (e)=>{ e.preventDefault(); const name = z7a4p(v4m9n('dsrName').value); const email = z7a4p(v4m9n('dsrEmail').value); const phone = z7a4p(v4m9n('dsrPhone').value); const type = z7a4p(v4m9n('dsrType').value); const det = z7a4p(v4m9n('dsrDetails').value); const consent = v4m9n('dsrConsent').checked; const okName = name.length===0 ? true : name.length>=2; const okEmail = y5l0m(email); const okPhone = k1j6c(phone); const okType = type.length>0; const okDet = det.length>=20; const okConsent = !!consent; v4m9n('errName').classList.toggle('hidden', okName); v4m9n('errEmail').classList.toggle('hidden', okEmail); v4m9n('errPhone').classList.toggle('hidden', okPhone); v4m9n('errType').classList.toggle('hidden', okType); v4m9n('errDetails').classList.toggle('hidden', okDet); v4m9n('errConsent').classList.toggle('hidden', okConsent); const allOk = okName && okEmail && okPhone && okType && okDet && okConsent; if(!allOk){ const firstErr = y2k0c('#errName,#errEmail,#errPhone,#errType,#errDetails,#errConsent').find(el=>!el.classList.contains('hidden')); if(firstErr){ const map = { errName: 'dsrName', errEmail: 'dsrEmail', errPhone: 'dsrPhone', errType: 'dsrType', errDetails: 'dsrDetails', errConsent: 'dsrConsent' }; const targetId = map[firstErr.id]; const t = v4m9n(targetId); if(t && t.focus) t.focus(); } return; } const typeMap = { acceso: 'Acceso (art. 15 RGPD)', rectificacion: 'Rectificación (art. 16 RGPD)', supresion: 'Supresión / Derecho al olvido (art. 17 RGPD)', oposicion: 'Oposición (art. 21 RGPD)', limitacion: 'Limitación (art. 18 RGPD)', portabilidad: 'Portabilidad (art. 20 RGPD)', retirar: 'Retirada del consentimiento (art. 7.3 RGPD)' }; const consentNow = p3t6k(); const consentLine = consentNow ? `Preferencias cookies (local): Analítica=${consentNow.analytics?'ON':'OFF'}, Marketing=${consentNow.marketing?'ON':'OFF'}, Fecha=${consentNow.date}` : 'Preferencias cookies (local): sin registro.'; const subject = encodeURIComponent('Solicitud RGPD (DSR) - ' + (typeMap[type] || type)); const body = encodeURIComponent( `Hola,\n\n` + `Quiero ejercer el derecho: ${typeMap[type] || type}.\n\n` + `Datos de contacto:\n` + `- Nombre: ${name || '(no indicado)'}\n` + `- Email: ${email}\n` + `- Teléfono: ${phone || '(no indicado)'}\n\n` + `Detalle de la solicitud:\n${det}\n\n` + `Información adicional:\n` + `- ${consentLine}\n` + `- Página: privacy.html\n` + `- Fecha: ${new Date().toISOString()}\n\n` + `Gracias.` ); const mailto = `mailto:[email protected]?subject=${subject}&body=${body}`; const link = v4m9n('dsrMailto'); link.setAttribute('href', mailto); v4m9n('dsrResult').classList.remove('hidden'); v4m9n('dsrSubmitBtn').disabled = true; setTimeout(()=>{ link.focus(); }, 50); }); } } function k9e1s(){ const open = v4m9n('openSummaryBtn'); if(open) open.addEventListener('click', u0d4h); const closeX = v4m9n('summaryCloseX'); const ok = v4m9n('summaryOk'); const go = v4m9n('summaryGoDsr'); if(closeX) closeX.addEventListener('click', n9s2w); if(ok) ok.addEventListener('click', n9s2w); if(go) go.addEventListener('click', ()=>{ n9s2w(); b9d2s(80).then(t6p1d); }); } function init(){ x3t9o(); s3y7q(); e3q8t(); g1x6r(); v2o5e(); b2v8a(); d0h5j(); window.addEventListener('scroll', d0h5j, {passive:true}); window.addEventListener('resize', d0h5j, {passive:true}); const themeBtn = v4m9n('themeToggleBtn'); if(themeBtn) themeBtn.addEventListener('click', k7n2h); a0m7j(); p7h2c(); e7w1k(); k9e1s(); a6v9z(); r2j8d(); } if(document.readyState==='loading') document.addEventListener('DOMContentLoaded', init); else init(); })();