Accord de sous-traitance des données (DPA)
Version 1.16 · updated October 20, 2026
Only available in French for now.
Préambule
Le présent accord de sous-traitance (le « DPA ») fait partie intégrante du contrat conclu entre :
- le Client, tel que défini dans les Conditions Générales de Vente de Skoup (les « CGV »), agissant en qualité de responsable de traitement (ou, pour une agence qui traite les données de ses propres clients, en qualité de sous-traitant de ces derniers) ;
et
- Lunify SAS, société par actions simplifiée au capital de 3 000,00 €, immatriculée au RCS de Paris sous le numéro 949 599 062, dont le siège social est situé 155 avenue de Choisy, 75013 Paris, France, éditrice du service Skoup (« Lunify »), agissant en qualité de sous-traitant.
Il a pour objet de définir les conditions dans lesquelles Lunify traite des données à caractère personnel pour le compte du Client, conformément à l'article 28 du règlement (UE) 2016/679 (« RGPD ») et à la loi n° 78-17 du 6 janvier 1978 modifiée.
Le DPA est accepté par le Client en même temps que les CGV. En cas de contradiction entre le DPA et les CGV sur la protection des données personnelles, le DPA prévaut.
Les traitements pour lesquels Lunify agit en qualité de responsable de traitement (gestion des Comptes et de l'authentification, facturation, support, sécurité, e-mails de service, prospection) sont décrits dans la Politique de confidentialité de Skoup et ne relèvent pas du DPA.
Article 1 — Définitions
Les termes « données à caractère personnel », « traitement », « responsable de traitement », « sous-traitant », « personne concernée » et « violation de données à caractère personnel » ont le sens que leur donne l'article 4 du RGPD. Les termes « Client », « Utilisateur », « Compte », « Espace », « Marque », « Mesure », « Service », « Données du Client », « Résultats », « Assistant IA » et « API publique » ont le sens défini dans les CGV.
- Données Personnelles du Client : les données à caractère personnel contenues dans les Données du Client et traitées par Lunify pour le compte du Client dans le cadre du Service.
- Sous-traitant ultérieur : tout prestataire auquel Lunify confie tout ou partie des traitements réalisés pour le compte du Client.
Article 2 — Objet et durée
2.1. Lunify est autorisée à traiter, pour le compte du Client, les Données Personnelles du Client nécessaires à la fourniture du Service décrit dans les CGV.
2.2. Le DPA s'applique pendant toute la durée du contrat et, au-delà, tant que Lunify conserve des Données Personnelles du Client (article 11).
Article 3 — Description du traitement
3.1 Nature et finalités
Le traitement a pour seules finalités la fourniture du Service au Client, à savoir :
- l'hébergement de l'Espace du Client, de ses Marques, de ses réglages et de son équipe ;
- l'import et la synchronisation du catalogue produits et des marchés depuis la boutique Shopify ou WooCommerce, un flux produit (URL ou fichier), la lecture des pages publiques du site du Client (données structurées de ses pages produit, chaque nuit) ou une saisie manuelle ;
- la réception des commandes de la boutique Shopify ou WooCommerce (lecture des commandes des 90 derniers jours pour WooCommerce et des 60 derniers jours pour Shopify à la connexion, puis réception au fil de l'eau) afin d'attribuer le chiffre d'affaires aux assistants d'IA ;
- la lecture des pages publiques des fiches que le Client déclare pour ses établissements sur des plateformes tierces (Google Maps, annuaires, plateformes de réservation), afin d'en vérifier l'exactitude et la complétude et de les rapprocher de ce que disent les Assistants IA ;
- la lecture des données de Google Search Console, de Google Analytics et de Bing Webmaster Tools connectées par le Client, et des exports du rapport « IA générative » de Google Search Console qu'il importe (impressions par jour et par page, le fichier n'est pas conservé), et le signalement à Bing des pages produit réécrites par le Service ;
- la mesure des visites du site du Client au moyen d'un script que le Client installe lui-même sur son site (ou que pose pour lui l'application Shopify, une fois la boutique connectée), commercialisé sous le nom « Skoup Analytics » (le « Script de mesure »), afin d'attribuer le trafic et les conversions (achats, inscriptions, demandes, appels) aux assistants d'IA qui les ont apportés ;
- la lecture des abonnements du compte Stripe du Client, au moyen d'une clé restreinte en lecture seule qu'il fournit, afin d'attribuer les nouveaux abonnements aux assistants d'IA ;
- l'interrogation périodique des Assistants IA au moyen des requêtes du Client et l'analyse de leurs Réponses au regard de son catalogue et de ses fiches produit ;
- l'audit technique du site du Client (exploration des pages publiques) ;
- la production des Résultats : tableaux de bord, alertes, correctifs, rapports (y compris en marque blanche), exports ;
- l'écriture, à la demande expresse du Client, de modifications dans ses fiches produit Shopify ou WooCommerce (write-back) ;
- la proposition, à la demande expresse du Client, de correctifs dans le code de son site : lecture des fichiers du dépôt GitHub qu'il a connecté, puis création d'une demande de fusion dans ce dépôt ;
- la rédaction, à la demande expresse du Client, d'une page de son site à partir du plan d'un correctif et des mesures du Service, par le modèle d'IA qui la rédige (Annexe 1), puis sa création à l'état de brouillon sur le site WordPress qu'il a connecté et la lecture de l'état de ce brouillon ; le Service ne publie jamais la page ;
- l'envoi des alertes et rapports aux destinataires désignés par le Client (e-mail, Slack) et la mise à disposition de l'API publique et des webhooks ;
- la tenue du journal d'activité de l'Espace ;
- la réponse aux questions des Utilisateurs par l'assistant conversationnel intégré au Service (l'« Assistant Skoup », CGU, article 9 bis) : lecture, en lecture seule et dans la limite des droits de l'Utilisateur qui écrit, des Données du Client nécessaires à la réponse, et leur transmission au modèle d'IA qui la rédige (Annexe 1). La conversation elle-même relève de la Politique de confidentialité (Lunify responsable de traitement) ;
- l'assistance technique au Client.
Les opérations de traitement comprennent la collecte, l'enregistrement, l'organisation, la structuration, la conservation, la consultation, l'utilisation, la communication par transmission, le rapprochement, l'effacement et la destruction.
3.2 Catégories de personnes concernées
- les membres de l'équipe du Client et, pour une agence, de ses clients, invités dans l'Espace (propriétaires, analystes, lecteurs) ;
- les destinataires externes des rapports désignés par le Client ;
- les personnes éventuellement mentionnées dans le catalogue, les fiches produit, les requêtes, les correctifs ou les commentaires saisis par le Client (par exemple un créateur ou un contact nommé dans une description produit) ;
- les clients finaux de la boutique du Client, uniquement de manière indirecte et transitoire (voir 3.3) ;
- les visiteurs du site du Client, lorsque le Client y installe le Script de mesure (voir 3.3).
3.3 Catégories de données
| Source | Données traitées | Observations |
|---|---|---|
| Organisation de l'Espace | Nom, prénom, e-mail et avatar des membres ; rôle ; Marques attribuées ; invitations en attente ; responsable d'un correctif ; acteur du journal d'activité | Le Compte lui-même relève de la Politique de confidentialité (Lunify responsable) |
| Rapports et alertes | Adresses e-mail des destinataires externes ; URL du webhook Slack (chiffrée) et nom du canal | Désignés par le Client |
| Catalogue et fiches produit | Titres, descriptions, attributs, prix, variantes, images (URL), fiches d'identité produit | En principe dépourvus de données personnelles |
| Commandes Shopify et WooCommerce | Numéro de commande, date, montants, devise, lignes de commande, pays (livraison, à défaut facturation), URL de provenance (referrer), page d'arrivée, paramètres UTM et code de provenance (ref) | Aucun nom, e-mail, adresse ni téléphone du client final n'est conservé. Les notifications reçues de Shopify peuvent contenir ces données : elles sont écartées dès la réception, avant toute mise en file d'attente, et ne sont ni enregistrées ni journalisées (y compris dans les tâches en échec et les outils de débogage) |
| Abonnements Stripe | Identifiant de l'abonnement, statut, dates de début et de résiliation, devise, montant mensuel au prix catalogue, pays du client final, provenance (domaine de provenance, paramètre utm_source) lorsque le Client l'enregistre dans les métadonnées Stripe | Aucun nom, e-mail, adresse ni identifiant client Stripe n'est conservé : ces champs sont écartés dès la lecture |
| Script de mesure (site du Client) | Identifiant de visiteur pseudonyme : une valeur aléatoire gardée en mémoire le temps de la page tant que le visiteur n'a pas accepté le cookie de mesure (mode sans traceur : rien n'est déposé ni lu sur son appareil), puis, après son accord, déposée par le site dans un cookie (skp_vid), horodatages, chemin des pages vues (sans titre ni contenu), site de provenance (referrer), paramètres de campagne (utm_*, ref), pays déduit de l'adresse IP, nom des événements de conversion envoyés par le site (y compris ceux que le site envoie déjà à Google Analytics, repris par le script sans leurs propriétés) et, pour un achat, montant et devise, et, après l'accord du visiteur seulement, identifiant et jeton technique de checkout de la commande (pour la rapprocher de la commande reçue de Shopify ou de WooCommerce) ; nombre de visites et de conversions par jour, pays et source. Sur une boutique Shopify connectée, le script prend la forme d'un pixel que le Service installe sur la boutique et que Shopify ne charge qu'après le consentement du visiteur | L'adresse IP n'est pas conservée : elle sert à déduire le pays à la réception, dans une base locale, puis est écartée (jamais enregistrée ni journalisée). Aucun contenu de formulaire, aucun paramètre d'URL autre que ceux de campagne, aucune donnée du navigateur. Visites et événements conservés 25 mois au plus |
| Lectures par les assistants (serveur du Client) | Pour chaque requête d'un agent d'IA (robot d'un éditeur d'assistant : ChatGPT-User, Perplexity-User, Claude-User…) que le serveur du Client transmet : agent reconnu, éditeur, chemin de la page lue, statut HTTP, heure, résultat de la vérification de l'adresse IP contre les plages publiées par l'éditeur. Requêtes de robots d'entreprises, sans donnée personnelle | L'adresse IP et le User-Agent ne sont pas conservés : lus à la réception pour reconnaître et vérifier l'agent, puis écartés. Lectures conservées 90 jours, totaux par jour 25 mois |
| Google Search Console | Requêtes de recherche, pages, clics, impressions, positions | Données agrégées |
| Google Analytics | Sessions, sessions engagées, conversions et revenu, par jour, pays, canal d'acquisition et page d'atterrissage | Données agrégées, sans identifiant de visiteur |
| Fiches en ligne des établissements | URL des fiches que le Client déclare sur des plateformes tierces (Google Maps, annuaires, plateformes de réservation) pour ses établissements, et les informations publiques qu'elles portent : nom, adresse, téléphone, site, catégories, horaires, nombre de prestations et de photos, note moyenne, nombre d'avis et date du dernier avis — jamais le texte ni l'auteur d'un avis | Pages publiques, lues à l'initiative du Client ; un point par semaine |
| Bing Webmaster Tools | Requêtes de recherche, clics, impressions, positions, liens entrants par page et, pour les pages les plus liées, l'adresse et le texte du lien des pages publiques qui y pointent | Données agrégées |
| Requêtes et Réponses des Assistants IA | Requêtes rédigées par le Service ou le Client ; texte des Réponses ; marques, produits, attributs et sources cités | Les requêtes ne doivent pas contenir de données personnelles (CGU, art. 6.3) |
| Contenus libres | Correctifs, commentaires, notes | Saisis par les Utilisateurs |
| Assistant Skoup | Données du Client lues pour répondre à un Utilisateur, dans la limite de ses droits : mesures et Réponses, extraits du catalogue et fiches produit, alertes et correctifs (dont le nom de leur responsable), état des intégrations et de l'abonnement, prénom, nom et rôle des membres ; noms des outils de lecture appelés pour chaque réponse | Lues au moment de la question, transmises au modèle d'IA, non copiées ailleurs que dans la réponse ; jamais l'adresse e-mail d'un membre. Messages et réponses : Politique de confidentialité (6 mois après le dernier message) |
| API publique | Journaux d'appels et de livraisons de webhooks, y compris adresse IP et agent utilisateur de l'appelant | Purgés après 30 jours |
| Configuration SSO | Paramètres du fournisseur d'identité du Client (identifiants, URL, certificat public, secret client chiffré au repos), domaines e-mail vérifiés ; pour chaque membre connecté par SSO : identifiant attribué par le fournisseur, adresse e-mail et nom transmis | Configurés par le Client ; le fournisseur d'identité est choisi et contractualisé par le Client, ce n'est pas un sous-traitant de Lunify |
| Dépôt GitHub | Fichiers du site lus pour y placer un correctif (le code peut contenir les noms ou adresses e-mail que le Client y a écrits) ; pour chaque correctif envoyé : chemins et contenu avant / après des seuls fichiers modifiés, numéro et adresse de la demande de fusion | Les fichiers lus ne sont pas conservés, seuls ceux modifiés le sont, avec le correctif ; purgés après 13 mois. Le dépôt est choisi et contractualisé par le Client : GitHub n'est pas un sous-traitant de Lunify |
| Site WordPress | Pour chaque page rédigée (à l'aperçu demandé par un Utilisateur, avant tout envoi) : le plan du correctif et la page rédigée (titre, adresse, texte) ; pour chaque page envoyée : la même page, l'identifiant et l'adresse du brouillon créé, puis son état (brouillon, publié, à la corbeille) ; le compte WordPress utilisé (son identifiant) | La page rédigée est conservée avec le correctif et purgée 13 mois après sa dernière rédaction, la page envoyée 13 mois après son envoi ; le brouillon lui-même vit sur le site du Client, qui le publie, le modifie ou le supprime. Le site est choisi et hébergé par le Client : WordPress n'est pas un sous-traitant de Lunify |
| Identifiants d'intégration | Jetons OAuth Shopify, Google (Search Console, Analytics), identifiant d'installation de l'application GitHub (les jetons GitHub sont émis pour chaque appel et jamais conservés), clé d'API REST WooCommerce (clé et secret), clé API Bing Webmaster, clé restreinte Stripe (lecture seule), mot de passe d'application WordPress (créé par le Client, révocable à tout moment dans son profil WordPress), URL de webhook Slack | Chiffrés au repos |
Aucune donnée sensible au sens de l'article 9 du RGPD ni aucune donnée relative aux condamnations pénales n'est traitée à la demande de Lunify. Le Client s'engage à ne pas en introduire dans le Service.
Article 4 — Obligations du Client
Le Client :
- fournit à Lunify des données collectées licitement et dispose d'une base légale pour chaque traitement qu'il confie à Lunify, notamment pour l'envoi de rapports à des destinataires externes et pour la connexion de sa boutique et de ses comptes tiers ;
- lorsqu'il installe le Script de mesure sur son site : (a) tant que le visiteur n'a pas accepté le cookie de mesure, l'utilise dans son mode sans traceur (
data-consent="wait"), qui ne dépose ni ne lit rien sur l'appareil du visiteur, ne rapproche aucune visite d'une commande et ne sert qu'à la mesure d'audience du site pour le compte du Client, dans les conditions d'exemption de consentement fixées par la CNIL pour la mesure d'audience ; (b) recueille le consentement de ses visiteurs avant de passer au mode cookie, qui relie les visites d'un même visiteur, lorsque la loi l'exige (article 82 de la loi Informatique et Libertés, directive 2002/58/CE) — le script ne devant être chargé qu'après ce consentement, ou configuré pour ne déposer le cookie qu'après ; (c) informe ses visiteurs de cette mesure, de son sous-traitant et de leur droit de s'y opposer dans sa propre politique de confidentialité, et donne effet à leur opposition (skoup('consent', 'off'): plus rien n'est envoyé) ; (d) n'installe le script que sur un site qu'il a le droit de mesurer ; - informe les personnes concernées, notamment les membres qu'il invite, des traitements réalisés ;
- s'abstient d'introduire des données personnelles dans les requêtes, fiches produit et autres contenus transmis aux Assistants IA ;
- documente par écrit toute instruction complémentaire ;
- veille, pendant toute la durée du traitement, au respect des obligations prévues par le RGPD ;
- pour une agence, garantit disposer d'un contrat conforme à l'article 28 du RGPD avec chacun de ses propres clients, lui permettant de recourir à Lunify.
Article 5 — Obligations de Lunify
5.1 Instructions documentées
Lunify traite les Données Personnelles du Client uniquement sur instruction documentée du Client. Les CGV, le DPA, la documentation du Service et les réglages effectués par le Client dans le Service (intégrations, destinataires, write-back, API) constituent ces instructions. Le transfert d'une Marque vers un autre Espace (CGV, article 5.8) n'est réalisé que sur instruction écrite du Client titulaire de l'Espace d'origine : la référence de cette demande est conservée dans le journal d'audit (24 mois), les Données Personnelles de la Marque sont déplacées sans copie résiduelle dans l'Espace d'origine, et le Client de l'Espace de destination en devient responsable de traitement. Si Lunify considère qu'une instruction constitue une violation du RGPD ou d'une autre disposition du droit de l'Union ou d'un État membre, elle en informe immédiatement le Client.
Lorsque Lunify est tenue de procéder à un transfert vers un pays tiers ou une organisation internationale en vertu du droit de l'Union ou d'un État membre, elle en informe le Client avant le traitement, sauf si ce droit l'interdit.
5.2 Confidentialité
Lunify garantit que les personnes autorisées à traiter les Données Personnelles du Client (salariés, mandataires sociaux, prestataires) s'engagent à respecter la confidentialité ou sont soumises à une obligation légale appropriée de confidentialité, et reçoivent la formation nécessaire.
L'équipe Lunify peut accéder à un Espace, en lecture ou, si nécessaire, en écriture, pour les besoins du support, de la sécurité ou de la maintenance du Service. Cet accès est réservé aux membres disposant d'un rôle interne (« support » en lecture seule, « admin » en lecture et écriture) et ne requiert pas l'accord préalable du Client, qui en est informé par le présent article. Chaque accès est journalisé, ouverture et fin comprises, dans un journal d'audit conservé 24 mois, avec les écritures effectuées depuis l'outil interne ; l'historique des accès du support est communiqué au Client sur sa demande écrite.
5.3 Sécurité
Lunify met en œuvre les mesures techniques et organisationnelles appropriées décrites à l'Annexe 2, afin de garantir un niveau de sécurité adapté au risque, conformément à l'article 32 du RGPD. Lunify peut faire évoluer ces mesures à condition de ne pas diminuer le niveau global de sécurité.
5.4 Aucune autre utilisation
Lunify n'utilise pas les Données Personnelles du Client à ses propres fins, ne les vend pas et ne les utilise pas pour entraîner des modèles d'intelligence artificielle.
5.5 Données agrégées et anonymisées
Le Client autorise Lunify à produire, à partir des données traitées dans le cadre du Service, des données agrégées et anonymisées et à les exploiter et publier (statistiques, benchmarks sectoriels, baromètre public de la visibilité des marques dans les réponses des Assistants IA), dans les conditions de l'article 17.4 des CGV. Cette autorisation vaut pour cette seule réutilisation, à ces seules fins.
- Données utilisées. Seules les Réponses des Assistants IA, les marques, produits, attributs et sources qu'elles citent, et les mesures qui en sont tirées entrent dans l'agrégation. Les données relatives aux membres de l'équipe, aux destinataires, aux contenus libres (correctifs, commentaires), aux commandes et aux visites mesurées par le Script de mesure n'y entrent jamais.
- Méthode. Lunify agrège les données de plusieurs clients, ne publie un résultat que s'il repose sur un nombre minimal de clients et de Réponses, et supprime les identifiants des Clients et de leurs Marques, de sorte qu'aucune personne physique ne puisse être identifiée, directement ou indirectement, par individualisation, corrélation ou inférence.
- Confidentialité du Client. Ni le Client ni ses Marques ne peuvent être identifiés sans son accord préalable et écrit.
- Compatibilité. Au regard du lien avec la finalité initiale (mesure de la visibilité des marques), de la nature des données (essentiellement non personnelles), de l'absence de conséquence pour les personnes et de l'anonymisation, les parties considèrent cette réutilisation comme compatible avec les traitements confiés à Lunify (article 6.4 du RGPD).
- Rôle de Lunify. Pour cette réutilisation, Lunify agit en qualité de responsable de traitement (article 28.10 du RGPD) et en assume les obligations, décrites dans sa Politique de confidentialité. Une fois l'anonymisation effective, les données qui en résultent ne sont plus des données à caractère personnel et sortent du champ du RGPD et du DPA.
Article 6 — Sous-traitants ultérieurs
6.1. Autorisation générale. Le Client autorise Lunify à recourir aux sous-traitants ultérieurs listés à l'Annexe 1.
6.2. Information préalable. Lunify informe le Client de tout ajout ou remplacement d'un sous-traitant ultérieur, par e-mail adressé aux propriétaires de l'Espace et/ou par une mise à jour de la liste publiée à app.skoup.ai/dpa (annexe 1), au moins trente (30) jours avant sa prise d'effet, sauf urgence liée à la sécurité ou à la continuité du Service.
6.3. Opposition. Le Client peut s'opposer, par écrit et de manière motivée, à ce changement dans ce délai. Les parties recherchent alors de bonne foi une solution. À défaut, le Client peut résilier le contrat sans frais, avec effet à la date de prise d'effet du changement, et est remboursé de la part non consommée de l'abonnement payé d'avance.
6.4. Obligations imposées. Lunify impose à chaque sous-traitant ultérieur, par contrat, des obligations de protection des données au moins équivalentes à celles du DPA, notamment des garanties suffisantes quant à la mise en œuvre de mesures techniques et organisationnelles appropriées. Lunify demeure pleinement responsable devant le Client de l'exécution, par ses sous-traitants ultérieurs, de leurs obligations.
Article 7 — Transferts hors de l'Union européenne
7.1. Lunify privilégie l'hébergement des Données du Client dans l'Union européenne : l'API, la base de données, ses sauvegardes et les files de traitement sont hébergées par Laravel Cloud dans la région AWS de Francfort, en Allemagne (eu-central-1) ; les fichiers déposés dans le Service sont stockés chez Amazon Web Services, dans la région Paris (eu-west-3) ; le rendu des rapports PDF et des pages analysées est effectué par OVH SAS en France, dans le datacenter de Gravelines ; les fonctions serveur de l'interface web sont exécutées par Vercel à Paris.
7.2. Certains sous-traitants ultérieurs (Annexe 1) sont établis aux États-Unis ou peuvent y accéder aux données. Tout transfert est encadré par l'une des garanties prévues au chapitre V du RGPD : décision d'adéquation (EU-U.S. Data Privacy Framework, pour les destinataires certifiés) ou clauses contractuelles types de la Commission européenne (décision 2021/914), complétées si nécessaire de mesures supplémentaires. La garantie applicable à chaque sous-traitant ultérieur figure dans la dernière colonne de l'Annexe 1 : Laravel, Vercel, Amazon Web Services et Stripe sont certifiés au titre du Data Privacy Framework, auquel Sentry (Functional Software, Inc.) déclare adhérer, et leurs accords de traitement prévoient en outre les clauses contractuelles types ; OpenRouter et Anthropic sont liés par les clauses contractuelles types incorporées à leurs accords de traitement.
Pour les transferts qui reposent sur les clauses contractuelles types, Lunify a documenté une analyse d'impact des transferts tenant compte de la législation et des pratiques du pays de destination, conformément aux recommandations 01/2020 du Comité européen de la protection des données. Elle applique en outre des mesures supplémentaires : minimisation des données transmises aux fournisseurs d'IA (ni adresse e-mail ni identifiants des membres, leurs prénoms, noms et rôles n'étant lus que par l'Assistant Skoup pour répondre à un membre ; aucune donnée des clients finaux de la boutique), routage limité aux fournisseurs qui n'utilisent pas les données pour entraîner leurs modèles et, pour les traitements d'analyse confiés à OpenRouter, à rétention nulle, chiffrement des communications en transit. Cette analyse est revue au moins une fois par an et à chaque évolution significative du cadre juridique ou des sous-traitants concernés.
7.3. Le Client peut obtenir sur demande une copie des garanties applicables et une synthèse de l'analyse d'impact des transferts.
Article 8 — Assistance au Client
8.1. Droits des personnes. Lunify aide le Client, par des mesures techniques et organisationnelles appropriées et dans la mesure du possible, à répondre aux demandes d'exercice des droits des personnes concernées. De nombreuses opérations sont disponibles en libre-service dans le Service (modification et retrait des membres, suppression de produits manuels, suppression de Marques ou de l'Espace, exports, API publique). Lorsqu'une personne concernée adresse directement une demande à Lunify, Lunify la transmet au Client dans les meilleurs délais et n'y répond pas sans son instruction.
8.2. Analyses d'impact et consultation préalable. Lunify fournit au Client, sur demande, les informations raisonnablement nécessaires à la réalisation d'une analyse d'impact relative à la protection des données et, le cas échéant, à la consultation préalable de l'autorité de contrôle.
8.3. Registre. Lunify tient un registre des catégories d'activités de traitement effectuées pour le compte de ses clients, conformément à l'article 30.2 du RGPD.
Article 9 — Violation de données à caractère personnel
9.1. Lunify notifie au Client toute violation de données à caractère personnel concernant les Données Personnelles du Client dans un délai maximal de soixante-douze (72) heures après en avoir pris connaissance (article 16.4 des CGV), par e-mail adressé aux propriétaires de l'Espace, et en tout état de cause dans les meilleurs délais afin de permettre au Client de respecter son propre délai de notification à l'autorité de contrôle (article 33 du RGPD).
9.2. La notification contient, dans la mesure où ces informations sont disponibles : la nature de la violation, les catégories et le nombre approximatif de personnes et d'enregistrements concernés, le nom et les coordonnées du référent de Lunify, les conséquences probables et les mesures prises ou proposées pour y remédier et en atténuer les effets. Les informations qui ne sont pas disponibles immédiatement sont communiquées de manière échelonnée, sans retard indu.
9.3. Sauf instruction contraire du Client ou obligation légale, il appartient au Client de notifier la violation à l'autorité de contrôle et, le cas échéant, aux personnes concernées.
Article 10 — Audits
10.1. Lunify met à la disposition du Client les informations nécessaires pour démontrer le respect des obligations prévues au présent DPA, notamment la présente documentation, la liste des sous-traitants ultérieurs et, le cas échéant, les attestations et rapports de certification de ses sous-traitants.
10.2. Si ces informations ne suffisent pas, le Client peut faire réaliser un audit, par lui-même ou par un auditeur indépendant tenu au secret professionnel et non concurrent de Lunify, au plus une fois par période de douze (12) mois, sauf violation de données avérée, indices sérieux d'un manquement de Lunify au DPA ou demande d'une autorité de contrôle. Le Client adresse d'abord ses questions par écrit ; Lunify y répond dans un délai de trente (30) jours. L'audit sur place ou à distance est notifié au moins trente (30) jours à l'avance, avec son périmètre, se déroule pendant les heures ouvrées, sans perturber l'exploitation du Service, et ne donne accès ni aux données des autres clients de Lunify ni aux informations couvertes par le secret des affaires ou par la sécurité du Service. Le rapport d'audit est confidentiel et communiqué à Lunify.
10.3. Chaque partie supporte ses propres frais d'audit. Les frais de l'auditeur sont à la charge du Client, sauf si l'audit révèle un manquement substantiel de Lunify au DPA, auquel cas Lunify les supporte dans une limite raisonnable et remédie au manquement sans frais pour le Client.
Article 11 — Sort des données en fin de contrat
11.1. Restitution. Pendant toute la durée du contrat, le Client peut exporter ses données au moyen des fonctions d'export du Service — notamment l'export complet de l'Espace (archive JSON ou CSV, demandée par un propriétaire, lien de téléchargement valable sept (7) jours) — et de l'API publique. Il lui appartient de le faire avant la fin du contrat (article 21 des CGV). À la fin du contrat, quelle qu'en soit la cause, et pendant la durée de conservation prévue à l'article 11.2, le Client peut en outre obtenir, sur demande écrite, la restitution des Données Personnelles du Client dans un format structuré, couramment utilisé et lisible par machine, y compris lorsque l'Espace est bloqué.
11.2. Suppression. À la fin du contrat, l'Espace est bloqué et les Données Personnelles du Client sont conservées pendant un (1) an afin de permettre une reprise de l'abonnement, puis supprimées, sauf obligation légale de conservation (pièces comptables : dix ans). Il en va de même lorsque le contrat prend fin pendant l'essai gratuit (article 4.5 des CGV) ou lorsque l'Espace est bloqué pour impayé (article 9 des CGV) : le délai d'un an court alors à compter de la fin du contrat ou du blocage. Le Client peut demander la suppression anticipée de son Espace depuis le Service (réservé aux propriétaires) ou par écrit : la suppression de l'Espace, immédiate, entraîne celle du schéma de base de données qui lui est propre.
11.3. Sauvegardes. Les copies de sauvegarde sont effacées à l'issue de leur cycle de rotation normal, sans que Lunify ne les restaure, sauf pour rétablir le Service après un incident. Elles restent protégées par le DPA jusqu'à leur effacement.
11.4. Attestation. Sur demande écrite du Client, Lunify atteste par écrit de la suppression.
11.5. Données chez les tiers. Les données présentes dans la boutique et les comptes tiers du Client ne sont pas affectées. Le Client révoque lui-même, s'il le souhaite, les accès accordés au Service (par exemple en désinstallant l'application Shopify ; Shopify en informe alors Lunify, qui marque l'intégration comme déconnectée ; ou en révoquant la clé d'API WooCommerce, ce que Lunify constate au prochain appel). À la demande de Shopify (shop/redact), les commandes de la boutique concernée sont purgées.
Article 12 — Responsabilité
La responsabilité de chaque partie au titre du DPA est régie par les stipulations de l'article 18 des CGV, dans les limites permises par l'article 82 du RGPD.
Article 13 — Droit applicable
Le DPA est régi par le droit français. Les litiges sont soumis aux juridictions désignées à l'article 24 des CGV.
Annexe 1 — Liste des sous-traitants ultérieurs
| Sous-traitant | Prestation | Données concernées | Localisation | Garantie de transfert |
|---|---|---|---|---|
| Laravel Holdings Inc., 60 Broad Street, 24th Floor #1559, New York, NY 10004, États-Unis — Laravel Cloud | Hébergement de l'API : serveurs applicatifs, base de données PostgreSQL et ses sauvegardes, files de traitement, cache, serveur temps réel | Toutes les Données du Client | UE — région AWS de Francfort, Allemagne (eu-central-1) ; requêtes acheminées par le réseau mondial de Cloudflare ; société établie aux États-Unis | DPF (Laravel Holdings Inc. certifiée) ; accord de traitement de Laravel |
| OVH SAS (OVHcloud), 2 rue Kellermann, 59100 Roubaix, France | Rendu des rapports PDF et des pages publiques des sites analysés par un navigateur sans interface | Contenu des rapports générés ; adresses des pages analysées | France — datacenter de Gravelines | Sans objet : données traitées dans l'UE, localisation non modifiable sans l'accord de Lunify. Un éventuel accès à distance par une filiale d'OVHcloud hors UE est encadré par les CCT annexées à l'accord de traitement d'OVHcloud |
| Vercel Inc., 440 N Barranca Ave #4133, Covina, CA 91723, États-Unis | Hébergement et diffusion de l'interface web | Données affichées dans l'interface et transitant par elle, adresse IP, requêtes HTTP. Aucune mise en cache serveur des Données du Client ; journaux d'exécution conservés 1 heure à 1 jour selon l'offre Vercel | Fonctions serveur exécutées à Paris, France (région cdg1) ; réseau de diffusion (CDN) mondial ; société établie aux États-Unis | DPF (Vercel Inc. certifiée) ; CCT (modules 1 à 3) prévues par l'accord de traitement de Vercel |
| Amazon Web Services EMEA SARL, 38 avenue John F. Kennedy, L-1855 Luxembourg, avec Amazon Web Services, Inc. (États-Unis) — Amazon SES | Envoi des e-mails (alertes, digests, rapports, invitations) | Adresses e-mail des destinataires, contenu des e-mails | UE — région Paris (eu-west-3) ; AWS s'engage à ne pas déplacer les données hors de la région choisie, sauf nécessité du service ou obligation légale | DPF (Amazon Web Services, Inc. certifiée) ; CCT (décision 2021/914) incorporées à l'accord de traitement d'AWS |
| Amazon Web Services EMEA SARL, 38 avenue John F. Kennedy, L-1855 Luxembourg, avec Amazon Web Services, Inc. (États-Unis) — Amazon S3 | Stockage des fichiers (avatars, logos, rapports PDF, flux produit importés) | Fichiers déposés | UE — région Paris (eu-west-3) ; même engagement de localisation | DPF (Amazon Web Services, Inc. certifiée) ; CCT (décision 2021/914) incorporées à l'accord de traitement d'AWS |
| OpenRouter, Inc., 169 Madison Ave #2404, New York, NY 10016, États-Unis | Accès aux modèles d'IA d'OpenAI (ChatGPT), Google (Gemini), Perplexity, xAI (Grok), Mistral AI, DeepSeek et Alibaba (Qwen) pour l'interrogation des Assistants IA ; traitements d'analyse (extraction des produits cités, jugement de conformité aux fiches, rédaction de fiches et de requêtes, propositions de write-back, placement des correctifs du site dans son code) | Requêtes, extraits du catalogue, fiches produit, Réponses, extraits des fichiers du site à corriger | États-Unis (Google Cloud Platform, régions américaines) ; hébergeurs des modèles hors UE, y compris en Chine pour DeepSeek et Qwen (voir ci-dessous) | CCT (décision 2021/914), incorporées à l'accord de traitement d'OpenRouter ; analyse d'impact des transferts et mesures supplémentaires (article 7.2) |
| Anthropic Ireland, Limited, 6th Floor, South Bank House, Barrow Street, Dublin 4, D04 TR29, Irlande | Interrogation du modèle Claude (y compris par lots) ; rédaction des plans de correction ; rédaction des pages envoyées en brouillon sur le site WordPress du Client ; rédaction des réponses de l'Assistant Skoup | Requêtes, pays et langue du marché ; pour les plans de correction : extraits du catalogue, extraits de Réponses, pages du site et fiches d'établissement concernées ; pour les pages en brouillon : le plan du correctif, la requête, les marques et les pages citées par les Réponses, les informations des fiches produit ; pour l'Assistant Skoup : les Données du Client lues pour répondre à l'Utilisateur (article 3.3, ligne « Assistant Skoup »), jamais l'adresse e-mail d'un membre | Hors UE : stockage aux États-Unis, calcul dans toute région disponible du groupe Anthropic | Entité contractante établie dans l'UE ; transfert vers Anthropic, PBC (États-Unis) encadré par les CCT (modules 2 et 3) incorporées à l'accord de traitement d'Anthropic ; analyse d'impact des transferts et mesures supplémentaires (article 7.2) |
| Sentry (Functional Software, Inc.), 45 Fremont Street, 8th Floor, San Francisco, CA 94105, États-Unis — à compter du 29 octobre 2026 | Suivi des erreurs et des performances de l'API (diagnostic des incidents) | Erreur survenue (message, pile d'appels, route appelée), identifiants techniques (identifiant de l'Utilisateur, de l'Espace, de la Marque), requêtes SQL sans leurs valeurs. Jamais le contenu des requêtes HTTP, d'adresse e-mail, d'adresse IP ni de cookie ; secrets masqués avant l'envoi. Conservées 90 jours au plus | UE — région de Francfort (Allemagne) ; société établie aux États-Unis | DPF (Functional Software, Inc.) ; CCT (modules 2 et 3) incorporées à l'accord de traitement de Sentry |
| Stripe Payments Europe, Limited (Irlande) | Paiement et facturation | Données de facturation du Client (Lunify responsable de traitement ; mentionné pour information) | UE / États-Unis | Vers Stripe, LLC (États-Unis) : DPF (Stripe, LLC certifiée), puis CCT en repli |
Sous-traitants de rang suivant. Laravel Cloud s'appuie sur Amazon Web Services (serveurs, région de Francfort), Neon (base de données PostgreSQL, même région) et Cloudflare (réseau qui achemine les requêtes vers l'API et la protège contre les attaques). Laravel répond d'eux dans les conditions de son accord de traitement.
Pour servir chaque requête, OpenRouter fait appel à des fournisseurs de modèles d'IA et d'infrastructure qu'il désigne (éditeurs des modèles ou hébergeurs de ces modèles, qui peuvent aussi effectuer la recherche web associée à la réponse, ainsi que ses propres prestataires techniques). Le Client autorise ces sous-traitants ultérieurs de rang suivant par catégorie. OpenRouter est tenu, par les clauses contractuelles types de son accord de traitement (clause 9), de ne les engager qu'en vertu d'un contrat leur imposant des obligations de protection des données équivalentes, et demeure responsable de leur exécution. Chaque requête exige de n'être routée que vers des fournisseurs qui ne conservent pas les données pour entraîner leurs modèles ; les traitements d'analyse (extraction, jugement, rédaction) exigent en outre des fournisseurs à rétention nulle (zero data retention). Les modèles DeepSeek et Qwen sont servis par l'hébergeur le moins cher qui respecte ces conditions, qui peut être établi hors de l'Union européenne, y compris en Chine ; ils ne reçoivent que les Requêtes neutres et le pays, la langue et la devise du marché, jamais d'extrait du catalogue ni de donnée à caractère personnel. OpenRouter ne conserve pas le contenu des requêtes. Anthropic n'utilise pas les requêtes de son API pour entraîner ses modèles et les supprime sous 30 jours, sauf signalement pour violation de sa politique d'usage ; cette conservation de 30 jours vaut aussi pour les plans de correction, les pages rédigées en brouillon et les réponses de l'Assistant Skoup, que Lunify fait rédiger par Anthropic directement (sans rétention nulle).
Services tiers connectés par le Client. Shopify, la boutique WooCommerce du Client (hébergée par lui ou son prestataire), Google (Search Console, Analytics), Microsoft (Bing Webmaster Tools), le compte Stripe du Client (distinct du compte Stripe de Lunify qui sert à sa facturation) et Slack ne sont pas des sous-traitants de Lunify : le Client les utilise sous sa propre responsabilité et selon leurs conditions, et y connecte le Service à son initiative. Les sites explorés lors de l'audit technique ou de la lecture du catalogue sont les pages publiques du site du Client. Les plateformes tierces sur lesquelles le Client déclare ses fiches (Google Maps, Doctolib, Planity, Pages Jaunes…) ne sont ni des sous-traitants ni des services connectés : Lunify y lit, à l'initiative du Client, la page publique de chaque fiche déclarée, sans compte ni jeton, et n'en conserve que les informations de l'établissement et les agrégats d'avis.
Annexe 2 — Mesures techniques et organisationnelles
Isolation et contrôle d'accès
- Isolation par Espace : les données de chaque Espace sont stockées dans un schéma PostgreSQL dédié. Chaque requête de l'application est rattachée à un seul Espace après vérification de l'appartenance de l'Utilisateur.
- Contrôle d'accès par rôle (propriétaire, analyste, lecteur) et par Marque ; un service unique décide des droits de lecture et d'écriture sur une Marque.
- Clés API à portée limitée (scopes, Marques), stockées uniquement sous forme de condensé SHA-256, révocables ; mode test isolé dans un environnement de démonstration distinct.
- Accès interne limité aux membres de l'équipe disposant d'un rôle plateforme, avec lecture seule pour le rôle support, jetons de session d'assistance à durée limitée, journal d'audit (24 mois) et historique des accès communiqué au Client sur demande.
Authentification
- Clés d'accès (passkeys / WebAuthn) comme méthode principale ; mots de passe hachés ; codes à usage unique par e-mail hachés et valables 10 minutes.
- Vérification de l'adresse e-mail à l'inscription ; liens d'invitation hachés (SHA-256) et valables 7 jours.
- Authentification unique (SSO SAML 2.0 ou OpenID Connect) configurable par le Client : assertions signées exigées (SAML), flux avec PKCE et jeton d'identité vérifié par signature (OpenID Connect), domaines e-mail prouvés par un enregistrement DNS, SSO obligatoire au choix du Client.
- Consultation et révocation des sessions actives par l'Utilisateur.
- Limitation de débit de l'API publique par clé et par adresse IP ; blocage de 15 minutes après des échecs d'authentification répétés.
Chiffrement
- Chiffrement des communications en transit (HTTPS / TLS).
- Chiffrement au repos des jetons d'accès aux services tiers (Shopify, Google Search Console, Google Analytics, connexion sociale) de la clé d'API WooCommerce, de la clé API Bing Webmaster, de la clé restreinte Stripe et de l'URL de webhook Slack, au moyen de la clé applicative. Seule une clé Stripe restreinte en lecture est acceptée : une clé secrète, qui permettrait d'écrire, est refusée.
- Liens d'installation de boutique chiffrés et hachés.
- Sauvegardes chiffrées.
Intégrité des échanges
- Vérification de la signature HMAC des notifications Shopify et WooCommerce (secret propre à chaque boutique) et du paramètre
statedes retours OAuth et d'autorisation WooCommerce. - Appels aux boutiques WooCommerce limités aux adresses publiques en HTTPS (protection contre la falsification de requêtes côté serveur).
- Signature HMAC-SHA256 horodatée des webhooks sortants, avec un secret par endpoint et rotation.
- Liens de désabonnement et de partage signés.
Minimisation et conservation
- Aucune donnée personnelle des clients finaux conservée pour les commandes ni pour les abonnements Stripe (pays seulement).
- Lectures par les assistants : seules les requêtes d'agents d'IA reconnus sont reçues ; adresse IP et User-Agent écartés après vérification, chemins sans paramètres, lectures supprimées après 90 jours.
- Script de mesure : l'adresse IP du visiteur est écartée à la réception après déduction du pays (base locale, aucun appel à un tiers), l'identifiant de visiteur est une valeur aléatoire sans lien avec une identité (gardée en mémoire de la page, sans cookie, tant que le visiteur n'a pas accepté), aucune visite sans cookie n'est rapprochée d'une commande, les URL sont réduites à leur chemin et à leurs paramètres de campagne ; visites et événements sont supprimés automatiquement après 25 mois. La collecte d'un site s'arrête à l'instant où le Client désactive ou oublie sa clé.
- Requêtes aux Assistants IA rédigées de manière neutre, sans données personnelles.
- Assistant Skoup : outils en lecture seule, exécutés avec les droits de l'Utilisateur qui écrit et limités à l'Espace courant ; aucune adresse e-mail de membre transmise au modèle ; limites quotidiennes de messages et contrôle des abus ; conversations non transmises à l'équipe supprimées 6 mois après leur dernier message.
- Fichiers privés (avatars, logos, rapports) servis par URL signées valables 60 minutes ; images re-traitées côté serveur.
- Purges automatiques : réponses brutes des Assistants IA après 16 semaines ; journaux de l'API publique, events et livraisons de webhooks après 30 jours (avec plafond de volume) ; journal d'activité après 12 mois ; liens de partage de rapports après 30 jours.
Disponibilité et résilience
- Sauvegardes de la base de données chiffrées au repos, restaurables à n'importe quel instant des 7 derniers jours, dans la région de Francfort (
eu-central-1). - Files de traitement supervisées (reprise automatique des tâches en échec, surveillance des files).
- Suspension possible d'un Espace en cas d'abus, sans perte de données.
Organisation
- Engagement de confidentialité des personnes habilitées ; accès aux secrets de production réservé aux dirigeants de Lunify.
- Procédure de gestion des incidents et de notification des violations (article 9).
- Revue des sous-traitants ultérieurs et de leurs garanties.
- Les environnements de développement n'ont pas accès à la base de données de production.