Política de Privacidad
Versión 1.2 · Última actualización: 2026-06-23 · Términos del Servicio
Preámbulo
Esta Política de Privacidad establece las reglas para el tratamiento de datos personales de los Usuarios de la Aplicación Kalorka.app y de los Usuarios Invitados que utilizan el modo sin cuenta. La Política cumple la obligación de información prevista en el Artículo 13 del RGPD.
Este documento es coherente con los Términos del Servicio de la Aplicación.
I. Responsable del tratamiento de datos personales
El Responsable del tratamiento de los datos personales de los Usuarios es:
TFB Group sp. z o.o.
ul. św. Filipa 23/4, 31-150 Kraków
KRS: 0000499144 · NIP: 6762474679 · REGON: 123048916
Correo electrónico de contacto para asuntos del RGPD: info@kalorka.app, info@tfbgroup.pl
El Responsable no está obligado a designar un delegado de protección de datos (DPO) de conformidad con el Artículo 37 del RGPD — la escala y la naturaleza del tratamiento no cumplen las condiciones para una designación obligatoria.
II. Finalidades del tratamiento de datos
- Prestación del servicio — análisis de fotos de alimentos mediante IA, guardado de resultados, gestión de la Cuenta, sistema de referidos.
- Autorización de la Cuenta — manejo de sesiones, magic links por correo electrónico, OAuth (Google, Apple), tokens de referido.
- Comunicación transaccional — magic links, notificaciones sobre cambios en la Cuenta, recordatorios de retención (recordatorios para volver a la Aplicación), alertas del operador.
- Seguridad — limitación de tasa, protección contra abusos, límite de costos de la Aplicación para Invitados, pista de auditoría de correos electrónicos entrantes.
- Estadísticas y mejora del servicio — telemetría anónima de eventos (IP con hash, User-Agent categorizado), sin identificar a personas.
- Boletín / marketing — solo después de otorgar el consentimiento (opt-in). Actualmente, la Aplicación no envía boletín.
- Objetivo diario (perfil nutricional) — cálculo del requerimiento calórico diario estimado (TDEE) y de los objetivos de macronutrientes con base en los datos proporcionados voluntariamente por el Usuario (peso, estatura, año de nacimiento, sexo, nivel de actividad). La función es opcional — se inicia solo cuando el Usuario decide establecer un objetivo en la configuración de la Cuenta.
III. Bases legales (Artículo 6 del RGPD)
- Artículo 6(1)(b) — ejecución de un contrato (Términos del Servicio de la Aplicación) — para las finalidades II.a) Prestación del servicio, II.b) Autorización de la Cuenta y II.g) Objetivo diario (datos del perfil nutricional proporcionados voluntariamente por el Usuario como parte de una función opcional);
- Artículo 6(1)(f) — interés legítimo del Responsable — para las finalidades II.c) Comunicación transaccional (recordatorios de retención), II.d) Seguridad, II.e) Estadísticas;
- Artículo 6(1)(a) — consentimiento del Usuario — para la finalidad II.f) Boletín / marketing;
- Artículo 6(1)(c) — obligación legal — para casos designados derivados de la normativa (por ejemplo, respuestas a solicitudes de autoridades policiales).
IV. Qué datos tratamos
A. Datos de la Cuenta
- dirección de correo electrónico
- user_id (UUID generado por Supabase)
- proveedor de registro (Google / Apple / magic link por correo electrónico)
- fecha de registro + fecha del último inicio de sesión
- URL del avatar (si OAuth la devuelve)
B. Datos funcionales
- fotos de alimentos (Supabase Storage, bucket privado, URLs firmadas TTL 300s)
- Resultados de Análisis de IA (ingredientes, calorías, macronutrientes, raw_response JSON)
- ediciones de resultados (meal_user_edited)
- historial de Escaneos + Créditos
C. Datos técnicos
- cookie anonymous_id (modo Invitado)
- tokens de referido (cookie + base de datos)
- cookie de sesión de Supabase (httpOnly + secure + SameSite)
- registros de analítica (IP con hash — SHA-256 + sal, User-Agent categorizado)
D. Datos conductuales
- número y frecuencia de Escaneos realizados
- estado de suscripción a recordatorios de retención (suscrito / no suscrito)
- clics en enlaces en correos electrónicos (marcados por parámetros UTM)
E. Datos del perfil nutricional (opcional — función “Objetivo diario”)
- peso (kg), estatura (cm), año de nacimiento, sexo
- nivel de actividad física
- objetivo calórico diario y objetivos de macronutrientes (proteína / carbohidratos / grasa)
Estos datos son proporcionados voluntariamente por el Usuario y se tratan solo cuando el Usuario utiliza la función opcional “Objetivo diario”. Se utilizan únicamente para calcular un objetivo diario estimado de calorías y macronutrientes. Los cálculos son indicativos y no constituyen consejo médico ni sustituyen la consulta con un médico o dietista. El Usuario puede cambiar o eliminar estos datos en cualquier momento en la configuración de la Cuenta; la eliminación de la Cuenta los elimina junto con los demás datos.
V. Encargados del tratamiento de datos (terceros)
El Responsable utiliza los siguientes encargados del tratamiento de datos (entidades que tratan datos en nombre del Responsable — Artículo 28 del RGPD):
| Encargado | Alcance | Región | Mecanismo de transferencia |
|---|---|---|---|
| Supabase Inc. | Base de datos + Auth + almacenamiento de fotos | UE (eu-central-1) | DPA + SCC |
| Vercel Inc. | Alojamiento de la Aplicación + Serverless Functions | Multi-región UE (fra1) | DPA + SCC |
| Resend Inc. | Correo electrónico (saliente + entrante) | UE (eu-west-1) | DPA + SCC |
| Anthropic PBC | Análisis de fotos con IA (Claude Sonnet + Haiku) | Multi-región EE. UU. | DPA + SCC + SIN entrenamiento |
| Google LLC | Inicio de sesión OAuth (opcional) | Multi-región | DPF (Data Privacy Framework) |
| Apple Inc. | Sign in with Apple (opcional) | Multi-región | DPF |
| Upstash Inc. | Redis (limitación de tasa + límite de costos) | UE | DPA + SCC |
| Zendesk Inc. + TFB Group | Mesa de ayuda (después del reenvío /api/inbound/email) | Multi-región | DPA + SCC |
DPA = Acuerdo de Tratamiento de Datos · SCC = Cláusulas Contractuales Tipo · DPF = Marco de Privacidad de Datos UE-EE. UU.
Destinatarios / encargados del tratamiento adicionales (suscripciones y pagos)
- RevenueCat, Inc. — proveedor de infraestructura para gestionar y sincronizar el estado de suscripción y los derechos de usuario entre la aplicación móvil, las tiendas Apple App Store / Google Play y los sistemas de Kalorka. Puede tratar el identificador de usuario o de aplicación, información sobre el producto de suscripción, estado de la suscripción, fechas de compra/renovación/vencimiento, token o confirmación de compra proporcionada por la tienda y metadatos técnicos para la verificación de derechos. Finalidad: verificación del acceso pagado activo y concesión de derechos.
- Stripe, Inc. — proveedor histórico de procesamiento de pagos web. Desde junio de 2026, Kalorka no ha iniciado nuevos pagos mediante Stripe ni ha proporcionado una nueva ruta de compra mediante Stripe. Los datos de transacciones históricas (identificadores de pago, importes, fechas, créditos concedidos, metadatos de facturación) pueden almacenarse con fines contables, probatorios, fiscales, de seguridad y de gestión de reclamaciones.
VI. Transferencia de datos fuera del EEE
Algunos de los encargados del tratamiento del Responsable están establecidos fuera del Espacio Económico Europeo (principalmente en EE. UU. — Anthropic, Google, Apple, Zendesk). La transferencia de datos a estas entidades se realiza sobre la base de:
- Cláusulas Contractuales Tipo (SCC) — aprobadas por la Comisión Europea (Decisión 2021/914);
- Data Privacy Framework (DPF) — marco de protección de datos UE-EE. UU. (decisión de la Comisión Europea de 10 de julio de 2023) — para las entidades que se han autocertificado.
El Responsable NO transfiere datos a países sin un nivel adecuado de protección de datos personales.
VII. Plazo de conservación de datos
| Categoría de datos | Plazo de conservación |
|---|---|
| Datos de la Cuenta (correo electrónico, user_id, proveedor) | hasta la eliminación de la Cuenta + 30 días de copia de seguridad |
| Fotos de alimentos (Storage) | hasta la eliminación de la Cuenta + 30 días de copia de seguridad |
| Resultados de Análisis de IA (parsed_result) | hasta la eliminación de la Cuenta + 30 días de copia de seguridad |
| Perfil nutricional (objetivo diario: peso, estatura, año de nacimiento, sexo, actividad + objetivo de kcal/macros) | hasta la eliminación de la Cuenta + 30 días de copia de seguridad |
| Datos de Invitado (cookie anonymous_id) | 30 días desde la última actividad |
| Registros técnicos (analítica, hash de IP) | 12 meses |
| Registros de correo electrónico entrante (auditoría de reenvío) | 6 meses |
| Registros de limitación de tasa (Upstash Redis) | 24 horas (ventana móvil) |
| Suscripción a recordatorios de retención (opt-out) | hasta la cancelación de la suscripción o la eliminación de la Cuenta |
Los datos de facturación y los datos relativos a pagos históricos se almacenan durante el período requerido por la legislación fiscal y contable — al menos 5 años, contados desde el final del año calendario en que surgió la obligación. En este aspecto, el derecho a la supresión de datos (Artículo 17 del RGPD) está limitado por la obligación legal que recae sobre el responsable del tratamiento (Artículo 17(3)(b) del RGPD).
VIII. Derechos del Usuario (Artículos 15-22 del RGPD)
Cada Usuario tiene derecho a:
- Acceder a sus datos (Artículo 15 del RGPD);
- Rectificar datos incorrectos (Artículo 16);
- Suprimir datos (“derecho al olvido”, Artículo 17);
- Limitar el tratamiento (Artículo 18);
- Portabilidad de los datos (Artículo 20);
- Oponerse al tratamiento basado en el interés legítimo (Artículo 21);
- Retirar el consentimiento en cualquier momento (Artículo 7(3)).
Ejercicio de derechos: contacto por correo electrónico en info@kalorka.app. Respuesta dentro de un plazo máximo de 30 días desde la recepción de la solicitud (de conformidad con el Artículo 12(3) del RGPD).
El Usuario también tiene derecho a presentar una reclamación ante la autoridad de control — Presidente de la Oficina de Protección de Datos Personales, ul. Stawki 2, 00-193 Warszawa, uodo.gov.pl.
X. Seguridad de los datos
- Todas las transmisiones de datos están protegidas por el protocolo HTTPS (TLS 1.3) — certificado gestionado por Vercel.
- Las contraseñas de los Usuarios NO se almacenan — la Aplicación utiliza únicamente magic links por correo electrónico y OAuth (Google / Apple).
- Las fotos de alimentos se almacenan en un bucket privado de Supabase Storage con acceso mediante una URL firmada con una vida útil de 300 segundos.
- La base de datos Postgres está protegida por el mecanismo RLS (Row Level Security) — cada registro requiere autenticación y está aislado por Usuario.
- Los mecanismos de limitación de tasa (Upstash Redis) y límite de costos (límites diarios de uso de la API de IA) protegen la Aplicación contra abusos.
- Copias de seguridad automáticas — snapshots diarios de la base de datos por Supabase (retención de 7 días en plan Pro).
XI. Disposiciones finales
- Versión de la Política de Privacidad: 1.2. Última actualización: 2026-06-23.
- Los cambios a la Política de Privacidad requieren notificar a los Usuarios con 14 días de anticipación (análogamente a los Términos del Servicio — §XIII).
- Dirija las preguntas relativas a la Política de Privacidad al correo electrónico info@kalorka.app.
- Esta Política constituye parte integral de los Términos del Servicio de la Aplicación.