> ## Documentation Index
> Fetch the complete documentation index at: https://dokumentation.websale.de/llms.txt
> Use this file to discover all available pages before exploring further.

# Upload-Modul integrieren

> Das Upload-Modul im Shop einrichten: Freischaltung, Produktkennzeichnung, wsupload.config, Template und Links zum Modul.

Die Einrichtung des Upload-Moduls verteilt sich auf drei Orte: die Absprache mit der WEBSALE AG, die Konfiguration im Online-Servicebereich und die Templates in Ihrem Shop. Die folgenden acht Schritte gehen sie der Reihe nach durch.

Die Anleitung gilt für beide Versionen des Moduls. Der einzige Unterschied liegt in Schritt 6, bei der Wahl des Templates. Wenn Sie an einer bestehenden Integration der bisherigen Version etwas ändern wollen, folgen Sie derselben Anleitung.

## Schritt 1: Freischaltung und Absprachen

Lassen Sie das Upload-Modul von der WEBSALE AG für Ihren Shop freischalten. Klären Sie dabei gleich mit, welche der folgenden Funktionen Sie brauchen.

| Funktion | Zu klären |
| - | - |
| Dateien über 512 MB | erfordert die aktuelle Modulversion und eine entsprechende Einstellung |
| Virenprüfung je Upload | optional, wird serverseitig eingerichtet |
| Abschluss je Bestellposition | erlaubt dem Käufer, einzelne Positionen fertigzumelden |

Erfragen Sie außerdem die Adresse des SFTP-Bereichs, aus dem Sie die hochgeladenen Dateien abholen.

> [!WARNING]
>
> Testen Sie den SFTP-Zugang, **bevor** der erste Kunde etwas hochlädt, und legen Sie fest, wo die Dateien in Ihrem internen System landen sollen. Ein Upload-Produkt ohne funktionierenden Abholweg erzeugt Bestellungen, die Sie nicht produzieren können.

## Schritt 2: Upload-Produkte kennzeichnen

Kennzeichnen Sie die betroffenen Produkte im WSPManager oder in Ihrem Warenwirtschaftssystem.

## Schritt 3: Das Modul in der Shopkonfiguration aktivieren

```ini theme={"theme":{"light":"github-light","dark":"github-dark"},"languages":{"custom":["/languages/websale.json"]}}
<Upload>
   Allow = yes
</Upload>
```

