# Optiker-Modul für PrestaShop: Installation und Einrichtung

> Überblick Mit dem Modul dfopticlens verkaufen Sie Brillen mit Sehstärke in PrestaShop 8 und 9. Auf der Seite einer Fassung wählt der Kunde einen Glastyp, gibt sein Rezept ein, wählt…

- Seite: <https://www.datafirefly.com/de/documentation/dfopticlens/>
- Sprache: de
- Aktualisiert am: 2026-09-24
- Weitere Sprachen: [fr](https://www.datafirefly.com/documentation/dfopticlens/index.md), [en](https://www.datafirefly.com/en/documentation/dfopticlens/index.md), [es](https://www.datafirefly.com/es/documentation/dfopticlens/index.md), [it](https://www.datafirefly.com/it/documentation/dfopticlens/index.md), [pl](https://www.datafirefly.com/pl/documentation/dfopticlens/index.md), [nl](https://www.datafirefly.com/nl/documentation/dfopticlens/index.md), [pt](https://www.datafirefly.com/pt/documentation/dfopticlens/index.md)
- Index: <https://www.datafirefly.com/de/documentation/llms.txt>

## Überblick

Mit dem Modul **dfopticlens** verkaufen Sie Brillen mit Sehstärke in PrestaShop 8 und 9. Auf der Seite einer Fassung wählt der Kunde einen Glastyp, gibt sein Rezept ein, wählt ein Glas unter den angebotenen Indizes, fügt Veredelungen hinzu und bestätigt eine Übersicht. Der Server prüft jeden Wert, berechnet den Preis und prüft, ob die Korrektur in der Fassung machbar ist. Der Glaspreis wird über die native Personalisierung von PrestaShop zur Fassungszeile addiert, und das Rezept begleitet die Bestellung bis zur Rechnung.

## Installation

1. Klicken Sie unter _Module > Modul-Manager_ auf _Modul hochladen_ und senden Sie `dfopticlens-1.1.0.zip`.
2. Die Installation legt das Menü _Verkaufen > Optik_ mit vier Seiten an: Rezepte, Fassungen, Gläser und Indizes, Veredelungen.
3. Fünf Gläser (1.50, 1.59 Polycarbonat, 1.60, 1.67, 1.74) und sieben Veredelungen werden mit Beispielpreisen angelegt. Passen Sie diese vor dem Start an.
4. Der Ordner `upload/dfopticlens/` wird angelegt und durch eine `.htaccess`-Datei geschützt: Rezeptdateien sind dort nie aus dem Web erreichbar.

Update von 1.0.0: Laden Sie das ZIP 1.1.0 darüber hoch. Das Update-Skript ergänzt die neuen Einstellungen und Hooks ohne Datenverlust.

## Modulkonfiguration

Die Konfigurationsseite (Schaltfläche _Konfigurieren_ des Moduls) enthält drei Blöcke.

### Rezepteingabe

- **An das Labor übermittelte Zylinderschreibweise**: Minuszylinder, Pluszylinder oder wie eingegeben. Der Kunde gibt immer die Werte seines Rezepts ein, die Umrechnung erfolgt beim Speichern.
- **Hochladen der Rezeptdatei**: deaktiviert, optional oder Pflicht, mit maximaler Größe in MB. Formate: PDF, JPG, PNG, anhand des Inhalts geprüft.
- **Warnen, wenn das Rezept älter ist als** X Jahre (0 deaktiviert).
- **Rezepte aus abgebrochenen Warenkörben löschen nach** X Tagen.
- **Datei-Upload aus dem Konto nach der Bestellung**: fügt dem Kundenkonto die Seite Meine Rezepte hinzu.
- **Option Ich kenne meinen Pupillenabstand nicht** und **verwendeter durchschnittlicher Pupillenabstand** (Standard 63 mm). Die Bestellung wird dann als zu prüfen markiert.

### Machbarkeitsregeln

- **Nicht fertigbare Gläser sperren**: standardmäßig aktiv. Deaktiviert wird die Bestellung mit Hinweis angenommen.
- **Randzugabe** und **Zugabe zum effektiven Durchmesser**, wenn ED der Fassung unbekannt ist (geschätztes ED = A + Zugabe).
- **Minimale Scheibenhöhe für Gleitsichtgläser** (28 mm) und **kurze Progressionszone unter** (32 mm).
- Warnschwellen: Unterschied zwischen den Augen, Dezentrierung pro Auge, Plusstärke bei Nylorfassungen.
- **Zieldicke** des empfohlenen Glases, **Mittendicke** der Minusgläser und **Randdicke** der Plusgläser (gebohrt oder nicht).

### Preise

- **Preise inklusive Steuer** oder netto eingegeben. Die Steuerregel des Fassungsprodukts gilt für die Gläser.
- **Zuschläge** für hohe Stärke und hohen Zylinder: Schwelle in Dioptrien und Betrag (0 deaktiviert).

## Gläser und Indizes

Unter _Verkaufen > Optik > Gläser und Indizes_ hat jedes Glas:

- einen Namen und eine Kurzbeschreibung für den Kunden, in jeder Sprache;
- den Brechungsindex für die Dickenschätzung und das Material für den Werkstattauftrag;
- die Glastypen, für die es angeboten wird, mit einem Preis pro Paar für jeden: Einstärken, Gleitsicht, ohne Korrektur;
- minimale und maximale Sphäre und maximalen Zylinder (Absolutwert, in Minuszylinder-Schreibweise wie die Herstellerbereiche);
- den größten verfügbaren Rohglasdurchmesser (0 deaktiviert die Prüfung) und ob es für randlose Fassungen gebohrt werden kann.

## Veredelungen

Unter _Veredelungen_ hat jede Veredelung einen Preis pro Paar (0 zeigt sie als inklusive an). Die **exklusive Gruppe** verhindert Kombinationen: Veredelungen mit demselben Code, zum Beispiel `tint` für phototrop, Sonnentönung und polarisiert, schließen sich gegenseitig aus. Sie können eine Veredelung auch auf bestimmte Gläser beschränken, zum Beispiel polarisiert auf die Indizes 1.50 und 1.60.

## Fassungen

Eine Fassung verknüpft ein Produkt oder eine seiner Kombinationen mit seinen Maßen. Der Gläserblock erscheint nur bei Produkten mit aktivierter Fassung.

### Fassung anlegen

1. Klicken Sie unter _Fassungen_ auf _Fassung hinzufügen_, oder auf der Produktseite im Reiter _Module_ auf _Fassungsmaße hinzufügen_.
2. Suchen Sie das Produkt nach Name, Referenz oder ID und wählen Sie _Alle Kombinationen_ oder eine bestimmte Kombination. Eine für eine Kombination angelegte Fassung hat Vorrang.
3. Geben Sie den Typ (Vollrand, Nylor, randlos), die Scheibenbreite A, den Steg DBL und die Scheibenhöhe B an, alle Pflicht. Das sind die Zahlen auf dem Bügel: 52□18 ergibt A = 52 und DBL = 18.
4. Optional: den effektiven Durchmesser ED (sonst geschätzt) und die maximale Stärke, die die Fassung aufnimmt.
5. Kreuzen Sie die angebotenen Glastypen an und bei Bedarf **Nur mit Gläsern verkaufen**.

Mit Nur mit Gläsern verkaufen öffnet die native Warenkorb-Schaltfläche die Glasauswahl. Fügt ein direkter Warenkorbaufruf die Fassung trotzdem allein hinzu, entfernt das Modul sie wieder aus dem Warenkorb.

### CSV-Import und -Export

Die Schaltfläche _CSV exportieren_ liefert eine Datei im passenden Format. Der Import akzeptiert Semikolon oder Komma und diese Spalten:

```
product;combination;frame_type;lens_width;lens_height;bridge;ed;max_power;vision_types;lens_required;active
```

- `product`: Produkt-ID oder Referenz; `combination`: Kombinations-ID oder Referenz, leer oder 0 für alle.
- `frame_type`: full, semi oder rimless; `vision_types`: single|progressive|plano.
- Eine bestehende Fassung (gleiches Produkt und gleiche Kombination) wird aktualisiert. Abgelehnte Zeilen werden mit Nummer aufgelistet.

Die Schaltfläche _Produkte neu synchronisieren_ baut die Personalisierungsfelder der Produkte neu auf, nützlich wenn ein Mitarbeiter ohne Rechte am Modul Produkte bearbeitet hat.

## Ablauf für den Kunden

1. **Typ**: Einstärken, Gleitsicht oder ohne Korrektur, je nach Angebot der Fassung. Ohne Korrektur wird der Rezeptschritt übersprungen.
2. **Rezept**: R / L-Tabelle, Pupillenabstand als ein oder zwei Werte, Datum, Datei und Notiz für den Optiker. Ein angemeldeter Kunde kann das Rezept einer früheren Bestellung übernehmen.
3. **Glas**: Karten mit Preis pro Paar, maßstabsgetreuem Querschnitt, geschätzter Dicke und empfohlenem Glas. Nicht fertigbare Gläser sind mit Begründung ausgegraut.
4. **Veredelungen**: Für das gewählte Glas nicht verfügbare Veredelungen sind ausgegraut.
5. **Übersicht**: Machbarkeitsstatus, Hinweise, Preisaufstellung und Summe aus Fassung und Gläsern.

Die Eingabe bleibt beim Neuladen der Seite erhalten und wird nach dem Hinzufügen zum Warenkorb gelöscht.

## Machbarkeitsregeln

| Prüfung | Wirkung |
| --- | --- |
| Sphäre oder Zylinder außerhalb des Glasbereichs | Glas nicht verfügbar |
| Benötigter Rohglasdurchmesser (ED + 2 × Dezentrierung + Zugabe) größer als das Rohglas | Glas nicht verfügbar, wenn die Sperre aktiv ist |
| Randlose Fassung und nicht bohrbares Material | Glas nicht verfügbar, wenn die Sperre aktiv ist |
| Höhe B unter dem Minimum für Gleitsicht | Sperrend (oder Hinweis) |
| Höhe B unter der Schwelle für kurze Progressionszone | Information |
| Stärke über dem Maximum der Fassung | Sperrend (oder Hinweis) |
| Unterschied zwischen den Augen, starke Dezentrierung, hohe Plusstärke bei Nylor, altes Rezept, unbekannter Pupillenabstand | Hinweis, Bestellung als zu prüfen markiert |

Berechnet wird in Minuszylinder-Schreibweise. Die Dicke wird mit der Pfeilhöhenformel geschätzt: Sie dient dem Vergleich der Indizes, nicht als Laborberechnung.

## Preise, Rabatte und Rechnung

Der Glaspreis wird netto in der Personalisierung der Warenkorbzeile gespeichert. PrestaShop addiert ihn zum Fassungspreis und wendet die Mehrwertsteuer des Produkts an. Hat die Fassung einen Prozentrabatt (spezifischer Preis oder Kundengruppe), wendet PrestaShop ihn auch auf die Gläser an: Das Panel zeigt den durchgestrichenen Preis und eine Zeile Aktion der Fassung gilt auch für die Gläser, damit die angezeigte Summe dem Warenkorb entspricht.

## Bestellungen und Werkstattauftrag

- Die Bestellseite im Backoffice zeigt pro Rezept einen Block: umgerechnete Werte, Glas, Veredelungen, Fassungsmaße, Dezentrierung und Mindestrohglas pro Auge, Machbarkeitshinweise und Preisaufstellung.
- **Werkstattauftrag drucken** öffnet eine druckfertige A4-Seite.
- **Rezeptdatei herunterladen** holt den vom Kunden gesendeten Scan.
- _Verkaufen > Optik > Rezepte_ listet alle Rezepte mit Status: OK, zu prüfen, nicht machbar.

## Kundenkonto: Meine Rezepte

Ein Kunde, der Gläser bestellt hat, sieht in seinem Konto den Link _Meine Rezepte_. Die Seite zeigt jedes Rezept mit der zugehörigen Bestellung. Ist der Datei-Upload optional und hat der Kunde keine Datei beigefügt, kann er sie hier senden; der Optiker findet sie dann in der Bestellung.

## Gesundheitsdaten und DSGVO

- Rezeptdateien liegen außerhalb des öffentlichen Ordners und lassen sich nur im Backoffice herunterladen.
- Rezepte aus nie bestellten Warenkörben werden nach der eingestellten Frist gelöscht, zusammen mit der zugehörigen Warenkorbzeile.
- Mit dem offiziellen Modul psgdpr umfassen Export und Löschung der Kundendaten auch die Rezepte.

## Fehlerbehebung

### Der Gläserblock erscheint nicht auf der Produktseite

Prüfen Sie, ob das Produkt eine aktivierte Fassung hat und ob das Theme den Hook `displayProductAdditionalInfo` anzeigt. Leeren Sie den PrestaShop-Cache.

### Die native Warenkorb-Schaltfläche öffnet das Panel bei einer Fassung nur mit Gläsern nicht

Das Modul fängt Schaltflächen mit `data-button-action="add-to-cart"` ab. Nutzt Ihr Theme ein anderes Attribut, greift die serverseitige Sperre trotzdem: Die Fassung allein wird aus dem Warenkorb entfernt.

### Die Summe im Panel weicht vom Warenkorb ab

Ein Rabatt als Festbetrag gilt nur für die Fassung, und eine Warenkorbregel (Gutschein) gilt für den ganzen Warenkorb: Beide erscheinen nicht im Gläser-Panel.
