Feld-Mapping Dokumentation: reybex → WooCommerce

Übersicht

Diese Dokumentation beschreibt, welche Felder von reybex nach WooCommerce übertragen werden und wie sie gemappt werden. Die Übertragung erfolgt über die WooCommerce REST API.

⚠️ WICHTIGER HINWEIS

Diese Dokumentation unterliegt kontinuierlichen Änderungen.

Die Integration zwischen reybex und WooCommerce befindet sich in ständiger Entwicklung. Daher kann es vorkommen, dass:

Empfehlung:
Bitte überprüfen Sie regelmäßig die aktuelle Dokumentation und testen Sie Änderungen in einer Testumgebung, bevor Sie sie in der Produktion einsetzen.

Verwendung dieser Dokumentation

Diese Dokumentation zeigt, welche Felder von reybex nach WooCommerce übertragen werden. Für jedes WooCommerce-Feld wird angegeben:
- Welches reybex-Feld die Quelle ist
- Unter welcher Bedingung es übertragen wird (Export-Gruppe)
- Besondere Hinweise zur Übertragung

Wichtige Konzepte

reybex-Artikelstruktur

WooCommerce-Produktstruktur

1. Produkt-Felder (Product Level)

Die folgenden Felder werden auf Produktebene in WooCommerce übertragen:

1.1 Basis-Informationen

WooCommerce Feld reybex Feld Beschreibung Bedingung
product.name material.name Produktname/Titel Export-Gruppe: ARTIKEL_DATA
product.sku material.sku Artikelnummer Export-Gruppe: ARTIKEL_DATA
product.weight material.grossWeight Gewicht Export-Gruppe: ARTIKEL_DATA
product.brands material.brand.name Marke/Hersteller (als Brand ID) Export-Gruppe: ARTIKEL_DATA
product.status material.isMarketplaceActive Status ("publish" oder "draft") Immer
product.type Automatisch "variable" wenn Varianten vorhanden, sonst leer Immer
product.dimensions material.length, material.width, material.height Abmessungen Immer

Hinweise:
- material.name kann durch materialMarktplace.materialName überschrieben werden
- product.status ist "publish" wenn isMarketplaceActive = true, sonst "draft"
- product.type wird automatisch auf "variable" gesetzt, wenn Varianten vorhanden sind

1.2 Beschreibung

WooCommerce Feld reybex Feld Beschreibung Bedingung
product.short_description material.description Kurzbeschreibung Export-Gruppe: DESCRIPTION
product.description material.detailDescription Vollständige Beschreibung Export-Gruppe: DESCRIPTION

Hinweise:
- Wenn material.description leer ist, wird ein Leerzeichen übertragen
- Wenn material.detailDescription leer ist, wird ein Leerzeichen übertragen

1.3 Preise

WooCommerce Feld reybex Feld Beschreibung Bedingung
product.regular_price material.price.rrp oder material.price.value Regulärer Preis Export-Gruppe: PRICE
product.sale_price material.price.value Aktionspreis Export-Gruppe: PRICE

Preislogik:
- regular_price = material.price.rrp (UVP), falls vorhanden, sonst material.price.value
- sale_price = material.price.value (wenn rrp vorhanden und höher als value)
- Wenn homeCurrency != price.currency, wird rrp = value gesetzt

1.4 Bestand

WooCommerce Feld reybex Feld Beschreibung Bedingung
product.stock_quantity material.stock.value oder Summe der Varianten Bestand Export-Gruppe: STOCK
product.manage_stock material.isRequestable oder Varianten vorhanden Bestandsverwaltung Immer
product.in_stock material.isRequestable oder material.stock.value > 0 Auf Lager Immer
product.backorders material.isOnlySellableWithPositiveStock Nachbestellung Immer

