Politique de confidentialité
Version 1.2 · Dernière mise à jour : 2026-06-23 · Conditions d’utilisation
Préambule
La présente Politique de confidentialité définit les règles de traitement des données personnelles des Utilisateurs de l’Application Kalorka.app et des Utilisateurs invités utilisant le mode sans compte. La Politique satisfait à l’obligation d’information prévue à l’article 13 du RGPD.
Le présent document est conforme aux Conditions d’utilisation de l’Application.
I. Responsable du traitement des données personnelles
Le Responsable du traitement des données personnelles des Utilisateurs est :
TFB Group sp. z o.o.
ul. św. Filipa 23/4, 31-150 Kraków
KRS: 0000499144 · NIP: 6762474679 · REGON: 123048916
E-mail de contact pour les questions relatives au RGPD : info@kalorka.app, info@tfbgroup.pl
Le Responsable du traitement n’est pas tenu de désigner un délégué à la protection des données (DPO) conformément à l’article 37 du RGPD — l’échelle et la nature du traitement ne remplissent pas les conditions imposant une désignation obligatoire.
II. Finalités du traitement des données
- Exécution du service — analyse de photos d’aliments au moyen de l’IA, enregistrement des résultats, gestion du Compte, système de parrainage.
- Autorisation du Compte — gestion des sessions, magic links par e-mail, OAuth (Google, Apple), jetons de parrainage.
- Communication transactionnelle — magic links, notifications concernant les modifications du Compte, rappels de rétention (rappels de retour à l’Application), alertes opérateur.
- Sécurité — limitation du débit, protection contre les abus, plafonnement des coûts de l’Application Invité, piste d’audit des e-mails entrants.
- Statistiques et amélioration du service — télémétrie anonyme des événements (IP hachée, User-Agent catégorisé), sans identification des personnes.
- Newsletter / marketing — uniquement après consentement (opt-in). Actuellement, l’Application n’envoie pas de newsletter.
- Objectif quotidien (profil nutritionnel) — calcul des besoins caloriques quotidiens estimés (TDEE) et des objectifs en macronutriments sur la base des données fournies volontairement par l’Utilisateur (poids, taille, année de naissance, sexe, niveau d’activité). La fonction est facultative — lancée uniquement lorsque l’Utilisateur décide de définir un objectif dans les paramètres du Compte.
III. Bases juridiques (article 6 du RGPD)
- Article 6(1)(b) — exécution d’un contrat (Conditions d’utilisation de l’Application) — pour les finalités II.a) Exécution du service, II.b) Autorisation du Compte et II.g) Objectif quotidien (données du profil nutritionnel fournies volontairement par l’Utilisateur dans le cadre d’une fonction facultative) ;
- Article 6(1)(f) — intérêt légitime du Responsable du traitement — pour les finalités II.c) Communication transactionnelle (rappels de rétention), II.d) Sécurité, II.e) Statistiques ;
- Article 6(1)(a) — consentement de l’Utilisateur — pour la finalité II.f) Newsletter / marketing ;
- Article 6(1)(c) — obligation légale — pour les cas déterminés résultant de la réglementation (par exemple réponses aux demandes des autorités chargées de l’application de la loi).
IV. Données que nous traitons
A. Données du compte
- adresse e-mail
- user_id (UUID généré par Supabase)
- fournisseur d’inscription (Google / Apple / magic link par e-mail)
- date d’inscription + date de dernière connexion
- URL de l’avatar (si renvoyée par OAuth)
B. Données fonctionnelles
- photos d’aliments (Supabase Storage, bucket privé, URLs signées TTL 300s)
- Résultats d’analyse IA (ingrédients, calories, macronutriments, JSON raw_response)
- modifications des résultats (meal_user_edited)
- historique des Scans + Crédits
C. Données techniques
- cookie anonymous_id (mode Invité)
- jetons de parrainage (cookie + base de données)
- cookie de session Supabase (httpOnly + secure + SameSite)
- journaux analytics (IP hachée — SHA-256 + sel, User-Agent catégorisé)
D. Données comportementales
- nombre et fréquence des Scans effectués
- statut d’abonnement aux rappels de rétention (abonné / désabonné)
- clics sur les liens dans les e-mails (marqués par des paramètres UTM)
E. Données du profil nutritionnel (facultatif — fonction “Objectif quotidien”)
- poids (kg), taille (cm), année de naissance, sexe
- niveau d’activité physique
- objectif calorique quotidien et objectifs en macronutriments (protéines / glucides / lipides)
Ces données sont fournies volontairement par l’Utilisateur et traitées uniquement lorsque l’Utilisateur utilise la fonction facultative “Objectif quotidien”. Elles servent exclusivement à calculer un objectif calorique quotidien et un objectif en macronutriments estimés. Les calculs sont indicatifs et ne constituent pas un avis médical et ne remplacent pas une consultation avec un médecin ou un diététicien. L’Utilisateur peut modifier ou supprimer ces données à tout moment dans les paramètres du Compte ; la suppression du Compte les supprime avec les autres données.
V. Sous-traitants (tiers)
Le Responsable du traitement utilise les sous-traitants suivants (entités traitant les données pour le compte du Responsable du traitement — article 28 du RGPD) :
| Sous-traitant | Périmètre | Région | Mécanisme de transfert |
|---|---|---|---|
| Supabase Inc. | Base de données + Auth + stockage des photos | UE (eu-central-1) | DPA + SCC |
| Vercel Inc. | Hébergement de l’application + fonctions Serverless | Multi-région UE (fra1) | DPA + SCC |
| Resend Inc. | E-mail (sortant + entrant) | UE (eu-west-1) | DPA + SCC |
| Anthropic PBC | Analyse IA des photos (Claude Sonnet + Haiku) | Multi-région États-Unis | DPA + SCC + AUCUN entraînement |
| Google LLC | Connexion OAuth (facultative) | Multi-région | DPF (Data Privacy Framework) |
| Apple Inc. | Se connecter avec Apple (facultatif) | Multi-région | DPF |
| Upstash Inc. | Redis (limitation du débit + plafonnement des coûts) | UE | DPA + SCC |
| Zendesk Inc. + TFB Group | Service d’assistance (après transfert /api/inbound/email) | Multi-région | DPA + SCC |
DPA = Data Processing Agreement · SCC = Clauses contractuelles types · DPF = EU-US Data Privacy Framework
Destinataires / sous-traitants supplémentaires (abonnements et paiements)
- RevenueCat, Inc. — fournisseur d’infrastructure pour la gestion et la synchronisation du statut d’abonnement et des droits utilisateur entre l’application mobile, les boutiques Apple App Store / Google Play et les systèmes Kalorka. Il peut traiter l’identifiant de l’utilisateur ou de l’application, les informations concernant le produit d’abonnement, le statut de l’abonnement, les dates d’achat/de renouvellement/d’expiration, le jeton ou la confirmation d’achat fourni par la boutique et les métadonnées techniques pour la vérification des droits. Finalité : vérification de l’accès payant actif et attribution des droits.
- Stripe, Inc. — fournisseur historique du traitement des paiements web. Depuis June 2026, Kalorka n’a pas initié de nouveaux paiements via Stripe ni fourni de nouveau parcours d’achat via Stripe. Les données des transactions historiques (identifiants de paiement, montants, dates, crédits accordés, métadonnées de facturation) peuvent être conservées à des fins comptables, probatoires, fiscales, de sécurité et de traitement des réclamations.
VI. Transfert de données hors de l’EEE
Certains sous-traitants du Responsable du traitement sont établis hors de l’Espace économique européen (principalement aux États-Unis — Anthropic, Google, Apple, Zendesk). Le transfert de données à ces entités a lieu sur la base de :
- Clauses contractuelles types (SCC) — approuvées par la Commission européenne (Decision 2021/914) ;
- Data Privacy Framework (DPF) — cadre UE-États-Unis de protection des données (décision de la Commission européenne du 10 July 2023) — pour les entités qui se sont autocertifiées.
Le Responsable du traitement NE transfère PAS de données vers des pays ne présentant pas un niveau adéquat de protection des données personnelles.
VII. Durée de conservation des données
| Catégorie de données | Durée de conservation |
|---|---|
| Données du compte (e-mail, user_id, fournisseur) | jusqu’à la suppression du Compte + 30 jours de sauvegarde |
| Photos d’aliments (Stockage) | jusqu’à la suppression du Compte + 30 jours de sauvegarde |
| Résultats d’analyse IA (parsed_result) | jusqu’à la suppression du Compte + 30 jours de sauvegarde |
| Profil nutritionnel (objectif quotidien : poids, taille, année de naissance, sexe, activité + objectif kcal/macro) | jusqu’à la suppression du Compte + 30 jours de sauvegarde |
| Données invité (cookie anonymous_id) | 30 jours à compter de la dernière activité |
| Journaux techniques (analytics, hachage IP) | 12 mois |
| Journaux des e-mails entrants (audit de transfert) | 6 mois |
| Journaux de limitation du débit (Upstash Redis) | 24 heures (fenêtre glissante) |
| Abonnement aux rappels de rétention (désinscription) | jusqu’à la désinscription ou la suppression du Compte |
Les données de facturation et les données relatives aux paiements historiques sont conservées pendant la période requise par le droit fiscal et comptable — au moins 5 ans, à compter de la fin de l’année civile au cours de laquelle l’obligation est née. À cet égard, le droit à l’effacement des données (article 17 du RGPD) est limité par l’obligation légale incombant au responsable du traitement (article 17(3)(b) du RGPD).
VIII. Droits de l’utilisateur (articles 15-22 du RGPD)
Chaque Utilisateur a le droit de :
- Accéder à ses données (article 15 du RGPD) ;
- Rectifier les données inexactes (article 16) ;
- Effacer les données (« droit à l’oubli », article 17) ;
- Limiter le traitement (article 18) ;
- Portabilité des données (article 20) ;
- S’opposer au traitement fondé sur l’intérêt légitime (article 21) ;
- Retirer son consentement à tout moment (article 7(3)).
Exercice des droits : contact par e-mail à info@kalorka.app. Réponse dans un délai maximal de 30 jours à compter de la réception de la demande (conformément à l’article 12(3) du RGPD).
L’Utilisateur a également le droit d’introduire une réclamation auprès de l’autorité de contrôle — Président de l’Office de protection des données personnelles, ul. Stawki 2, 00-193 Warszawa, uodo.gov.pl.
X. Sécurité des données
- Toutes les transmissions de données sont sécurisées par le protocole HTTPS (TLS 1.3) — certificat géré par Vercel.
- Les mots de passe des Utilisateurs ne sont PAS stockés — l’Application utilise uniquement des magic links par e-mail et OAuth (Google / Apple).
- Les photos d’aliments sont stockées dans un bucket Supabase Storage privé avec accès via une URL signée d’une durée de vie de 300 secondes.
- La base de données Postgres est protégée par le mécanisme RLS (Row Level Security) — chaque enregistrement nécessite une authentification et est isolé par Utilisateur.
- Les mécanismes de limitation du débit (Upstash Redis) et de plafonnement des coûts (limites quotidiennes d’utilisation de l’API IA) protègent l’Application contre les abus.
- Sauvegardes automatiques — instantanés quotidiens de la base de données par Supabase (conservation 7 jours, plan Pro).
XI. Dispositions finales
- Version de la Politique de confidentialité : 1.2. Dernière mise à jour : 2026-06-23.
- Les modifications de la Politique de confidentialité nécessitent d’informer les Utilisateurs 14 jours à l’avance (par analogie avec les Conditions d’utilisation — §XIII).
- Les questions concernant la Politique de confidentialité doivent être adressées par e-mail à info@kalorka.app.
- La présente Politique constitue une partie intégrante des Conditions d’utilisation de l’Application.