Stand: 2026-04-20 | Pflicht zur Veröffentlichung / Bekanntgabe an AVV-Partner
| # | Unterauftragsverarbeiter | Sitz (Land) | Dienst | Personenbezogene Daten | Rechtsgrundlage Drittlandtransfer |
|---|---|---|---|---|---|
| 1 | Anthropic, PBC | USA (San Francisco) | Claude API — KI-Berichtstexte | Gebäudeparameter, Berechnungsergebnisse (KEINE Eigentümer-Stammdaten) | EU-Standardvertragsklauseln (SCC Modul 2) via Anthropic Commercial Terms DPA |
| 2 | [Hosting-Provider] | Deutschland | Server, Datenbank (PostgreSQL), Objektspeicher (MinIO) | Alle personenbezogenen Daten | Kein Drittlandtransfer — Server in DE |
| Datum | Änderung |
|---|---|
| 2026-04-20 | Initiale Liste erstellt |
Stand: 2026-04-20
iSFP-Dokumente unterliegen einer 10-jährigen BAFA-Aufbewahrungspflicht (Förderauflage). Alle anderen personenbezogenen Daten werden nach Vertragsende gelöscht. Nach Ablauf der 10-Jahres-Frist erfolgt automatische Löschung.
| Datenkategorie | Speicherort | Aufbewahrungsfrist | Löschauslöser |
|---|---|---|---|
| iSFP-Dokumente (Berechnungen, Berichte) | PostgreSQL + MinIO | 10 Jahre ab iSFP-Erstellungsdatum | Automatisch (Cron-Job) nach 10 Jahren |
| Eigentümer-Stammdaten (Name, Adresse, Kontakt) | PostgreSQL buildings | 10 Jahre (verknüpft mit iSFP) | Zusammen mit iSFP-Dokument |
| Gebäudefotos | MinIO sanpilot-fotos Bucket | 10 Jahre | Zusammen mit iSFP-Dokument |
| Verbrauchsdaten | PostgreSQL verbrauchsdaten | 10 Jahre | Zusammen mit iSFP-Dokument |
| Berater-Zugangsdaten / Konten | PostgreSQL (User-Tabelle) | Dauer Vertragsverhältnis + 1 Jahr | Kündigung des Beraterzugangs |
| KI-Bericht-Prompts (Claude API Logs) | Anthropic-Server (7-Tage-Default) | 7 Tage | Automatisch durch Anthropic |
| Chat-Turns (Dialog-Agent) | PostgreSQL chat_turns | 1 Jahr | Automatisch (Cron-Job) |
Datei: backend/scripts/cleanup_10_years.py
Ausführung: täglich via systemd-Timer auf dem Host-Server
[Unit]
Description=SanPilot 10-Jahres-Datenlöschung (BAFA-Aufbewahrungspflicht)
After=network.target
[Timer]
OnCalendar=*-*-01 03:00:00 # 1. jeden Monats, 3 Uhr
Persistent=true
[Install]
WantedBy=timers.target
buildings mit created_at < NOW() - INTERVAL '10 years'chat_turns → fotos (MinIO) → verbrauchsdaten → varianten → massnahmen → calculations → buildings/var/log/sanpilot/cleanup.logBeim Upload via MinIO wird automatisch mit Pillow / piexif die GPS-Information aus EXIF-Metadaten entfernt (Privacy-by-Design).
Datei: backend/storage/presigned.py — strip_gps_exif(image_bytes) vor Upload.
| Recht | Umsetzung in SanPilot |
|---|---|
| Auskunft (Art. 15) | Manuell auf Anfrage: Berater exportiert Gebäudedaten als JSON via API |
| Berichtigung (Art. 16) | Berater kann Daten in der App direkt bearbeiten |
| Löschung (Art. 17) | Nur nach Ablauf BAFA-Aufbewahrungsfrist möglich; vorher: Abwägung |
| Datenportabilität (Art. 20) | JSON-Export aus API /buildings/{id}/export (geplant) |
backend/scripts/cleanup_10_years.py implementieren/buildings/{id}/export JSON-Endpoint implementieren