Bestandslogik:
- Wenn Varianten vorhanden: stock_quantity = Summe aller Variantenbestände
- Wenn keine Varianten: stock_quantity = material.stock.value
- manage_stock = false wenn isRequestable = true oder Varianten vorhanden, sonst true
- backorders = "no" wenn isOnlySellableWithPositiveStock = true, sonst "yes"

1.5 Bilder

WooCommerce Feld reybex Feld Beschreibung Bedingung
product.images[] material.images[] Produktbilder Export-Gruppe: IMAGE + refreshPictures = true

Hinweise:
- Bilder werden nur übertragen, wenn refreshPictures = true gesetzt ist
- Format: [{src: url, name: comment}]

1.6 Kategorien

WooCommerce Feld reybex Feld Beschreibung Bedingung
product.categories[] material.categories[].id Kategorien (als IDs) Export-Gruppe: CATEGORY

Hinweise:
- Kategorien werden als Array von Objekten mit id übertragen
- Format: [{id: categoryId1}, {id: categoryId2}, ...]

1.7 Artikelattribute

WooCommerce Feld reybex Feld Beschreibung Bedingung
product.attributes[] material.attributes[] Artikelattribute Export-Gruppe: ARTIKEL_ATTRIBUTE
product.attributes[] material.gtin GTIN/EAN als Attribute Export-Gruppe: ARTIKEL_ATTRIBUTE (wenn gtin vorhanden)

Mapping-Details:
- Format: {name: attribute.name, visible: true, variation: false, options: [attribute.value]}
- GTIN wird als zwei Attribute übertragen: "GTIN" und "EAN"
- Varianten-Optionen werden ebenfalls als Attribute hinzugefügt

1.8 Tags

WooCommerce Feld reybex Feld Beschreibung Bedingung
product.tags[] material.translations[].keyWord Suchbegriffe als Tags Export-Gruppe: SEO

Hinweise:
- Tags werden aus keyWord extrahiert (komma-separiert)
- Tags werden als Array von Objekten mit id übertragen
- Format: [{id: tagId1}, {id: tagId2}, ...]

1.9 Zusätzliche Felder

WooCommerce Feld reybex Feld Beschreibung Bedingung
product.unit_price material.purchaseUnit, material.referenceUnit Grundpreis-Informationen Immer
product.unit material.basePriceUnit.name Einheit (wenn Plugin vorhanden) Immer (wenn Plugin-Unit gefunden)
product.shipping_class material.isShippingFree Versandklasse Immer (wenn isShippingFree = true)

2. Varianten-Felder (Variation Level)

Die folgenden Felder werden auf Variantenebene in WooCommerce übertragen:

2.1 Basis-Informationen

WooCommerce Feld reybex Feld Beschreibung Bedingung
variation.sku variant.sku Varianten-SKU Export-Gruppe: VARIANT
variation.regular_price variant.price.rrp oder variant.price.value Regulärer Preis Export-Gruppe: VARIANT
variation.sale_price variant.price.value Aktionspreis Export-Gruppe: VARIANT

2.2 Bestand

WooCommerce Feld reybex Feld Beschreibung Bedingung
variation.stock_quantity variant.stock Variantenbestand Export-Gruppe: VARIANT
variation.manage_stock material.isRequestable Bestandsverwaltung Export-Gruppe: VARIANT
variation.in_stock material.isRequestable oder variant.stock > 0 Auf Lager Export-Gruppe: VARIANT
variation.backorders material.isOnlySellableWithPositiveStock Nachbestellung Export-Gruppe: VARIANT

2.3 Varianten-Bilder

WooCommerce Feld reybex Feld Beschreibung Bedingung
variation.image variant.images[0] Erstes Variantenbild Export-Gruppe: VARIANT + Bild vorhanden

Hinweise:
- Format: {src: staticUrl, name: comment}
- Nur das erste Bild wird übertragen

2.4 Varianten-Attribute

WooCommerce Feld reybex Feld Beschreibung Bedingung
variation.attributes[] variant.nameValuePairs[] Varianten-Optionen Export-Gruppe: VARIANT

