Política de privacidad de Blunely

Fecha de entrada en vigor: 30 de octubre de 2026.

Responsable y contacto

El responsable del tratamiento y titular comercial de Blunely es el profesional autónomo establecido en Madrid, España: Javier Miller Velasco, domicilio profesional Calle de la Pícara Molinera, 38, 28041, Madrid, Madrid, España. Contacto legal, de privacidad y para ejercer derechos: javiermillerv@gmail.com. Soporte técnico: monica.bartolome.g@gmail.com. La desarrolladora realiza mantenimiento técnico por cuenta del titular según las funciones y accesos que este le atribuya; el titular decide los fines y medios esenciales y atiende las solicitudes de privacidad.

Datos y finalidades

Blunely permite guardar productos, marcas, categorías, zonas, notas, fechas de caducidad y reposición, rutinas, instrucciones, reglas, pausas, calendario, historial, preferencias de avisos y registros de finalización. Las fotografías de productos y de seguimiento capilar pueden mostrar a una persona o revelar información personal; las fotos de seguimiento se asocian a una rutina, fecha y nota opcional. El texto reconocido por dictado puede incorporarse a notas o instrucciones al guardar. Estos datos se almacenan localmente en el dispositivo, con las excepciones de copias, dictado y suscripciones explicadas abajo; Blunely no dispone de un servidor propio para guardar fotografías, rutinas, notas o seguimientos. No se requiere una cuenta de Blunely.

Estos datos sirven para organizar las rutinas y productos, registrar el seguimiento y mostrar avisos locales elegidos por el usuario. Blunely no es una aplicación sanitaria: no solicita diagnósticos ni información médica y el código revisado no realiza diagnóstico ni identificación biométrica. Evite introducir información médica, datos de salud u otros datos especialmente sensibles en fotos y notas. Si los incorpora por iniciativa propia, podrían quedar en el dispositivo y en las copias que elija crear; la app no puede garantizar que nunca aparezcan datos de esta clase. Blunely no pretende tratarlos deliberadamente ni los analiza para inferir un diagnóstico. Si la finalidad del servicio cambiase para solicitar o tratar deliberadamente categorías especiales, habría que revisar antes la condición aplicable del artículo 9 RGPD y las medidas correspondientes.

Almacenamiento local y fotografías

Los datos estructurados y las preferencias se guardan mediante AsyncStorage dentro de la instalación. Las fotografías elegidas de la galería o tomadas con la cámara se convierten a JPEG, se comprimen y se reducen si su lado mayor supera 1024 píxeles. Blunely guarda una copia en blunely-product-photos/, dentro del directorio privado de documentos de la app, y almacena una referencia en sus datos. Elegir una foto de la galería no borra el archivo original. La app no llama a una función para guardarlo allí cuando se toma con su cámara. No se ha comprobado en dispositivo si el JPEG resultante conserva metadatos EXIF o ubicación. No se ha observado una subida de estas fotos al servidor de Blunely ni a RevenueCat; pueden salir mediante las copias y exportaciones descritas abajo.

Al sustituir o borrar una foto, el archivo de la app se limpia cuando ninguna generación local de recuperación lo necesita. Puede quedar temporalmente una copia antigua o un archivo de caché. Los originales de la galería y las copias exportadas están fuera de ese borrado.

Copias creadas por Blunely

Con Premium, Blunely puede crear un ZIP con data.json, notification-preferences.json, fotografías de productos y seguimiento, y un manifiesto con fecha, recuentos y hashes de integridad. El ZIP no está cifrado: quien acceda a él puede leer fotografías, notas y demás datos. Los hashes comprueban integridad, no confidencialidad. La restauración valida el archivo y sustituye los datos y preferencias de esta instalación; no restaura ni acredita una suscripción Premium.

En Android, «Guardar copia» usa el selector de carpeta del sistema y «Compartir copia» usa el menú del sistema. En iOS, guardar o compartir usa el menú del sistema; en web se descarga el archivo. El usuario elige el destino, que puede ser almacenamiento local, una nube o una aplicación de mensajería/correo si el sistema lo ofrece. Se aplicarán también las condiciones y la privacidad del proveedor elegido. Blunely no controla ni elimina el archivo guardado allí. Para compartir, crea un ZIP temporal en caché; conserva archivos recientes para que el destino pueda leerlos e intenta eliminar los de más de 24 horas en una exportación posterior. Si no se vuelve a exportar, el archivo puede permanecer hasta que el sistema limpie la caché o se borre la aplicación. La selección para restaurar crea una copia temporal privada; la aplicación intenta retirarla al cerrar la vista previa o en un inicio posterior. El selector de archivos puede crear otra copia temporal, cuya limpieza depende de que la operación finalice correctamente y del sistema.

