Última actualización: 29 de septiembre de 2026
1. Responsable del tratamiento
| Campo | Valor |
|---|---|
| Identificación | CatDevs (equipo de dos desarrolladores independientes) |
| CIF/NIF | Sin entidad jurídica formalizada a la fecha de esta política |
| Email de contacto | catdevsstudio@gmail.com |
| Delegado de Protección de Datos (DPD) | No requerido — Art. 37 RGPD (tratamiento no sistemático ni a gran escala) |
Nota: CatDevs está en proceso de constitución como entidad jurídica formal. Esta información se actualizará una vez completado dicho proceso.
2. ¿Qué es esta aplicación?
Mattress es una aplicación web que permite a los usuarios gestionar el mantenimiento de sus colchones: registrar rotaciones y giros, configurar recordatorios periódicos y compartir el seguimiento con otros miembros del hogar.
3. Datos que recogemos y para qué los usamos
3.1 Datos de cuenta (registro e inicio de sesión)
Datos: Dirección de correo electrónico, nombre de visualización (opcional), método de autenticación (email/contraseña, Google o Apple).
Finalidad: Crear y gestionar la cuenta del usuario, verificar su identidad en cada acceso y permitir que otros usuarios le inviten al compartir un hogar.
Base jurídica: Ejecución de un contrato — Art. 6.1.b RGPD (la cuenta es necesaria para usar el servicio).
Plazo de conservación: Los datos de cuenta se conservan mientras la cuenta esté activa. Si el usuario solicita la eliminación de su cuenta, los datos se eliminan de nuestra base de datos de forma inmediata y síncrona, sin plazo de espera, y se solicita en el mismo proceso la revocación de la cuenta de Firebase Authentication asociada.
3.2 Datos de uso de la aplicación
Datos: Nombres de hogar y cama (definidos por el usuario), tipo de colchón, fechas de rotaciones/giros realizados y programados.
Finalidad: Prestar el servicio principal de seguimiento de mantenimiento.
Base jurídica: Ejecución de un contrato — Art. 6.1.b RGPD.
Plazo de conservación: Vinculados a la cuenta. Se eliminan cuando el usuario borra el recurso correspondiente o solicita la eliminación de la cuenta.
3.3 Datos de seguridad y técnicos
Datos: Dirección IP del dispositivo (procesada en memoria para prevenir abusos técnicos mediante rate limiting), marca de tiempo del último acceso, tokens de autenticación temporales (JWT emitidos por Firebase, transmitidos en cada petición pero no almacenados en nuestra base de datos) y registros internos de auditoría de las acciones del panel de administración.
Finalidad: Seguridad del servicio, prevención de ataques automatizados y gestión de sesiones.
Base jurídica: Interés legítimo — Art. 6.1.f RGPD (seguridad del servicio y protección de los usuarios).
Plazo de conservación: Las IPs procesadas para rate limiting no se persisten; solo existen en memoria durante la sesión del servidor. Las marcas de tiempo de último acceso se conservan en la cuenta del usuario. Los registros de auditoría del panel de administración se conservan un máximo de 2 años, tras los cuales se eliminan automáticamente.
3.4 Preferencias de la aplicación
Datos: Preferencia de idioma (cookie mattress_locale), preferencia de tema visual (mattress-theme-mode en localStorage).
Finalidad: Recordar las preferencias del usuario entre sesiones para mejorar la experiencia de uso.
Base jurídica: Interés legítimo — Art. 6.1.f RGPD / exención técnica bajo Art. 5.3 Directiva ePrivacy.
Plazo de conservación: La cookie de idioma expira tras 1 año. La preferencia de tema no tiene expiración programada y persiste hasta que el usuario la cambia o limpia el almacenamiento del navegador.
3.5 Invitaciones y bloqueos entre usuarios
Datos: Invitaciones a hogares compartidos (quién invita, a quién, su estado y fechas) y relaciones de bloqueo entre usuarios.
Finalidad: Gestionar el acceso compartido a un hogar y permitir que un usuario bloquee a otro.
Base jurídica: Ejecución de un contrato — Art. 6.1.b RGPD (funcionalidad de hogares compartidos) e interés legítimo — Art. 6.1.f RGPD (control de bloqueos).
Plazo de conservación: Las invitaciones ya resueltas (aceptadas o rechazadas) se eliminan automáticamente a los 6 meses. Las relaciones de bloqueo se conservan mientras el bloqueo esté activo; los datos técnicos del control de frecuencia de bloqueo se eliminan a los 7 días. La eliminación de la cuenta borra en cascada todas estas relaciones.
3.6 Analítica de uso y errores de JavaScript (Google Analytics 4)
Datos: Eventos anónimos de uso (visitas a páginas, clics, vistas de la escena 3D) y eventos de error de JavaScript. La analítica no recoge datos personales identificables: las direcciones IP se anonimizan antes del envío y no se almacenan en localStorage del usuario. Se generan dos cookies de terceros (_ga, _ga_<container-id>) tras la aceptación explícita.
Finalidad: Diagnosticar problemas técnicos en la aplicación y entender qué funcionalidades se usan para priorizar mejoras.
Base jurídica: Consentimiento explícito — Art. 6.1.a RGPD. La analítica NO se activa hasta que el usuario acepta en el banner de consentimiento (RGPD Art. 7 + ePrivacy Art. 5.3). Si el usuario rechaza, el SDK de Google Analytics no se monta y no se establece ninguna cookie de analítica. El usuario puede cambiar de opinión en cualquier momento desde la página de Privacidad de su cuenta; el cambio se aplica en la siguiente navegación.
Transferencia internacional: Los datos se procesan en la infraestructura de Google LLC (EEUU). La transferencia está amparada por la decisión de adecuación del EU–U.S. Data Privacy Framework de 10 de julio de 2023 y, subsidiariamente, por las Cláusulas Contractuales Tipo de la Comisión Europea.
Plazo de conservación: Los datos agregados en Google Analytics se conservan 14 meses (configuración por defecto de GA4). El registro local de la decisión del usuario (user_consent_log) se conserva mientras la cuenta esté activa y se elimina con ella; el log es necesario para demostrar el consentimiento conforme al Art. 7.1 RGPD.
Cómo retirar el consentimiento: Desde la página de Privacidad de la cuenta, sección "Analítica de uso", o reabriendo el banner de consentimiento. El sistema también vuelve a preguntar automáticamente a los 12 meses de la última decisión, o cuando esta política cambie de forma relevante.
3.7 Informes de fallos de la aplicación móvil (Firebase Crashlytics)
Datos: Trazas de pila (stack traces) generadas cuando la aplicación móvil (Android o iOS) se cierra inesperadamente o registra un error no fatal, junto con el modelo de dispositivo, la versión del sistema operativo, la versión de la app y un identificador de instalación técnico generado por el propio SDK, no vinculado a la cuenta del usuario. No se envían identificadores de usuario, de hogar ni de cama, ni direcciones de correo, ni datos de navegación o de comportamiento de uso.
Finalidad: Detectar y corregir fallos técnicos de la aplicación móvil para mantener su estabilidad y seguridad.
Base jurídica: Interés legítimo — Art. 6.1.f RGPD (mantenimiento de la seguridad y estabilidad del servicio). A diferencia de la analítica de la sección 3.6, este informe de fallos no depende del consentimiento de analítica ni se desactiva junto al ajuste «Analítica de uso» de la página de Privacidad de la cuenta: se limita a datos técnicos de diagnóstico necesarios para el funcionamiento correcto de la app, nunca a datos de comportamiento del usuario. El usuario puede ejercer su derecho de oposición (Art. 21 RGPD, ver sección 5) contactando con nosotros.
Transferencia internacional: Igual que para el resto de servicios de Firebase — ver sección 4.2.
Plazo de conservación: Los informes de fallos se conservan 90 días en Firebase Crashlytics (configuración por defecto de Google), tras los cuales se eliminan automáticamente.
4. Destinatarios de sus datos
4.1 Otros usuarios de la aplicación
Cuando un usuario comparte un hogar con otras personas, los miembros del hogar pueden ver el nombre de visualización del usuario. El usuario controla con quién comparte el acceso a su hogar mediante el sistema de invitaciones.
4.2 Google LLC / Firebase, Google Analytics y Crashlytics (subencargados del tratamiento)
Para el proceso de autenticación, utilizamos Firebase Authentication, un servicio de Google LLC (1600 Amphitheatre Parkway, Mountain View, CA 94043, EEUU).
Firebase recibe y procesa la dirección de correo electrónico del usuario y su contraseña (solo en el método email/contraseña) durante el proceso de registro e inicio de sesión. Si el usuario elige autenticarse con Google o Apple, Firebase gestiona ese flujo con el proveedor correspondiente.
Para la analítica de uso y la telemetría de errores en la web, utilizamos Google Analytics 4, también operado por Google Ireland Ltd. en nombre de Google LLC. GA4 solo se activa tras el consentimiento explícito del usuario (ver sección 3.6) y respeta las cuatro señales de Google Consent Mode v2 (analytics_storage, ad_storage, ad_user_data, ad_personalization).
En las aplicaciones móviles (Android e iOS) utilizamos Firebase Crashlytics para los informes de fallos técnicos (ver sección 3.7), también operado por Google. A diferencia de GA4, Crashlytics no está sujeto al banner de consentimiento: se basa en el interés legítimo en mantener la app operativa y libre de errores.
Transferencia internacional: Google LLC está establecida en los Estados Unidos. Las transferencias están amparadas por la decisión de adecuación del EU–U.S. Data Privacy Framework de 10 de julio de 2023 y, subsidiariamente, por las Cláusulas Contractuales Tipo aprobadas por la Comisión Europea, de conformidad con el Art. 46 RGPD. Para más información, consulte la Política de Privacidad de Google, el Acuerdo de Procesamiento de Datos de Firebase y la documentación de Google Analytics 4 y el RGPD.
4.3 Proveedor de infraestructura
La aplicación y la base de datos se alojan en infraestructura propia gestionada directamente por CatDevs, ubicada en territorio español. No hay terceros proveedores de hosting en la cadena de tratamiento actual.
5. Derechos del usuario
En cualquier momento, el usuario puede ejercer los siguientes derechos ante el responsable del tratamiento:
- Acceso (Art. 15 RGPD): Obtener confirmación de si se tratan datos suyos y recibir una copia de los mismos.
- Rectificación (Art. 16 RGPD): Solicitar la corrección de datos inexactos o incompletos.
- Supresión / Derecho al olvido (Art. 17 RGPD): Solicitar la eliminación de sus datos. También puede ejercerlo directamente desde la app en Preferencias → Eliminar cuenta.
- Limitación del tratamiento (Art. 18 RGPD): Solicitar que se restrinja el tratamiento de sus datos en determinadas circunstancias.
- Portabilidad (Art. 20 RGPD): Recibir sus datos en un formato estructurado, de uso común y legible por máquina.
- Oposición (Art. 21 RGPD): Oponerse al tratamiento basado en interés legítimo.
Cómo ejercer sus derechos: Enviando un correo electrónico a catdevsstudio@gmail.com con el asunto "Ejercicio de derechos RGPD", indicando el derecho que desea ejercer y adjuntando una copia de su documento de identidad. Responderemos en el plazo máximo de 30 días naturales.
Reclamación ante la AEPD: Si considera que el tratamiento de sus datos no se ajusta a la normativa vigente, puede presentar una reclamación ante la Agencia Española de Protección de Datos (AEPD): www.aepd.es.
6. Seguridad de los datos
CatDevs aplica medidas técnicas y organizativas adecuadas para proteger los datos personales frente a accesos no autorizados, pérdida, destrucción o divulgación accidental, incluyendo:
- Transmisión cifrada mediante HTTPS (TLS) en todas las comunicaciones.
- Autenticación mediante tokens JWT de duración limitada emitidos por Firebase.
- Control de acceso por roles en la base de datos (Row Level Security en PostgreSQL).
- Limitación de intentos de acceso (rate limiting por IP en los endpoints de autenticación).
- Las contraseñas nunca se almacenan en los sistemas de CatDevs; son gestionadas íntegramente por Firebase Authentication.
7. Política de Cookies
Consulte la Política de Cookies para información detallada sobre las cookies y el almacenamiento local utilizados.
8. Modificaciones de esta política
Esta política puede actualizarse para reflejar cambios en la aplicación o en la normativa aplicable. Las modificaciones relevantes se comunicarán con antelación razonable a través de la propia aplicación o por correo electrónico.