Mapping-Details:
- Format: {id: attributeId, option: value}
- Wird aus nameValuePairs generiert

3. Export-Felder-Gruppen

Die Übertragung wird durch Export-Felder-Gruppen gesteuert:

Export-Gruppe Beschreibung Übertragene WooCommerce-Felder
ARTIKEL_DATA Artikeldaten name, sku, weight, brands
DESCRIPTION Beschreibung short_description, description
PRICE Preis regular_price, sale_price
STOCK Bestand stock_quantity, manage_stock, in_stock, backorders
IMAGE Bilder images[] (nur wenn refreshPictures = true)
CATEGORY Kategorien categories[]
ARTIKEL_ATTRIBUTE Artikelattribute attributes[]
SEO SEO-Felder tags[]
VARIANT Varianten Alle Varianten-Felder

4. Besondere Verhaltensweisen

4.1 Batch-Operationen

WooCommerce verwendet Batch-Operationen für Produkt-Updates:
- Neue Produkte werden in create Array gesammelt
- Bestehende Produkte werden in update Array gesammelt
- API-Endpoint: /products/batch

4.2 Preisberechnung

Preise werden über calculateRegularAndSalePrices() berechnet:
- Berücksichtigt uploadMaterialPriceAsZero Parameter
- Konvertiert zwischen Netto- und Bruttopreisen basierend auf isIncludeEnableTax

4.3 Marken und Tags

4.4 Grundpreis-Plugin

Wenn das WooCommerce Unit Price Plugin vorhanden ist:
- unit_price wird mit purchaseUnit und referenceUnit übertragen
- unit wird mit der entsprechenden Plugin-Unit-ID übertragen

5. Zusammenfassung: Vollständige Feld-Mappings

Produkt-Ebene

WooCommerce Feld reybex Feld Export-Gruppe Hinweise
name material.name ARTIKEL_DATA -
sku material.sku ARTIKEL_DATA -
weight material.grossWeight ARTIKEL_DATA -
brands material.brand.name ARTIKEL_DATA Als Brand ID
status material.isMarketplaceActive Immer "publish" oder "draft"
type Automatisch Immer "variable" wenn Varianten vorhanden
dimensions material.length, width, height Immer -
short_description material.description DESCRIPTION -
description material.detailDescription DESCRIPTION -
regular_price material.price.rrp oder value PRICE -
sale_price material.price.value PRICE -
stock_quantity material.stock.value oder Varianten-Summe STOCK -
manage_stock material.isRequestable Immer -
in_stock material.isRequestable oder stock > 0 Immer -
backorders material.isOnlySellableWithPositiveStock Immer "no" oder "yes"
images[] material.images[] IMAGE Nur wenn refreshPictures = true
categories[] material.categories[].id CATEGORY -
attributes[] material.attributes[], material.gtin ARTIKEL_ATTRIBUTE -
tags[] material.translations[].keyWord SEO -
unit_price material.purchaseUnit, referenceUnit Immer -
unit material.basePriceUnit.name Immer Nur wenn Plugin vorhanden

Varianten-Ebene

WooCommerce Feld reybex Feld Export-Gruppe Hinweise
sku variant.sku VARIANT -
regular_price variant.price.rrp oder value VARIANT -
sale_price variant.price.value VARIANT -
stock_quantity variant.stock VARIANT -
manage_stock material.isRequestable VARIANT -
in_stock material.isRequestable oder variant.stock > 0 VARIANT -
backorders material.isOnlySellableWithPositiveStock VARIANT "no" oder "yes"
image variant.images[0] VARIANT Erstes Bild
attributes[] variant.nameValuePairs[] VARIANT -

6. API-Versionen


Version: 1.0
Erstellt: 2024
Zielgruppe: Externe Nutzer ohne reybex-Kenntnisse