> ## 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.

# Weitere Import-Dateien

> Importdateien für Produktkundengruppen, Kundenkonten und Bonuspunkte, Angebotsdaten, kundenabhängige Bestellmengen und Prime-Pakete.

Neben den Kerndateien für Stammdaten, Adressen und Bankverbindungen kennt der Kundenimport eine Reihe weiterer Dateien. Sie sind optional und werden nur dann benötigt, wenn Ihr Shop die jeweilige Funktion einsetzt. Die Kerndateien sind unter [Import-Dateien](https://dokumentation.websale.de/v8s/schnittstellen/kundendaten/ws-sftp-kunden-pro/import-dateien.md) beschrieben.

| Importdaten | Dateinamen |
| - | - |
| Produktkundengruppen (Zuordnung Kunde zu Gruppe) | `groupproductupdate.csv`, `groupproductdelete.csv` |
| Kundenkonten, Bonuspunkte, Zuschüsse | `accountupdate.csv` |
| Angebotsdaten | `offerheadupd`, `offerprodupd`, `offerdel` (`.dat` oder `.csv`) |
| Kundenabhängige Bestellmengen | `orderquantityupdate.csv`, `orderquantitydelete.csv` |
| Prime-Pakete | `primeupdate.csv`, `primedelete.csv` |

Alle Dateien liegen wie die Kerndateien im Verzeichnis `customerimport`. Die einzige Ausnahme sind die Angebotsdateien in der Variante `.dat`, die im Verzeichnis `data-exchange` erwartet werden.

## Produktkundengruppen

Über Produktkundengruppen blenden Sie Kategorien im Shop abhängig davon ein oder aus, welcher Kunde angemeldet ist. Die Zuordnung eines Kunden zu einer Gruppe kommt aus zwei Dateien: `groupproductupdate.csv` weist Gruppen zu, `groupproductdelete.csv` hebt Zuweisungen wieder auf.

### groupproductupdate.csv

| Feldname | Feldinhalt |
| - | - |
| `CustomerID` | Kundennummer, so wie sie dem Kunden in der Datei `custupdate.csv` zugewiesen wurde |
| `GroupIdx` | Index der Gruppe. Der niedrigste mögliche Wert ist `1`, der höchste hängt davon ab, wie viele Produktkundengruppen für den Shop freigeschaltet sind. Liegt der Wert darüber, wird ein Fehler protokolliert und die Zuweisung ignoriert. |

Um dem Kunden mit der Kundennummer `1234` die Gruppen 1 und 2 zuzuweisen, genügt diese Datei (`<TAB>` steht für das Tabulatorzeichen, ASCII-Code 9):

```
CustomerID<TAB>GroupIdx
1234<TAB>1
1234<TAB>2
```

Bereits vorhandene Zuordnungen des Kunden bleiben dabei erhalten.

### groupproductdelete.csv

| Feldname | Feldinhalt |
| - | - |
| `CustomerID` | Kundennummer, oder `*`, wenn eine Produktkundengruppe für alle Kunden gelöscht werden soll |
| `GroupIdx` | Index der Gruppe, oder `*`, wenn alle Gruppen eines Kunden gelöscht werden sollen |

Die folgende Datei entfernt den Kunden `1234` aus der Gruppe 1 und löscht die Gruppe 2 vollständig:

```
CustomerID<TAB>GroupIdx
1234<TAB>1
*<TAB>2
```

## Kundenkonten, Bonuspunkte und Zuschüsse

Diese drei Guthabenarten sind die Grundlage für Bonussysteme und für Guthaben, die im Shop eingelöst werden können. Alle drei kommen aus derselben Datei `accountupdate.csv`.

**Bonuspunkte** schreiben Sie einem Kunden beispielsweise für den Kauf eines Produkts gut. Hat er genug Punkte gesammelt, kann er sie im Shop einlösen. Bieten Sie keine Bonuspunkte an, lassen Sie die Spalte `BonusPoints` in der Importdatei weg.

**Kundenkonto** bezeichnet ein beliebiges Guthaben. Beim Kauf wählt der Kunde die Zahlungsart "Kundenkonto" und bezahlt damit, der Shop reduziert das Guthaben anschließend automatisch. Bieten Sie kein Kundenkonto an, lassen Sie die Spalte `Credit` weg.

**Zuschüsse** werden im Warenkorb von der Gesamtsumme abgezogen und bei Bestellaufgabe vom Zuschusskonto abgebucht. Ein Restbetrag bleibt für Folgebestellungen erhalten, bis der Zuschuss aufgebraucht ist.

### accountupdate.csv

| Feldname | Feldinhalt |
| - | - |
| `UserIndex` | UserIndex des Kunden |
| `BonusPoints` | Anzahl der Bonuspunkte, ganzzahlig |
| `Credit` | Guthaben des Kundenkontos |
| `Subvention` | Zuschuss |

Die Datensätze werden ausschließlich über den `UserIndex` adressiert. Kontodaten lassen sich deshalb nur für Kunden importieren, die bereits in der Datenbank existieren, denn vorher ist der UserIndex nicht bekannt. Die [Adressierung der Datensätze](https://dokumentation.websale.de/v8s/schnittstellen/kundendaten/ws-sftp-kunden-pro/adressierung-der-datensaetze.md) beschreibt, wie der UserIndex zustande kommt.

Bei allen drei Werten können Sie statt eines absoluten Werts auch eine Differenz angeben, indem Sie dem Wert ein `+` oder ein `-` voranstellen. Hat ein Kunde 100 Bonuspunkte und Sie importieren `10`, steht danach der Wert 10 in der Datenbank. Importieren Sie `+10`, sind es 110, bei `-10` sind es 90.

> [!NOTE]
>
> Geben Sie Differenzen an, wo immer das möglich ist. Nur so kann ein Import keine Änderung überschreiben, die der Shop selbst vorgenommen hat. Ein Beispiel: Sie wollen die Bonuspunkte eines Kunden von 150 auf 100 senken, weil er telefonisch 50 Punkte eingelöst hat. Kurz vor dem Import bestellt derselbe Kunde im Shop und bekommt 77 Punkte gutgeschrieben. Importieren Sie den absoluten Wert `100`, löschen Sie diese Gutschrift. Importieren Sie `-50`, steht am Ende der korrekte Wert 177.

Einträge der Kundenkonto-Tabelle lassen sich nicht gezielt löschen. Sie verschwinden, wenn die allgemeinen Kundendaten über `custdelete.csv` gelöscht werden. Die Werte auf `0` zu setzen, ist jederzeit möglich.

Ein Import kann mehrere Kontodateien enthalten. Die Namen bekommen dann einen Suffix aus einem Unterstrich und einer oder mehreren Ziffern, beispielsweise `accountupdate_1.csv`. Die Dateien werden vor dem Import alphanumerisch sortiert, `accountupdate_10.csv` wird also vor `accountupdate_2.csv` eingelesen.

## Angebotsdaten

Mit Angebotsdaten übertragen Sie ein Angebot, das Sie einem bestimmten Kunden gemacht haben, in den Shop. Der Kunde kann die enthaltenen Produkte dann online bestellen.

Ein Angebot besteht aus zwei Dateien: `offerheadupd` enthält die Daten des gesamten Angebots wie die Versandkosten, `offerprodupd` die einzelnen Produkte. Gelöscht werden Angebote über `offerdel`.

Für die Dateiendung gibt es zwei Varianten. Die `.dat`-Dateien liegen im Verzeichnis `data-exchange`, die `.csv`-Dateien im Verzeichnis `customerimport`. Beim Import über SFTP-SOAP müssen Sie die `.csv`-Dateien verwenden, bei der Übertragung mit dem WSPManager haben Sie die Wahl.

### offerheadupd

| Feldname | Feldinhalt | Pflichtfeld | Beschränkung |
| - | - | - | - |
| `Subshop` | ID des Subshops, in dem das Angebot angezeigt werden soll | ja | max. 128 Zeichen |
| `CustomerID` | Kundennummer | ja | max. 255 Zeichen |
| `OfferID` | Eindeutige ID des Angebots | ja | max. 255 Zeichen |
| `ExpireDate` | Datum, bis zu dem das Angebot gültig ist, im Format TT.MM.JJJJ | ja | |
| `OfferDate` | Datum, zu dem das Angebot abgegeben wurde, im Format TT.MM.JJJJ | ja | |
| `PaymentCode` | Code der Zahlungsart | nein | |
| `PaymentCost` | Kosten der Zahlungsart, beispielsweise eine Nachnahmegebühr | nein | |
| `DeliveryName` | Name des Zustellers | nein | |
| `Deliverycost` | Versandkosten | nein | |
| `Description` | Beschreibung | nein | max. 4000 Zeichen |

### offerprodupd

| Feldname | Feldinhalt | Pflichtfeld | Beschränkung |
| - | - | - | - |
| `CustomerID` | Kundennummer | ja | max. 255 Zeichen |
| `OfferID` | ID des Angebots | ja | max. 255 Zeichen |
| `Name` | Name des Produkts | ja | max. 128 Zeichen |
| `Insert` | Werbemittelcode | nein | max. 16 Zeichen |
| `Number` | Produktnummer | nein | max. 64 Zeichen |
| `Quantity` | Anzahl | ja | |
| `Price` | Preis | ja | max. 9 Zeichen |
| `VAT` | Mehrwertsteuerindex | nein | |
| `DiscountRate` | Rabatt in Prozent | nein | |
| `Discount` | Rabatt als Absolutbetrag | nein | |
| `Variations` | Variation des Produkts im Format `<n-1>Name1</n-1><v-1>Wert1</v-1>…`, beispielsweise `<n-1>Farbe</n-1><v-1>rot</v-1>` | nein | |
| `TextinputFields` | Texteingabefelder im selben Format, beispielsweise `<n-1>Aufdruck</n-1><v-1>Testaufdruck</v-1>` | nein | |
| `Upload` | `X`: Der angebotene Artikel ist ein Upload-Artikel | nein | |
| `Image` | Dateiname eines normalgroßen Bildes zum Angebot. Die Datei muss im Shop unter `produkte/medien/bilder/normal` liegen. | nein | max. 128 Zeichen |
| `Thumbnail` | Dateiname eines kleinen Bildes zum Angebot. Die Datei muss im Shop unter `produkte/medien/bilder/klein` liegen. | nein | max. 128 Zeichen |
| `ProdOrder` | Ganzzahliger positiver Wert für die Anzeigereihenfolge. Ein kleinerer Wert wird vor einem größeren angezeigt. Fehlt das Feld, gilt die Reihenfolge der Importdatei. | nein | 8 Zeichen |

### offerdel

| Feldname | Feldinhalt | Pflichtfeld | Beschränkung |
| - | - | - | - |
| `CustomerID` | Kundennummer | ja | max. 255 Zeichen |
| `OfferID` | ID des Angebots | ja | max. 255 Zeichen |

## Kundenabhängige Bestellmengen

Für jede Kombination aus Produkt und Kunde lässt sich eine minimale und eine maximale Bestellmenge hinterlegen. Angelegt und geändert werden die Einträge über `orderquantityupdate.csv`, gelöscht über `orderquantitydelete.csv`. Beide Dateien dürfen höchstens 1 GB groß sein.

Die Löschdatei wird vor der Updatedatei eingelesen. Sie können Einträge in einem Import also zuerst löschen und anschließend neu anlegen.

### orderquantityupdate.csv

| Feldname | Feldinhalt | Pflichtfeld | Zulässige Werte |
| - | - | - | - |
| `CustomerID` | Kundennummer | ja | max. 255 Zeichen |
| `ProdIndex` | Produktindex | ja | max. 64 Zeichen |
| `Subshop` | Subshop des Produkts | ja | max. 128 Zeichen |
| `MaxOrderQuantity` | Maximale Bestellmenge | nein | Fließkommazahl von 0.00 bis 1000000000.00, `$NoLimit$` oder `-` |
| `MinOrderQuantity` | Minimale Bestellmenge | nein | Fließkommazahl von 0.00 bis 1000000000.00, `$NoLimit$` oder `-` |

Für die beiden Mengenfelder gelten zwei Sonderwerte. Der Wert `-` lässt den im Shop gesetzten Wert unverändert, ein leeres Feld wirkt genauso. Der Wert `$NoLimit$` hebt ein gesetztes Limit auf, der Kunde kann danach beliebig viel oder beliebig wenig von dem Produkt bestellen. `$NoLimit$` ist auch der Ausgangswert: Solange für eine Kombination aus Produkt und Kunde nie ein Limit gesetzt wurde, gilt kein Limit. Wollen Sie eine der beiden Mengen gar nicht steuern, können Sie die Spalte komplett weglassen, das entspricht dem Wert `-`.

Darüber hinaus sind einige Eigenheiten zu beachten:

* Beim Löschen von Produkten oder Kunden werden die zugehörigen Bestellmengen **nicht** automatisch mitgelöscht. Das ist Absicht, denn sonst müssten Sie die Mengen jedes Mal neu importieren, wenn ein Produkt oder ein Kunde gelöscht und wieder angelegt wird.
* Es wird nicht geprüft, ob der Kunde oder das Produkt im Shop existiert. Dadurch können Sie Bestellmengen vor den Produkt- und Kundendaten importieren.
* Bei Produkten mit abhängigen Variationen genügt es nicht, die Menge für den Stammartikel anzugeben. Sie müssen sie für jede einzelne abhängige Variation setzen.
* Bestellt ein Kunde im Shop, verringert sich `MaxOrderQuantity` um die bestellte Menge.

### orderquantitydelete.csv

| Feldname | Feldinhalt | Pflichtfeld | Zulässige Werte |
| - | - | - | - |
| `CustomerID` | Kundennummer | ja | max. 255 Zeichen |
| `ProdIndex` | Produktindex | ja | max. 64 Zeichen |
| `Subshop` | Subshop des Produkts | ja | max. 128 Zeichen |

In jeder Spalte ist der Sonderwert `*` erlaubt. Er bedeutet, dass diese Spalte beim Löschen nicht berücksichtigt wird. Steht in `ProdIndex` der Wert `123`, in `Subshop` der Wert `deutsch` und in `CustomerID` der Wert `*`, werden die Bestellmengen des Produkts `123` für alle Kunden gelöscht.

## Prime-Pakete

Die einem Kunden zugewiesenen Prime-Pakete werden über `primeupdate.csv` und `primedelete.csv` importiert. Jedem Kunden lassen sich maximal 10 verschiedene Prime-Pakete zuweisen.

Jede Zeile der Importdatei entspricht einem Prime-Paket. Sollen einem Kunden 10 Pakete zugewiesen werden, enthält die Datei also 10 Zeilen für diesen Kunden. Ist ein importiertes Paket dem Kunden bereits zugewiesen, werden dessen Daten aktualisiert, sonst wird es hinzugefügt. Zugewiesene Pakete, die nicht in der Datei stehen, bleiben unverändert erhalten.

### primeupdate.csv

| Feldname | Feldinhalt | Pflichtfeld | Zulässige Werte |
| - | - | - | - |
| `CustomerID` | Kundennummer | ja | max. 255 Zeichen |
| `UserIndex` | Ist ein UserIndex größer 0 angegeben, wird dieser statt der Kundennummer zur Adressierung verwendet. Existiert kein Kunde mit diesem UserIndex, wird der Datensatz ignoriert. | nein | ganzzahliger Wert kleiner 2147483647 |
| `ProdIndex` | Produktindex des Set-Oberartikels, der die Daten des Prime-Pakets enthält | ja | max. 64 Zeichen |
| `ValidFrom` | Beginn der Gültigkeit im Format JJJJMMTT | ja | max. 8 Zeichen |
| `ValidUntil` | Ende der Gültigkeit im Format JJJJMMTT | ja | max. 8 Zeichen |
| `Cancel` | `yes`: Kündigung gewünscht. `no` oder leer: Kündigung nicht gewünscht. `-`: Wert in den Kundendaten nicht überschreiben. | nein | max. 3 Zeichen |
| `OrderInfo` | Beliebige Daten, die in der Bestellung für das Paket zurückgegeben werden. Kauft ein Kunde im Shop ein Prime-Paket, steht hier der Inhalt des OrderInfo-Felds des Produkts, das die Daten des Pakets enthält. `-`: Wert nicht überschreiben. | nein | max. 256 Zeichen |

### primedelete.csv

| Feldname | Feldinhalt | Pflichtfeld | Zulässige Werte |
| - | - | - | - |
| `CustomerID` | Kundennummer | ja | max. 255 Zeichen |
| `UserIndex` | Wie bei `primeupdate.csv` | nein | ganzzahliger Wert kleiner 2147483647 |
| `ProdIndex` | Produktindex des Set-Oberartikels, oder `*`, wenn alle Prime-Pakete eines Shops gelöscht werden sollen | ja | max. 64 Zeichen |

## Verwandte Themen

* [Import-Dateien](https://dokumentation.websale.de/v8s/schnittstellen/kundendaten/ws-sftp-kunden-pro/import-dateien.md)
* [Adressierung der Datensätze](https://dokumentation.websale.de/v8s/schnittstellen/kundendaten/ws-sftp-kunden-pro/adressierung-der-datensaetze.md)
* [WS-SFTP-Kunden-Pro](https://dokumentation.websale.de/v8s/schnittstellen/kundendaten/ws-sftp-kunden-pro.md)


## Related topics

- [Import-Dateien](https://dokumentation.websale.de/v8s/schnittstellen/kundendaten/ws-sftp-kunden-pro/import-dateien.md)
- [WS-SFTP-Kunden PRO](https://dokumentation.websale.de/v8s/schnittstellen/kundendaten/ws-sftp-kunden-pro.md)
- [Kategorien und weitere Dateien](https://dokumentation.websale.de/v8s/schnittstellen/produkte-und-kategorien/ws-sftp-produkte-pro/kategorien-und-weitere-dateien.md)
- [WS-hreflang-Verlinkungen](https://dokumentation.websale.de/v8s/schnittstellen/marketing-seo-und-portale/ws-hreflang-verlinkungen.md)
- [WS-SFTP-Produkte-Pro](https://dokumentation.websale.de/v8s/schnittstellen/produkte-und-kategorien/ws-sftp-produkte-pro.md)


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