Revert generalPartners, fix shareCapital: neither is a Pflichtangabe

Corrected after user feedback: Stammkapital/Grundkapital is only required on business correspondence if voluntarily disclosed in the first place (§35a Abs. 1 S. 2 GmbHG) — not an unconditional Pflichtangabe. shareCapital's Impressum rendering stays (shown only if an admin voluntarily filled it in), but it's dropped from the email/invoice footer.

generalPartners is removed entirely — the legal basis was genuinely unclear on research (§125a HGB's Geschäftsbriefe-naming duty only applies to the narrow case where no partner is a natural person; whether §5 DDG's Impressum-specific "vertretungsberechtigte Person" requirement independently mandates it for the general OHG/KG case wasn't resolved with confidence) — reverted rather than shipped on an uncertain legal basis.

Also fixes stale "§5 TMG" citations to "§5 DDG" (TMG was replaced 14 May 2024).
This commit is contained in:
Marco
2026-07-23 14:12:35 +00:00
parent a3912a47c4
commit b5ad13cf43
5 changed files with 41 additions and 42 deletions
+6 -5
View File
@@ -79,7 +79,7 @@ export const DEFAULT_LEGAL_FOOTER_LINES: string[] = [
"E-Mail: kontakt@musterfirma.de",
];
// Every business email needs an Anbieterkennzeichnung (§5 TMG-equivalent
// Every business email needs an Anbieterkennzeichnung (§5 DDG-equivalent
// minimum for business correspondence: full name, postal address, contact,
// plus VAT ID once assigned) — not just a friendly "brand · email" line.
// Built from the same company-settings fields the invoice PDFs already
@@ -91,6 +91,11 @@ export const DEFAULT_LEGAL_FOOTER_LINES: string[] = [
// appended here when actually present, so a sole proprietorship's footer
// stays exactly as short as before this field set existed. Keep this in
// sync with the Payload backend's own copy in src/lib/sellerInfo.ts.
// `shareCapital` deliberately does NOT appear here even though it's a
// company-settings field — see CompanySettings.ts's own comment: it's a
// voluntary disclosure, not something safe to auto-inject into every
// outgoing email regardless of whether the business actually wants that
// disclosure made.
export function buildLegalFooterLines(seller: CompanySettings | null): string[] {
if (!seller) return DEFAULT_LEGAL_FOOTER_LINES;
const lines = [
@@ -102,10 +107,6 @@ export function buildLegalFooterLines(seller: CompanySettings | null): string[]
if (seller.vatId) lines.push(`USt-IdNr.: ${seller.vatId}`);
if (seller.registerCourt && seller.registerNumber) lines.push(`${seller.registerCourt} · ${seller.registerNumber}`);
if (seller.managingDirector) lines.push(`Geschäftsführung: ${seller.managingDirector}`);
if (seller.shareCapital) lines.push(`Stammkapital: ${seller.shareCapital.toLocaleString("de-DE")}`);
if (seller.generalPartners && seller.generalPartners.length > 0) {
lines.push(`Gesellschafter: ${seller.generalPartners.map((p) => p.name).join(", ")}`);
}
return lines;
}