AIPD — Agent vocal Capi
L'AIPD(Analyse d'Impact relative à la Protection des Données, équivalent français du DPIA) est exigée par l'article 35 du RGPD pour tout traitement susceptible d'engendrer un risque élevé pour les droits et libertés des personnes. L'agent vocal Capi entre dans ce cadre (traitement de données vocales identifiantes, décisions automatisées partielles, croisement avec une base CRM). Le présent document suit la méthodologie CNIL en 4 phases et a été instruit avec le logiciel PIA open-source de la CNIL.
Phase 1 — Description du traitement et de son contexte
1.1 — Finalité
Capi est un agent conversationnel vocalopéré par PilotCrew (KEY FOR AI SAS) pour le compte de ses clients PME. Il décroche les appels entrants sur le numéro PilotCrew du client (ligne PSTN Telnyx), qualifie l'appel, déclenche des actions (prise de RDV via Cal.com, capture de lead via le tool capture_lead, envoi de récap email/SMS), et persiste un résumé écrit de l'échange. Capi peut également initier des appels sortants B2B vers des prospects ayant déjà répondu à une séquence email.
1.2 — Données traitées
- Numéro de téléphone (E.164)
- Contenu audio de l'appel (enregistré)
- Transcription textuelle (Whisper / OpenAI Realtime / ElevenLabs)
- Nom, email, société, intent si fournis pendant l'échange
- Horodatage, durée, résumé structuré généré
1.3 — Personnes concernées
Toute personne appelant ou appelée par le numéro PilotCrew du client : prospects, clients existants, partenaires.
1.4 — Sous-traitants ultérieurs (Art. 28 §2)
Telnyx (PSTN + SIP) · VAPI (orchestration de l'assistant vocal) · OpenAI ou ElevenLabs (TTS/STT, A/B routé par tenant) · Anthropic (LLM pour les décisions de tool calls) · Supabase Frankfurt (persistance) · Resend (récap email) · Cal.com (EU) (réservation). Liste exhaustive et cadres juridiques de transfert : voir le registre Article 30 filé.
1.5 — Durées de conservation
- Audio : 30 jours par défaut (paramétrable par tenant jusqu'à 12 mois).
- Transcription + résumé : 12 mois.
- Lead capturé : 3 ans après dernier contact (durée légale prospection B2B).
Phase 2 — Évaluation de la nécessité et de la proportionnalité
2.1 — Base légale (Art. 6 RGPD)
Intérêt légitime (Art. 6.1.f) du client PilotCrew pour la qualification commerciale et le support. Consentement explicite(Art. 6.1.a) lorsque l'appel relève d'un démarchage B2C, avec respect des règles Bloctel et de l'article L. 223-1 du Code de la consommation.
2.2 — Information de la personne (Art. 13)
Capi annonce systématiquement son statut d'IA en début d'appel(obligation EU AI Act Art. 50) : « Bonjour, c'est l'agent vocal IA de PilotCrew, j'enregistre cet appel pour le traiter. » L'appelant peut à tout moment demander à parler à un humain — Capi escalade alors via SMS au client.
2.3 — Proportionnalité des données collectées
Seules les données nécessaires à la finalité sont persistées. L'audio brut peut être configuré à conservation zérocôté tenant (seule la transcription est conservée). Aucune donnée sensible au sens Art. 9 RGPD n'est collectée volontairement ; si l'interlocuteur évoque spontanément une donnée sensible (santé, opinion politique, etc.), elle est purgée du résumé structuré.
2.4 — Décision automatisée (Art. 22 RGPD)
Capi prend des décisions automatisées limitées : qualification (intent classification), prise de RDV, capture de lead. Aucune décision ayant un effet juridique ou affectant significativement la personne(refus de service, scoring de crédit, etc.) n'est prise automatiquement. Le droit d'obtenir une intervention humaine est garanti via le numéro de support indiqué dans le récap envoyé après chaque appel.
Phase 3 — Étude des risques + mesures
Trois familles de risques évaluées selon la grille CNIL (gravité × vraisemblance).
3.1 — Risque d'accès illégitime aux données
Vraisemblance : limitée (TLS 1.3, signatures Ed25519 sur webhooks Telnyx, shared secret timing-safe sur webhooks VAPI, RLS Supabase par tenant_id). Gravité : importante (audio + transcript peuvent contenir des identifiants directs).
Mesures :
- Chiffrement at-rest Supabase + chiffrement en transit TLS 1.3
- RLS PostgreSQL stricte sur
voice_callspar tenant_id - Pas d'accès admin global au contenu sans audit_log
- Audit log automatique via la table ai_decisions (hash privacy-preserving)
3.2 — Risque de modification non désirée (hallucination / dérive de l'agent)
Vraisemblance : modérée — Capi peut générer un résumé inexact ou attribuer un intent erroné. Gravité : limitée — le résumé est consultable par le client avant action.
Mesures :
- Quality-judge IA gating sur les tool calls sortants (cf.
lib/outreach/quality-judge.ts) - Hard cap de 4 minutes sur la conversation (escalade humaine au-delà)
- Système prompt versionné et testé (cf.
scripts/voice/update-vapi-assistant.mjs) - Tools mid-call sont déterministes (
capture_lead,book-meeting) — pas de free-form actions
3.3 — Risque de disparition des données
Vraisemblance : faible (Supabase haute dispo + backups quotidiens 7j). Gravité : modérée (perte du résumé = re-rappel obligé).
Mesures :
- Backup automatique Supabase tier Pro (7 jours rétention)
- Idempotency sur les webhooks VAPI (déduplication par
call_control_id) - Export tenant on-demand (CSV + JSON) via
/api/settings/gdpr-deleteet/api/settings/ai-decisions/export
Phase 4 — Validation
L'AIPD a été validée le 2026-05-23par le responsable de traitement après revue interne. Réévaluation prévue annuellement ou à chaque modification matérielle (changement de fournisseur LLM, modification de la zone d'hébergement, ajout d'une catégorie de données). Tout changement matériel déclenche une notification client avec 30 jours de préavis et un droit d'opposition.
Référentiel et documents connexes
- Registre Article 30 RGPD de PilotCrew— l'inventaire complet des traitements
- Accord de sous-traitance (DPA Article 28) — opposable signé au signup
- DPIA agent conversationnel — méthode générique (article pédagogique)
- EU AI Act — engagements PilotCrew
- CNIL — méthodologie AIPD officielle