Copias del sistema operativo

La configuración Android y el manifiesto del AAB de prueba examinado permiten Auto Backup (allowBackup=true) y no muestran reglas de exclusión de datos de Blunely. La base local y las fotos del directorio privado pueden entrar en copias o transferencias entre dispositivos, según ajustes, límites y versión de Android. En iOS, las fotos se guardan en el directorio de documentos, que puede incluirse en copias del dispositivo o iCloud; el código revisado no las excluye de ellas. Estas copias las gestiona el sistema y pueden persistir tras borrar los datos desde Blunely. No se garantiza que datos y fotos se restauren siempre juntos ni que cada copia se haya realizado efectivamente.

Dictado y avisos

El dictado es opcional. En Android, Blunely usa el servicio de reconocimiento predeterminado del dispositivo, que puede ser Google u otro proveedor. En iOS usa Speech de Apple. La app no exige reconocimiento exclusivamente local; el audio o datos asociados pueden enviarse al proveedor. Blunely recibe la transcripción y solo la conserva en sus datos cuando el usuario guarda el formulario. El micrófono y el permiso de reconocimiento de iOS se solicitan para esta función. Consulte la privacidad del proveedor de reconocimiento del dispositivo.

Los avisos de rutinas y productos se programan localmente mediante notificaciones del sistema, con permiso cuando corresponde. El código revisado no obtiene un token push ni configura un servidor de notificaciones remotas. Las preferencias y fechas de aviso se guardan localmente; el sistema recibe el contenido necesario para mostrar el aviso.

Premium, RevenueCat y tiendas

La app integra react-native-purchases de RevenueCat. Si hay una clave pública configurada en la versión instalada, el SDK se inicia al abrir la app, puede comunicarse con RevenueCat y genera un identificador anónimo de cliente porque Blunely no le proporciona uno propio. Consulta ofertas y el derecho premium; las suscripciones de Android se gestionan mediante Google Play y RevenueCat; si se habilitan compras en iOS, intervienen Apple App Store y RevenueCat. RevenueCat puede recibir datos técnicos del dispositivo, identificador anónimo, información de transacciones y recibos o tokens de compra. El código de Blunely no envía fotos, notas ni rutinas a RevenueCat ni configura atributos de cliente o herramientas de atribución adicionales. Las integraciones del panel de RevenueCat requieren verificación aparte.

La pantalla de compra está preparada para mostrar precio y periodo devueltos por la tienda, renovación automática, gestión y restauración de compras. Las URL legales públicas están disponibles. Se ha validado una compra con tarjeta de prueba en el canal interno de Google Play; las compras con medios de pago reales aún no se han validado. Los importes previstos de 1,99 €/mes y 15,99 €/año no acreditan los precios publicados por las tiendas. La tienda gestiona el cobro de las suscripciones. Javier podrá consultar en los paneles de RevenueCat y de la tienda los datos de suscripción y transacción que esos servicios pongan a su disposición; el alcance efectivo de esos datos dependerá de la configuración y de las compras realizadas.

RevenueCat publica que trata información de usuarios finales por cuenta de sus clientes y documenta infraestructura, subencargados y condiciones de transferencia en su acuerdo de tratamiento. La configuración concreta de la cuenta, incluidas sus integraciones y garantías aplicables, debe comprobarse antes del lanzamiento público.

Bases jurídicas y conservación

Las bases propuestas conforme al artículo 6.1 RGPD son: ejecución del servicio solicitado (b) para guardar y mostrar datos locales, fotos elegidas, avisos, ZIP solicitado, dictado activado por el usuario y verificación de Premium; obligación legal (c) para atender derechos de protección de datos y conservar justificantes cuando una norma fiscal o de consumo lo exija; interés legítimo (f) para responder consultas ordinarias de soporte y preservar evidencia mínima de incidencias, con posibilidad de oposición cuando proceda. El dictado es voluntario y puede no utilizarse sin perder las funciones principales. El permiso del sistema para micrófono, fotos o avisos no sustituye una base RGPD. En el código revisado no se observa uso para publicidad personalizada ni decisiones automatizadas con efectos jurídicos; las integraciones de RevenueCat configurables desde su panel requieren comprobación.

