Zur Startseite Live-Demo

Eigenes Branding (White-Label)

Wozu dient das?#

Die Funktion für eigenes Branding (White-Label) ermöglicht es Gastronomiebetrieben, Franchise-Gruppen und Fachhändlern, das optische Erscheinungsbild der Kassensoftware an ihre eigene Unternehmensidentität (Corporate Identity) anzupassen. Sie können den öffentlichen Markennamen festlegen, ein hochauflösendes Firmenlogo hochladen sowie primäre Marken- und Akzentfarben definieren, die nahtlos auf Kassen-Terminals, Belegausdrucken, Kundenportalen und E-Mails angewendet werden.

Rollen#

  • Betriebsinhaber / Administrator: Vollständiger Zugriff auf die Einrichtung von Markenname, Unternehmenslogo, Farbkonzepten und Franchise-Vererbung.
  • Servicekraft / Kassenpersonal: Keine Konfigurationsrechte. Erlebt die angepasste Markenoberfläche im täglichen Kassenbetrieb.

Die Kontrastregel im Detail (Betriebssicherheit statt reine Optik)#

Um Betriebsausfälle durch unlesbare Oberflächen zu verhindern, prüft das Kassensystem jede eingegebene Markenfarbe automatisch nach dem internationalen Standard WCAG 2.1 AA auf ein relatives Kontrastverhältnis von mindestens 3,0:1 gegenüber einem hellen Hintergrund (#FFFFFF).

Beispiele für abgewiesene und akzeptierte Farbkombinationen#

FarbcodeFarbbezeichnungKontrastverhältnis zu #FFFFFFSystem-EntscheidungGrund
#FFFFFFReinweiß1,00:1❌ AbgewiesenVöllig unsichtbar (Weiß auf Weiß)
#FFFF00Reingelb1,07:1❌ AbgewiesenExtrem schwer lesbar
#F0F0F0Hellgrau1,12:1❌ AbgewiesenUnterschreitet Mindestkontrast 3,0:1
#2563EBSignalblau4,60:1✅ AkzeptiertErfüllt WCAG 2.1 AA
#DC2626Karminrot4,50:1✅ AkzeptiertGut lesbarer Akzent
#0F172ADunkelmarine15,80:1✅ AkzeptiertExzellenter Kontrast

Logo-Anforderungen & Automatisierte Sicherheitsprüfung#

Jedes hochgeladene Firmenlogo durchläuft vor der Speicherung automatisierte Validierungsschritte:

  1. Erlaubte Dateiformate: PNG (.png), JPEG (.jpg, .jpeg), WebP (.webp), SVG (.svg).
  2. Maximale Dateigröße: Genau 2 MB (2.097.152 Bytes). Größere Dateien werden sofort abgelehnt.
  3. Magic-Byte- & Header-Prüfung: Das System prüft die ersten Bytes der Datei. Das bloße Umbenennen einer Textdatei (z. B. foto.txt in foto.png) wird erkannt und verweigert.
  4. SVG-Sicherheitsbereinigung: SVG-Vektordateien werden auf eingebettetes Schadcode-Verhalten analysiert. Dateien mit <script>-Tags, Event-Handlern (onload=, onclick=), JavaScript-URIs (javascript:) oder Frames (<iframe>, <embed>) werden aus Sicherheitsgründen abgewiesen.

Vererbungshierarchie bei Franchise-Gruppen#

Bei Betrieben, die einer Franchise-Gruppe oder einem Filialnetz angehören, löst das Kassensystem das Branding über eine dreistufige Logik auf:

  1. Mandanten-Branding (Höchste Priorität): Wurde für den einzelnen Standort explizit ein Branding konfiguriert, gilt dieses primär.
  2. Franchise-Gruppen-Vererbung (Mittlere Priorität): Fehlt ein eigenes Standort-Branding, erbt der Betrieb Markenname, Logo und Farbcodes automatisch von der übergeordneten Franchise-Gruppe (is_inherited: true).
  3. System-Standard (Fallback): Ist weder auf Standort- noch auf Franchise-Ebene ein Branding hinterlegt, greift das System auf die Vorgaben zurück (brand_name: "Kassensystem", primary_color: "#1E293B", accent_color: "#2563EB", is_default: true).

Unveränderbarkeit fiskalischer Beleginhalte (§ 146a AO & KassenSichV)#


Voraussetzungen#

  • Ein Benutzerkonto mit Administratorrechten.
  • Der Backoffice-Bereich Eigenes Branding (White-Label). Sie öffnen ihn im Backoffice über den Menüpunkt Branding (nur Administrator).
  • Eine vorbereitete Logodatei (max. 2 MB) und die Hex-Farbcodes Ihres Betriebs.

Bildschirm für Bildschirm#

1. Backoffice-Bereich Eigenes Branding (White-Label)#

Oben stehen der Titel Eigenes Branding (White-Label) und die Zeile Passen Sie Markennamen, Farben und Firmenlogo für Terminals, Belege und Gästeseiten an. Darunter zeigt eine Plakette, woher das Erscheinungsbild kommt: Betriebseigenes Branding, Geerbt von Franchise-Gruppe oder System-Standard.

Eigenes Branding Bereich Eigenes Branding mit Herkunfts-Plakette, Karte Erscheinungsbild mit Markenname, Primärfarbe, Akzentfarbe und Branding speichern, Karte Firmenlogo hochladen und der Live-Vorschau mit den Umschaltern Kassen-Terminal, Beleg und Gästeansicht. BACKOFFICE VERLASSEN >_ BACKOFFICE Verwaltung PRODUKT-LAYOUT MENÜ-EDITOR LAGERVERWALTUNG PREIS- & RABATTREGELN RAUMPLAN-EDITOR TISCH-LEBENSZYKLUS GESCHÄFT FISKAL DRUCKEN GERÄTE ROLLEN & BERECHTIGUNGEN KI-ASSISTENT INHABER-DASHBOARD SCHICHTVERWALTUNG KARTENABSTIMMUNG DATENEXPORTE NEUER MANDANT QR-CODES KUNDEN STANDORTE GUTSCHEINE ARBEITSZEIT KORRIGIEREN MARKETING PMS FRANCHISE BRANDING Eigenes Branding (White-Label) Passen Sie Markennamen, Farben und Firmenlogo für Terminals, Belege und Gästeseiten an. Betriebseigenes Branding Erscheinungsbild MARKENNAME Burger & Bar Berlin PRIMÄRFARBE #0F172A AKZENTFARBE #DC2626 Kontrast-Prüfung nach WCAG 2.1 AA (Mindestens 3.0:1) sichert die Lesbarkeit im Stoßgeschäft. Branding speichern Firmenlogo hochladen Aktuelles Logo Zum Hochladen klicken Erlaubt: PNG, JPEG, WebP, SVG. Max. 2 MB. Live-Vorschau Kassen-Terminal Beleg / Bon Gästeansicht Burger & Bar Berlin Abrechnen 1 2 3 4 5 6
Eigenes Branding mit Formular, Logo-Bereich und Live-Vorschau
  • 1 Die Plakette für die Herkunft des Erscheinungsbilds.
  • 2 Die Karte Erscheinungsbild mit Markenname, Primärfarbe und Akzentfarbe. Jede Farbe hat einen Farbwähler und ein Hex-Feld.
  • 3 Der Hinweis Kontrast-Prüfung nach WCAG 2.1 AA (Mindestens 3.0:1) sichert die Lesbarkeit im Stoßgeschäft.
  • 4 Branding speichern prüft den Kontrast und speichert. Die Kasse meldet Branding gespeichert. Ist eine Farbe zu hell, erscheint stattdessen oben ein roter Hinweis Zu geringer Kontrast … und nichts wird gespeichert.
  • 5 Die Karte Firmenlogo hochladen mit der Fläche Zum Hochladen klicken. Darunter stehen die erlaubten Formate. Ein vorhandenes Logo erscheint darüber unter Aktuelles Logo; nach dem Hochladen meldet die Kasse Logo hochgeladen.
  • 6 Die Live-Vorschau mit den drei Umschaltern Kassen-Terminal, Beleg / Bon und Gästeansicht (Self-Order). Sie zeigt sofort, wie Name, Farben und Logo wirken, noch bevor Sie speichern.

2. POS-Terminal & Kassenoberfläche#

  • Header-Leiste: Zeigt den konfigurierten Markennamen oben links sowie Akzentfarben auf aktiven Bedienelementen und Navigationsreitern.
  • Anmeldebildschirm: Präsentiert das Firmenlogo zentriert über der PIN-Eingabe.

3. Kassenbeleg (Thermal & PDF)#

  • Thermal-Ausdruck (ESC/POS): Druckt das Schwarz-Weiß-Logo im nicht-fiskalischen Kopfbereich über dem Betriebsnamen.
  • PDF- & HTML-Beleg: Stellt das hochauflösende Firmenlogo mit farbiger Randlinie im Kopfbereich dar, während der untere Belegteil den grauen TSE-Fiskalblock zeigt.

4. Gästeschnittstellen (Feedback & Self-Order)#

  • Online-Bestellung & Self-Order-Kiosk: Stellt den Header im primären Farbton dar und hebt Schaltflächen in der Akzentfarbe hervor.

Schritt für Schritt#

Pfad A: Eigenes Branding für einen Einzelbetrieb einrichten#

  1. Melden Sie sich als Administrator im Backoffice an.
  2. Öffnen Sie den Bereich Eigenes Branding (White-Label).
  3. Geben Sie unter Markenname Ihren gewünschten Betriebsnamen ein.
  4. Tragen Sie unter Primärfarbe Ihren Hex-Code ein (z. B. #0F172A).
  5. Tragen Sie unter Akzentfarbe Ihren Hex-Code ein (z. B. #DC2626).
  6. Tippen Sie auf Branding speichern. Das System prüft den Kontrast. Bei Erfolg erscheint Branding gespeichert.
  7. Tippen Sie unter Firmenlogo hochladen auf die Fläche Zum Hochladen klicken und wählen Sie Ihre Logodatei. Das Logo wird sofort hochgeladen und geprüft; bei Erfolg erscheint Logo hochgeladen.

Pfad B: Branding auf Franchise-Ebene vererben oder überschreiben#

  1. Konfigurieren Sie das Branding in der Hauptverwaltung der Franchise-Gruppe.
  2. Für Filialen, die dieses Branding übernehmen sollen, lassen Sie die Felder im Mandanten-Branding leer. Die Plakette zeigt Geerbt von Franchise-Gruppe.
  3. Wünscht eine Filiale ein eigenes Logo oder abweichende Farben, tragen Sie die Daten direkt im Mandanten-Branding ein. Das Standort-Branding überschreibt die Franchise-Vorgabe.

Pfad C: Branding auf System-Standard zurücksetzen#

Die Maske hat weder eine Schaltfläche zum Zurücksetzen noch zum Entfernen des Logos. Solange weder für den Betrieb noch für die Franchise-Gruppe ein Branding hinterlegt ist, gilt der System-Standard (Kassensystem, #1E293B, #2563EB), und die Plakette zeigt System-Standard.


Was passiert im Hintergrund#

Beim Speichern des Logos speichert der Dienst branding_service.py die Datei unter uploads/branding/{tenant_id}_{uuid}.png auf dem Server. Gleichzeitig wird der relative Pfad in der Datenbank unter BrandingSettings abgelegt. Bei jedem Aufruf der Kassenoberfläche oder Generierung eines Belegs fragt das System die Schnittstelle GET /api/v1/tenant-settings/branding ab und wendet die aufgelösten Farben und Pfade dynamisch an.


Häufige Probleme (Original-Fehlermeldungen aus dem Backend)#

1. Meldung: Color #FFFFFF fails legibility check against light background (contrast ratio 1.00:1 is below minimum 3.00:1).#

  • Ursache: Die gewählte Primär- oder Akzentfarbe ist zu hell (z. B. Weiß oder Gelb) und unterschreitet das Mindest-Kontrastverhältnis von 3,0:1 gegenüber hellem Hintergrund.
  • Lösung: Wählen Sie einen dunkleren Farbton der Markenfarbe, um die Lesbarkeit im Kassenbetrieb zu gewährleisten.

2. Meldung: Invalid hex color format: {color_code}. Expected format #RRGGBB.#

  • Ursache: Der eingegebene Farbcode entspricht nicht dem 6-stelligen Hex-Format (z. B. #FFF statt #FFFFFF oder fehlendes #-Zeichen).
  • Lösung: Geben Sie den Farbcode exakt im Format #RRGGBB an (z. B. #0F172A).

3. Meldung: Logo file size ({bytes}) exceeds maximum permitted limit of 2097152 bytes (2MB).#

  • Ursache: Die hochgeladene Logodatei ist größer als das Serverlimit von 2 Megabyte.
  • Lösung: Komprimieren Sie das Bild mit einem Bildbearbeitungsprogramm vor dem Hochladen.

4. Meldung: Unsupported logo format: content-type '{content_type}', extension '{ext}'. Allowed: PNG, JPEG, WEBP, SVG.#

  • Ursache: Es wurde ein nicht unterstütztes Dateiformat gewählt (z. B. BMP, GIF oder TIFF).
  • Lösung: Konvertieren Sie das Logo in ein unterstütztes Format (PNG, JPEG, WebP oder SVG).

5. Meldung: Logo file headers do not match claimed image format.#

  • Ursache: Die Dateiendung passt nicht zum tatsächlichen Inhalt der Datei (z. B. eine umbenannte Text- oder PDF-Datei).
  • Lösung: Exportieren Sie das Logo korrekt aus Ihrer Grafiksoftware als echte PNG- oder JPEG-Datei.

6. Meldung: SVG logo contains disallowed executable script or event handler payload.#

  • Ursache: Die hochgeladene SVG-Vektorgrafik enthält potenziell schädliche Skripte (<script> oder JavaScript-Attribute).
  • Lösung: Bereinigen Sie die SVG-Datei in Ihrem Vektoreditor (z. B. Illustrator oder Inkscape) durch Umwandlung aller Objekte in reine Pfade und Entfernung interaktiver Skripte.

7. Meldung: Invalid SVG XML structure: {e}#

  • Ursache: Die SVG-Datei ist beschädigt oder enthält fehlerhaften XML-Code.
  • Lösung: Öffnen Sie das Bild in einem Grafikprogramm und speichern Sie es erneut als korrekte SVG-Datei ab.

8. Meldung: Logo file not found#

  • Ursache: Die im System hinterlegte Bilddatei wurde auf dem Server gelöscht oder verschoben.
  • Lösung: Laden Sie das Firmenlogo im Backoffice erneut hoch.

9. Meldung: Uploaded logo file is empty.#

  • Ursache: Die hochgeladene Datei hat eine Dateigröße von 0 Bytes.
  • Lösung: Überprüfen Sie die Datei auf Ihrem Computer und wiederholen Sie den Upload.

Grenzen#

  • Keine freie Beleg-Umgestaltung: Es können keine benutzerdefinierten Schriftarten oder eigenen CSS-Layouts in den Kassenbon eingefügt werden.
  • Fiskalblock bleibt unveränderbar: Der gesetzliche TSE-Block am Ende jedes Belegs kann weder farblich angepasst noch ausgeblendet werden.
  • Keine dynamischen Animationen: Als Logo werden nur statische Bilddateien akzeptiert; animierte WebP- oder SVG-Animationen werden nicht unterstützt.

Dieses Kapitel gehört zum Merkuron-Handbuch für Inhaber und Servicepersonal.