diff --git a/app/services/invoice/pdf/InvoiceDocument.tsx b/app/services/invoice/pdf/InvoiceDocument.tsx
index bed32d0..205da10 100644
--- a/app/services/invoice/pdf/InvoiceDocument.tsx
+++ b/app/services/invoice/pdf/InvoiceDocument.tsx
@@ -390,7 +390,10 @@ export function InvoiceDocument({ invoice }: DocProps) {
: ""}
- {t.salutationGeneric}
+ {/* No salutation here on purpose — this is an invoice, not a
+ * letter. Dropping the line saves vertical space and avoids
+ * the formal/informal "Hallo," vs "Dear Sir or Madam" framing
+ * that doesn't belong on a tax document. */}
{t.thankYouLine}
diff --git a/scripts/render-sample.ts b/scripts/render-sample.ts
index d45f7dc..8a9c24d 100644
--- a/scripts/render-sample.ts
+++ b/scripts/render-sample.ts
@@ -544,8 +544,11 @@ async function main() {
// Informal German tone (du/dein) — make sure no formal "Sie/Ihren" remains
// in the strings we control (footer / signature lines come from settings).
- assert("DE PDF uses informal salutation 'Hallo,'", deText.includes("Hallo,"));
- assert("DE PDF no longer uses 'Sehr geehrte Damen und Herren'", !deText.includes("Sehr geehrte Damen und Herren"));
+ // The PDF intentionally has NO salutation — this is an invoice, not a
+ // letter. Both formal ("Sehr geehrte …") and informal ("Hallo,") are
+ // suppressed.
+ assert("DE PDF has no 'Hallo,' salutation", !deText.includes("Hallo,"));
+ assert("DE PDF has no 'Sehr geehrte Damen und Herren' salutation", !deText.includes("Sehr geehrte Damen und Herren"));
assert("DE PDF uses informal 'deine Bestellung'", deText.includes("deine Bestellung"));
assert(
"DE PDF payment-terms uses informal 'überweise … für dich'",