Los datos locales permanecen mientras el usuario los conserve en la instalación; se eliminan al borrar cada elemento, usar el borrado global, desinstalar o sustituirlos mediante restauración, con los límites de recuperación y caché descritos. Los ZIP exportados permanecen hasta que el usuario los borre del destino elegido. Las copias del sistema siguen las opciones y plazos del proveedor del sistema. Los datos de suscripción en RevenueCat se conservan mientras sean necesarios para verificar el derecho y gestionar solicitudes, y después según los plazos contractuales y legales aplicables al proveedor; el titular debe tramitar la supresión cuando proceda. Los registros de las tiendas siguen sus propias políticas. Javier ha aprobado como criterios internos borrar las consultas ordinarias de soporte 12 meses después de cerrarlas y conservar durante 3 años desde su cierre un registro mínimo de solicitudes de derechos, salvo obligación legal o reclamación que justifique otra conservación. Estos plazos son decisiones organizativas, no plazos legales universales. Javier dispone de un registro privado y un procedimiento de acceso restringido, revisión y borrado periódico para aplicar estos criterios desde la primera solicitud; cada revisión y eliminación requiere su actuación. Los justificantes fiscales que efectivamente posea el titular se conservarán durante los plazos legales aplicables.

Borrado y derechos

«Borrar todos mis datos», en Ajustes (también «Eliminar todos mis datos» en la configuración de rutinas), exige dos confirmaciones y borra documentos y preferencias propios de Blunely y las fotos de su directorio privado; después crea un estado local vacío. No elimina fotos originales de la galería, ZIP exportados, copias del sistema ni registros de RevenueCat o las tiendas, y no cancela una suscripción activa. Si falla, el borrado queda pendiente y se reintenta. Tras volver al estado vacío, la aplicación intenta conciliar los avisos del sistema y cancelar los avisos de Blunely que ya no corresponden; esta cancelación no forma parte de la confirmación del borrado y puede fallar o demorarse, por lo que algún aviso previamente programado podría aparecer después.

Puede solicitar acceso, rectificación, supresión, limitación, portabilidad u oposición, cuando corresponda, escribiendo a javiermillerv@gmail.com. Javier es el responsable de atender la solicitud. Indique qué derecho desea ejercer. Para localizar datos de suscripción puede facilitar el identificador anónimo de RevenueCat, si lo conoce, o el identificador de transacción o pedido que figure en su comprobante de compra; la app no muestra actualmente el identificador anónimo. No envíe fotos, notas ni ZIP para identificar una compra. Se solicitará información adicional solo si hay dudas razonables sobre su identidad. Javier responderá sin dilación indebida y, como máximo, en un mes desde la recepción; este plazo puede ampliarse otros dos meses en los casos previstos por el RGPD, informando de la prórroga dentro del primer mes. Puede reclamar ante la AEPD u otra autoridad competente. Los datos locales se pueden consultar, rectificar y borrar desde la app; la exportación ZIP facilita una copia. Una solicitud por correo no da acceso remoto al contenido almacenado solo en el dispositivo. RevenueCat permite buscar clientes por identificador anónimo o transacción y suprimir el registro desde su panel o API; Javier deberá verificar la correspondencia y tramitar cada solicitud que proceda. Si no puede localizarse al interesado con los datos disponibles, se le explicará esta limitación y se le permitirá aportar información adicional. El borrado local no envía una solicitud a RevenueCat y la supresión allí no cancela una suscripción de Google o Apple. Javier tiene preparado un procedimiento interno de recepción, registro y respuesta que aplicará desde la primera solicitud.

Consulte también la página Eliminación de datos de Blunely, con los pasos de borrado local y solicitud por correo.

Menores, seguridad y cambios

Blunely está dirigida a personas mayores de 18 años; no verifica técnicamente la edad. La clasificación y los textos de ambas tiendas deberán reflejar esta orientación antes del lanzamiento. Usa el aislamiento del sistema y valida estructura e integridad de documentos y ZIP locales, pero no cifra los ZIP ni garantiza seguridad absoluta. Proteja su dispositivo y los destinos de exportación. Este texto se actualizará si cambian las funciones o proveedores, indicando la nueva fecha. Contacto para cambios y privacidad: javiermillerv@gmail.com.