diff --git a/backend-compliance/compliance/services/doc_checks/impressum_checks.py b/backend-compliance/compliance/services/doc_checks/impressum_checks.py index cc9c704..109ff6a 100644 --- a/backend-compliance/compliance/services/doc_checks/impressum_checks.py +++ b/backend-compliance/compliance/services/doc_checks/impressum_checks.py @@ -198,4 +198,109 @@ IMPRESSUM_CHECKLIST = [ "severity": "LOW", "hint": "Art. 14(1) ODR-VO + §36 VSBG: Online-Haendler muessen den ODR-Link (https://ec.europa.eu/consumers/odr) als klickbaren Hyperlink einbinden UND erklaeren, ob sie zur Streitbeilegung bereit/verpflichtet sind. Fehlender Link ist abmahnfaehig (LG Bochum, 14 O 21/16).", }, + + # ── L1: Reglementierte Berufe (§5(1) Nr.5 TMG) ─────────────────── + { + "id": "regulated_profession", + "label": "Berufsrechtliche Angaben (§5(1) Nr.5 TMG)", + "level": 1, "parent": None, + "patterns": [ + r"(?:rechtsanwalt|anwalt|notar|steuerberater|wirtschaftspr(?:ue|ü)fer|arzt|(?:ae|ä)rzt|zahnarzt|apotheker|architekt|ingenieur|psychotherapeut|heilpraktiker)", + r"(?:kammer|berufsordnung|berufsrecht|standesrecht|zulassung)", + r"(?:(?:ae|ä)rztekammer|rechtsanwaltskammer|steuerberaterkammer|architektenkammer|ingenieurkammer)", + ], + "severity": "MEDIUM", + "hint": "§5(1) Nr.5 TMG: Bei reglementierten Berufen (Aerzte, Anwaelte, Steuerberater, Architekten) muessen angegeben werden: (1) zustaendige Kammer, (2) gesetzliche Berufsbezeichnung + Staat der Verleihung, (3) berufsrechtliche Regelungen mit Zugangsmoeglichkeit.", + }, + { + "id": "profession_chamber", + "label": "Zustaendige Kammer benannt", + "level": 2, "parent": "regulated_profession", + "patterns": [ + r"(?:(?:ae|ä)rztekammer|rechtsanwaltskammer|steuerberaterkammer|architektenkammer|ingenieurkammer|apothekerkammer)", + r"(?:mitglied|zugelassen|eingetragen)\s+(?:bei|in|der)\s+(?:der\s+)?(?:\w+)?kammer", + ], + "severity": "LOW", + "hint": "Nennen Sie die zustaendige Kammer mit vollem Namen und Sitz (z.B. 'Rechtsanwaltskammer Muenchen'). Ohne Kammerangabe fehlt die Zuordnung zur Berufsaufsicht — Verstoss gegen §5(1) Nr.5a TMG.", + }, + { + "id": "profession_title", + "label": "Berufsbezeichnung + Verleihungsstaat", + "level": 2, "parent": "regulated_profession", + "patterns": [ + r"berufsbezeichnung|gesetzliche\s+berufsbezeichnung", + r"verliehen\s+in|verleihungsstaat", + r"(?:rechtsanwalt|steuerberater|arzt|architekt)\s*(?:\(|,)\s*(?:deutschland|bundesrepublik)", + ], + "severity": "LOW", + "hint": "§5(1) Nr.5a TMG: Berufsbezeichnung (z.B. 'Rechtsanwalt') und Staat der Verleihung (z.B. 'Bundesrepublik Deutschland') angeben. Bei EU-auslaendischen Qualifikationen ist der Herkunftsstaat besonders wichtig.", + }, + { + "id": "profession_regulations", + "label": "Berufsrechtliche Regelungen + Zugang", + "level": 2, "parent": "regulated_profession", + "patterns": [ + r"(?:berufsordnung|brao|bora|steuerberatungsgesetz|stberg|bundes(?:ae|ä)rzteordnung|heilberufe|mbo|architekteng)", + r"berufsrecht|standesrecht|berufsrechtliche\s+regelung", + ], + "severity": "LOW", + "hint": "§5(1) Nr.5c TMG: Berufsrechtliche Regelungen nennen (BRAO/BORA fuer Anwaelte, MBO-Ae fuer Aerzte, StBerG fuer Steuerberater) und Link zum Volltext bereitstellen (z.B. zur BRAK oder Kammer-Website).", + }, + + # ── L1: Grundkapital (§5(1) Nr.1 TMG) ──────────────────────────── + { + "id": "share_capital", + "label": "Stammkapital / Grundkapital (GmbH/AG/UG)", + "level": 1, "parent": None, + "patterns": [ + r"stammkapital|grundkapital|haftkapital", + r"(?:kapital|einlage)\s*:?\s*(?:eur|euro|\u20ac)\s*[\d\.,]+", + r"[\d\.,]+\s*(?:eur|euro|\u20ac)\s*(?:stammkapital|grundkapital)", + ], + "severity": "LOW", + "hint": "§5(1) Nr.1 TMG i.V.m. §35a GmbHG / §80 AktG: GmbH/UG muessen das Stammkapital, AG das Grundkapital angeben. Bei nicht voll eingezahltem Kapital: Gesamtbetrag der ausstehenden Einlagen nennen. Besonders bei UG (haftungsbeschraenkt) haeufig vergessen.", + }, + + # ── L1: Aufsichtsbehoerde (§5(1) Nr.3 TMG) ────────────────────── + { + "id": "supervisory_authority", + "label": "Aufsichtsbehoerde (genehmigungspflichtige Taetigkeiten)", + "level": 1, "parent": None, + "patterns": [ + r"aufsichtsbeh(?:oe|ö)rde|genehmigungsbeh(?:oe|ö)rde|zulassungsbeh(?:oe|ö)rde", + r"gewerbeaufsicht|gewerbeamt|ordnungsamt", + r"(?:zugelassen|genehmigt|erlaubt)\s+(?:durch|von)\s+(?:der|dem|die)", + r"bafin|§\s*34[cdf]\s+gewo", + ], + "severity": "LOW", + "hint": "§5(1) Nr.3 TMG: Bei genehmigungspflichtigen Taetigkeiten (Immobilienmakler §34c GewO, Finanzanlagenvermittler §34f, Versicherungsvermittler §34d, Gastronomie, Bewachung) muss die zustaendige Aufsichtsbehoerde mit Kontaktdaten angegeben werden.", + }, + + # ── L1: Berufshaftpflichtversicherung (DL-InfoV) ───────────────── + { + "id": "professional_insurance", + "label": "Berufshaftpflichtversicherung (DL-InfoV §2(1) Nr.11)", + "level": 1, "parent": None, + "patterns": [ + r"berufshaftpflicht|haftpflichtversicherung|pflichtversicherung", + r"(?:versicherer|versicherung)\s*:?\s*[A-Z\u00c0-\u017e]", + r"deckungssumme|versicherungsschutz|geltungsbereich", + ], + "severity": "LOW", + "hint": "DL-InfoV §2(1) Nr.11: Bei gesetzlicher Pflichtversicherung (Aerzte, Anwaelte, Architekten, Steuerberater, Makler nach §34c GewO) muessen Name + Anschrift des Versicherers und raeumlicher Geltungsbereich angegeben werden.", + }, + + # ── L1: Rechtswidrige Haftungsausschluesse ──────────────────────── + { + "id": "illegal_disclaimer", + "label": "Rechtswidriger Haftungsausschluss fuer Links", + "level": 1, "parent": None, + "patterns": [ + r"haftungsausschluss|disclaimer|haftung\s+f(?:ue|ü)r\s+(?:links|inhalte)", + r"keine\s+(?:gew(?:ae|ä)hr|haftung|verantwortung)\s+f(?:ue|ü)r\s+(?:externe|verlinkte|fremde)", + r"distanzier|macht\s+sich\s+(?:nicht|kein)\s+(?:zu\s+eigen|verantwortlich)", + ], + "severity": "LOW", + "hint": "Vorsicht: Der klassische Link-Disclaimer ('Wir distanzieren uns von verlinkten Inhalten') ist seit BGH (I ZR 317/01) rechtlich wirkungslos und wird von Gerichten als Zeichen mangelnder Rechtskenntnis gewertet. Empfehlung: Entfernen Sie pauschale Disclaimer — sie schuetzen nicht und koennen kontraproduktiv sein.", + }, ]