diff --git a/admin-compliance/app/sdk/document-generator/templateRecommendations.ts b/admin-compliance/app/sdk/document-generator/templateRecommendations.ts
index 489820f..2cdeedb 100644
--- a/admin-compliance/app/sdk/document-generator/templateRecommendations.ts
+++ b/admin-compliance/app/sdk/document-generator/templateRecommendations.ts
@@ -214,13 +214,18 @@ const TEMPLATE_RULES: TemplateRule[] = [
},
// ── Drittlandtransfer (SCC + TIA) ───────────────────────────────────────
+ // SCC+TIA nur erforderlich wenn Drittlandtransfer OHNE Angemessenheitsbeschluss/DPF
{
templateType: 'transfer_impact_assessment',
label: 'Transfer Impact Assessment (TIA)',
condition: (answers) => {
const thirdCountry = answers.get('tech_third_country')
- if (thirdCountry && thirdCountry !== 'no') return 'required'
- return null
+ if (!thirdCountry || thirdCountry === 'no') return null
+ // Wenn nur DPF-zertifizierte US-Anbieter: empfohlen statt pflicht
+ if (thirdCountry === 'us_dpf_only') return 'optional'
+ // Wenn nur Laender mit Angemessenheitsbeschluss: nicht noetig
+ if (thirdCountry === 'adequate_only') return null
+ return 'required'
},
},
{
@@ -228,8 +233,10 @@ const TEMPLATE_RULES: TemplateRule[] = [
label: 'Standardvertragsklauseln (SCC) — Anhaenge',
condition: (answers) => {
const thirdCountry = answers.get('tech_third_country')
- if (thirdCountry && thirdCountry !== 'no') return 'required'
- return null
+ if (!thirdCountry || thirdCountry === 'no') return null
+ if (thirdCountry === 'us_dpf_only') return 'optional'
+ if (thirdCountry === 'adequate_only') return null
+ return 'required'
},
},
diff --git a/admin-compliance/app/sdk/vendor-compliance/transfers/page.tsx b/admin-compliance/app/sdk/vendor-compliance/transfers/page.tsx
index 2b6609b..ee3ba87 100644
--- a/admin-compliance/app/sdk/vendor-compliance/transfers/page.tsx
+++ b/admin-compliance/app/sdk/vendor-compliance/transfers/page.tsx
@@ -2,6 +2,7 @@
import { useMemo, useState } from 'react'
import { useVendorCompliance } from '@/lib/sdk/vendor-compliance'
+import { getTransferRequirement, ADEQUACY_DECISIONS, type AdequacyDecision } from '@/lib/sdk/vendor-compliance/adequacy-decisions'
import Link from 'next/link'
// ============================================================================
@@ -240,11 +241,99 @@ export default function TransfersPage() {
- {/* Help text */}
+ {/* Explanation: What do I need to do? */}
+
+
Was muss ich tun?
+
+ Wenn Ihr Unternehmen personenbezogene Daten an Empfaenger ausserhalb der EU/des EWR uebermittelt,
+ muessen Sie sicherstellen, dass ein angemessenes Datenschutzniveau besteht. Es gibt drei Wege:
+
+
+
+ {/* Option 1: Adequacy */}
+
+
+
+ Angemessenheitsbeschluss
+
+
+ Die EU-Kommission hat fuer bestimmte Laender festgestellt, dass ein angemessenes Datenschutzniveau
+ besteht. Fuer diese Laender sind keine SCC und kein TIA erforderlich.
+
+
+
+ {/* Option 2: DPF */}
+
+
+
+ DPF-Zertifizierung (nur USA)
+
+
+ US-Unternehmen koennen sich nach dem EU-US Data Privacy Framework zertifizieren.
+ Pruefen Sie unter{' '}
+
+ dataprivacyframework.gov
+ {' '}
+ ob Ihr US-Dienstleister zertifiziert ist. Falls ja: keine SCC/TIA noetig.
+
+
+
+ {/* Option 3: SCC + TIA */}
+
+
+
+ SCC + TIA erforderlich
+
+
+ Fuer alle anderen Drittlaender muessen Sie EU-Standardvertragsklauseln (SCC) abschliessen
+ und ein Transfer Impact Assessment (TIA) durchfuehren. Beides finden Sie im{' '}
+ Document Generator unter "Drittlandtransfer".
+
+
+
+
+
+ {/* Adequacy countries list */}
+
+
+ Laender mit Angemessenheitsbeschluss anzeigen ({ADEQUACY_DECISIONS.length} Laender)
+
+
- Hinweis: Fuer Datenuebermittlungen in Drittlaender ohne Angemessenheitsbeschluss sind
- EU-Standardvertragsklauseln (SCC) und ein Transfer Impact Assessment (TIA) erforderlich (EuGH Schrems II, Art. 46 DSGVO).
- Templates fuer SCC und TIA finden Sie im Document Generator unter der Kategorie "Drittlandtransfer".
+ Hintergrund — EuGH Schrems II: Der EuGH hat 2020 das EU-US Privacy Shield fuer ungueltig erklaert
+ und klargestellt, dass bei Drittlandtransfers immer geprueft werden muss, ob die Gesetze des Empfaengerstaats
+ den Schutz der uebermittelten Daten beeintraechtigen (z.B. durch Massenueberwachung oder fehlende Rechtsbehelfe).
+ Das TIA dokumentiert genau diese Pruefung. Seit Juli 2023 gibt es mit dem EU-US Data Privacy Framework einen neuen
+ Angemessenheitsbeschluss fuer DPF-zertifizierte US-Unternehmen.
)
diff --git a/admin-compliance/lib/sdk/vendor-compliance/adequacy-decisions.ts b/admin-compliance/lib/sdk/vendor-compliance/adequacy-decisions.ts
new file mode 100644
index 0000000..202e920
--- /dev/null
+++ b/admin-compliance/lib/sdk/vendor-compliance/adequacy-decisions.ts
@@ -0,0 +1,130 @@
+/**
+ * EU-Angemessenheitsbeschluesse (Art. 45 DSGVO)
+ *
+ * Laender mit Angemessenheitsbeschluss benoetigen KEINE SCC und KEIN TIA
+ * fuer Datenuebermittlungen. Die Liste wird von der EU-Kommission gefuehrt.
+ *
+ * WICHTIG: USA hat Sonderstatus — Angemessenheit gilt NUR fuer Unternehmen,
+ * die nach dem EU-US Data Privacy Framework (DPF) zertifiziert sind.
+ * Nicht-zertifizierte US-Unternehmen brauchen weiterhin SCC + TIA.
+ *
+ * Quelle: https://commission.europa.eu/law/law-topic/data-protection/
+ * international-dimension-data-protection/adequacy-decisions_en
+ */
+
+export interface AdequacyDecision {
+ /** ISO 3166-1 alpha-2 Laendercode */
+ countryCode: string
+ /** Laendername (deutsch) */
+ countryName: string
+ /** Jahr des Angemessenheitsbeschlusses */
+ since: number
+ /** Einschraenkungen (z.B. nur bestimmte Sektoren) */
+ restriction?: string
+ /** Befristet? */
+ expires?: string
+ /** Sonderstatus (z.B. DPF-Zertifizierung erforderlich) */
+ requiresCertification?: boolean
+ /** Name der erforderlichen Zertifizierung */
+ certificationName?: string
+ /** Pruef-URL fuer die Zertifizierung */
+ certificationCheckUrl?: string
+}
+
+/**
+ * Vollstaendige Liste der Laender mit EU-Angemessenheitsbeschluss.
+ * Stand: Mai 2026
+ */
+export const ADEQUACY_DECISIONS: AdequacyDecision[] = [
+ { countryCode: 'AD', countryName: 'Andorra', since: 2010 },
+ { countryCode: 'AR', countryName: 'Argentinien', since: 2003 },
+ { countryCode: 'FO', countryName: 'Faeroeer-Inseln', since: 2010 },
+ { countryCode: 'GG', countryName: 'Guernsey', since: 2003 },
+ { countryCode: 'IM', countryName: 'Isle of Man', since: 2004 },
+ { countryCode: 'IL', countryName: 'Israel', since: 2011 },
+ { countryCode: 'JP', countryName: 'Japan', since: 2019 },
+ { countryCode: 'JE', countryName: 'Jersey', since: 2008 },
+ {
+ countryCode: 'CA', countryName: 'Kanada', since: 2001,
+ restriction: 'Nur Unternehmen, die dem Personal Information Protection and Electronic Documents Act (PIPEDA) unterliegen',
+ },
+ { countryCode: 'NZ', countryName: 'Neuseeland', since: 2012 },
+ { countryCode: 'KR', countryName: 'Republik Korea (Suedkorea)', since: 2022 },
+ { countryCode: 'CH', countryName: 'Schweiz', since: 2000 },
+ {
+ countryCode: 'GB', countryName: 'Vereinigtes Koenigreich (UK)', since: 2021,
+ expires: 'Befristet, verlaengert bis 2029',
+ },
+ { countryCode: 'UY', countryName: 'Uruguay', since: 2012 },
+ {
+ countryCode: 'US', countryName: 'Vereinigte Staaten (USA)', since: 2023,
+ restriction: 'Nur Unternehmen, die nach dem EU-US Data Privacy Framework (DPF) zertifiziert sind',
+ requiresCertification: true,
+ certificationName: 'EU-US Data Privacy Framework (DPF)',
+ certificationCheckUrl: 'https://www.dataprivacyframework.gov/list',
+ },
+]
+
+/** Set der EU/EWR-Laender (kein Angemessenheitsbeschluss noetig) */
+export const EU_EEA_COUNTRIES = new Set([
+ 'AT', 'BE', 'BG', 'HR', 'CY', 'CZ', 'DK', 'EE', 'FI', 'FR',
+ 'DE', 'GR', 'HU', 'IE', 'IT', 'LV', 'LT', 'LU', 'MT', 'NL',
+ 'PL', 'PT', 'RO', 'SK', 'SI', 'ES', 'SE',
+ // EWR (nicht EU, aber gleicher Datenschutzraum)
+ 'IS', 'LI', 'NO',
+])
+
+/** Set der Laendercodes mit Angemessenheitsbeschluss */
+export const ADEQUATE_COUNTRIES = new Set(
+ ADEQUACY_DECISIONS.map((d) => d.countryCode)
+)
+
+/**
+ * Prueft ob ein Land einen Angemessenheitsbeschluss hat.
+ * Gibt das Decision-Objekt zurueck oder null.
+ */
+export function getAdequacyDecision(countryCode: string): AdequacyDecision | null {
+ return ADEQUACY_DECISIONS.find((d) => d.countryCode === countryCode) || null
+}
+
+/**
+ * Bestimmt den Transfer-Status fuer ein Land.
+ */
+export function getTransferRequirement(countryCode: string): {
+ isEU: boolean
+ isAdequate: boolean
+ requiresSCC: boolean
+ requiresTIA: boolean
+ requiresCertification: boolean
+ explanation: string
+} {
+ if (EU_EEA_COUNTRIES.has(countryCode)) {
+ return {
+ isEU: true, isAdequate: true,
+ requiresSCC: false, requiresTIA: false, requiresCertification: false,
+ explanation: 'EU-/EWR-Mitgliedstaat — keine zusaetzlichen Massnahmen erforderlich.',
+ }
+ }
+
+ const decision = getAdequacyDecision(countryCode)
+ if (decision) {
+ if (decision.requiresCertification) {
+ return {
+ isEU: false, isAdequate: true,
+ requiresSCC: false, requiresTIA: false, requiresCertification: true,
+ explanation: `Angemessenheitsbeschluss seit ${decision.since}. ${decision.restriction || ''} Pruefung der Zertifizierung unter: ${decision.certificationCheckUrl || ''}`,
+ }
+ }
+ return {
+ isEU: false, isAdequate: true,
+ requiresSCC: false, requiresTIA: false, requiresCertification: false,
+ explanation: `Angemessenheitsbeschluss der EU-Kommission seit ${decision.since}.${decision.restriction ? ` Einschraenkung: ${decision.restriction}` : ''}${decision.expires ? ` (${decision.expires})` : ''}`,
+ }
+ }
+
+ return {
+ isEU: false, isAdequate: false,
+ requiresSCC: true, requiresTIA: true, requiresCertification: false,
+ explanation: 'Kein Angemessenheitsbeschluss — EU-Standardvertragsklauseln (SCC) und Transfer Impact Assessment (TIA) erforderlich (Art. 46 Abs. 2 lit. c DSGVO, EuGH Schrems II).',
+ }
+}