Referenz: [Abschnitt Upload](https://dokumentation.websale.de/v8s/referenz/konfigurationen/shopkonfiguration-shop-config/externe-dienste-und-schnittstellen.md#upload)

## Schritt 4: Die Upload-Konfiguration anlegen

Legen Sie im Online-Servicebereich im Dienst "Konfigurationen" für den betreffenden Subshop eine neue Konfiguration an, Name `wsupload`, Erweiterung `config`.

In dieser Datei steckt der größte Teil dessen, was das Modul ausmacht.

| Abschnitt | Inhalt |
| - | - |
| `<Settings>` | Datums- und Zeitformat, erlaubte Dateiendungen, Verhalten bei abgelehnten Dateien |
| `<UploadMessages-Txt>` | Beschriftungen und Meldungstexte des Moduls |
| `<Mime-Type>` | je Dateiendung die zulässigen MIME-Typen |
| `<+FileInfo>` | je Eintrag eine Zeile der Auswahlliste "Inhalt des Dokuments" |
| `<Templates>` | ein abweichendes Template für den Anfrage-Modus |

Eine vollständige Vorlage mit Beschreibung aller Parameter steht in der Referenz. Übernehmen Sie sie in die neu angelegte leere Datei, passen Sie sie an, speichern und aktivieren Sie sie.

Die Auswahlliste "Inhalt des Dokuments" auf dem Upload-Formular entsteht aus den Abschnitten `<+FileInfo>`. Jeder Abschnitt hat eine Beschriftung für den Käufer und einen Code, der mit der Datei gespeichert wird. Über den Code erkennen Sie später in der Produktion, wofür eine Datei gedacht war.

Referenz: [wsupload.config](https://dokumentation.websale.de/v8s/referenz/konfigurationen/konfiguration-wsupload-config.md)

## Schritt 5: Die MIME-Type-Prüfung einrichten (optional)

Die Prüfung vergleicht den tatsächlichen Dateityp mit der Dateiendung. Im Abschnitt `<Mime-Type>` hinterlegen Sie je Endung die zulässigen Typen.

```ini theme={"theme":{"light":"github-light","dark":"github-dark"},"languages":{"custom":["/languages/websale.json"]}}
<Settings>
   ...
   ShowErrorOnMimeTypeMismatch = yes
   ShowErrorOnVirusDetection   = yes
   ...
</Settings>
```

Die beiden Parameter steuern, was mit einer beanstandeten Datei geschieht.

| Wert | Der Käufer sieht | Die Datei |
| - | - | - |
| `yes` | eine Fehlermeldung | wird nicht gespeichert |
| `no` | nichts | landet im Quarantäne-Verzeichnis, Sie erhalten eine Benachrichtigung per E-Mail |

> [!WARNING]
>
> Eine Datei wird auch dann beanstandet, wenn ihre Dateiendung in `<Mime-Type>` **gar nicht** aufgeführt ist. Eine unvollständige Liste blockiert also legitime Dateien. Nehmen Sie jede Endung auf, die Ihre Kunden liefern sollen, und prüfen Sie die Liste, wenn sich Kunden über abgelehnte Dateien beschweren.

Es gibt vier Gründe für eine Ablehnung: ein gefundener Virus, eine nicht durchführbare Prüfung, ein nicht passender MIME-Typ und eine nicht konfigurierte Dateiendung. Die Benachrichtigungs-E-Mail bei `no` unterscheidet diese Fälle, Sie sehen also, ob es ein Angriff oder ein Konfigurationsfehler war.

Mit `no` laufen die Dateien still in die Quarantäne, und der Käufer glaubt, sein Upload sei durchgegangen. Das ist bei einem echten Virus erwünscht, bei einem Konfigurationsfehler aber unangenehm. Mit `yes` merkt der Käufer sofort, dass etwas nicht stimmt.

## Schritt 6: Das Template einbinden

Weisen Sie das Upload-Template in der `shop.config` zu.

```ini theme={"theme":{"light":"github-light","dark":"github-dark"},"languages":{"custom":["/languages/websale.json"]}}
<Templates>
   ...
   Upload = ws_upload.htm
   ...
</Templates>
```

> [!WARNING]
>
> Dieser Eintrag ist zwingend. Fehlt er oder ist er leer, startet das Modul nicht und meldet stattdessen einen Fehler.

Legen Sie das Template unter diesem Namen in Ihrem Templateverzeichnis an, beispielsweise `benutzer/templates/translation`. Als Ausgangspunkt stehen fertige Vorlagen bereit, je eine für die aktuelle und für die bisherige Modulversion. Sie enthalten alle funktionalen Bereiche und müssen nur gestaltet werden.

> [!WARNING]
>
> Auf diesem Template dürfen **ausschließlich** die Tags des Upload-Moduls verwendet werden. Es wird nicht vom Shop ausgeliefert, sondern vom Upload-Modul, und die gewohnten Shop-Tags stehen dort nicht zur Verfügung.

In der aktuellen Version wurden einige Tags der bisherigen Version ersetzt. Die Hinweise dazu stehen bei den jeweiligen Tag-Beschreibungen.

Materialien: [Materialien zum Upload-Modul](https://dokumentation.websale.de/v8s/upload-modul/upload-modul.md)

Referenz: [Tags zum Upload-Modul](https://dokumentation.websale.de/v8s/referenz/tags/upload-modul-tags.md)

## Schritt 7: Fehlermeldungen ergänzen (nur bisherige Version)

Dieser Schritt entfällt bei der aktuellen Version. Sie gibt die Meldungen bei aktivierter Prüfung von selbst aus.

Bei der bisherigen Version ergänzen Sie die beiden Meldungsbereiche im Template selbst.

```html theme={"theme":{"light":"github-light","dark":"github-dark"},"languages":{"custom":["/languages/websale.json"]}}
{MimeTypeMismatch}
   Der Dateityp ~MimeType~ der Datei ~FailedFile~ passt nicht zur Dateiendung ~FileExtension~.
   Bitte verwenden Sie eine andere Datei und versuchen Sie es erneut.
{/MimeTypeMismatch}

{VirusDetected}
   Die Datei ~FailedFile~ kann nicht verarbeitet werden.
   Bitte verwenden Sie eine andere Datei und versuchen Sie es erneut.
{/VirusDetected}
```

Formulieren Sie die Virus-Meldung zurückhaltend. In den meisten Fällen hat der Käufer keinen Virus verschickt, sondern eine Datei mit einer Endung, die nicht zu ihrem Inhalt passt, beispielsweise ein umbenanntes Bild. Eine Meldung, die ihm einen Virus unterstellt, verunsichert ihn ohne Anlass.

Referenz: [MimeTypeMismatch](https://dokumentation.websale.de/v8s/referenz/tags/upload-modul-tags.md#die-platzhalter-im-uberblick) · [MimeType](https://dokumentation.websale.de/v8s/referenz/tags/upload-modul-tags.md) · [FailedFile](https://dokumentation.websale.de/v8s/referenz/tags/upload-modul-tags.md) · [FileExtension](https://dokumentation.websale.de/v8s/referenz/tags/upload-modul-tags.md) · [VirusDetected](https://dokumentation.websale.de/v8s/referenz/tags/upload-modul-tags.md#die-platzhalter-im-uberblick)

## Schritt 8: Die Links zum Modul setzen

Auf der Bestelleingangsbestätigungsseite `ws_confirm.htm` und in der Bestätigungs-E-Mail `mail_customer_order.htm` setzen Sie den Link zum Upload.

```html theme={"theme":{"light":"github-light","dark":"github-dark"},"languages":{"custom":["/languages/websale.json"]}}
{WS-UploadID}
   <a href="~WS-OrderUploadLink~">Zum Datei-Upload</a>
{/WS-UploadID}
```

Die Klammerung `{WS-UploadID}` zeigt den Link nur bei Bestellungen, die tatsächlich ein Upload-Produkt enthalten. Ohne sie stünde er bei jeder Bestellung und führte ins Leere.

> [!WARNING]
>
> Der Link in der E-Mail ist der wichtigere von beiden. Die Bestätigungsseite sieht der Käufer einmal, die E-Mail behält er. Wer nur die Seite verlinkt, bekommt Support-Anfragen von Kunden, die den Weg zurück nicht finden.

Für den späteren Upload ohne vorliegende Bestellung setzen Sie zusätzlich einen Menüpunkt.

```html theme={"theme":{"light":"github-light","dark":"github-dark"},"languages":{"custom":["/languages/websale.json"]}}
<a href="~WS-UploadLinkWithoutID~">Datei-Upload</a>
```

Über diesen Weg gibt der Käufer selbst seine Auftragsnummer oder seine Upload-ID ein. Der Menüpunkt gehört deshalb an eine dauerhaft sichtbare Stelle, beispielsweise in die Fußzeile.

Referenz: [WS-UploadID](https://dokumentation.websale.de/v8s/referenz/tags/ws/merkzettel-vergleich-upload-und-externe-dienste.md#die-tags-im-uberblick) · [WS-OrderUploadLink](https://dokumentation.websale.de/v8s/referenz/tags/ws/merkzettel-vergleich-upload-und-externe-dienste.md#das-upload-modul) · [WS-UploadLinkWithoutID](https://dokumentation.websale.de/v8s/referenz/tags/ws/merkzettel-vergleich-upload-und-externe-dienste.md#das-upload-modul)

## Danach

Damit ist das Upload-Modul eingerichtet und aktiv. Wenn Ihre Kunden das Modul nach der Bestellung über einen geschützten Link erreichen sollen, folgt noch ein Schritt.

Wegweiser: [Upload-Modul mit gesichertem Link aufrufen](https://dokumentation.websale.de/v8s/upload-modul/upload-modul-mit-gesichertem-link-aufrufen.md)

## Verwandte Themen

* Wegweiser: [Upload-Modul](https://dokumentation.websale.de/v8s/upload-modul/upload-modul.md)
* Wegweiser: [Upload-Modul mit gesichertem Link aufrufen](https://dokumentation.websale.de/v8s/upload-modul/upload-modul-mit-gesichertem-link-aufrufen.md)
* Referenz: wsupload.config


## Related topics

- [Upload-Modul](https://dokumentation.websale.de/v8s/upload-modul/upload-modul.md)
- [Upload-Modul: Tags](https://dokumentation.websale.de/v8s/referenz/tags/upload-modul-tags.md)
- [Upload-Modul mit gesichertem Link aufrufen](https://dokumentation.websale.de/v8s/upload-modul/upload-modul-mit-gesichertem-link-aufrufen.md)
- [Upload-Modul für Formulare mit INQUIRY](https://dokumentation.websale.de/v8s/upload-modul/upload-modul-fuer-formulare-mit-inquiry.md)
- [Upload-Produkte anbieten](https://dokumentation.websale.de/v8s/produkte/upload-produkte-anbieten.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.