Skip to content

Online Marktplätze – Vollständige API-Referenz ​

Fach-API für Marktplatz- und Shop-Kanäle: Kanal anlegen, Verbindung prüfen, Artikel und Bestand übertragen, Bestellungen importieren und Kategorien zuordnen. Basis ist https://core-backend.reybex.com/api (Staging: https://io-staging-partner.reybex.com/api). Authentifizierung wie im API: --header "authorization: Basic $TOKEN".

Artikel und Marktplatzfelder am Artikel stehen unter Artikelstamm-Verwaltung. Importierte Aufträge unter Auftragsverwaltung. Versandrückmeldung unter Versand / Pick & Pack.

Der schreibende Weg des Kanals ist POST /api/marketplace/. Der Körper ist der Kanal selbst, ohne Umschlag. Leere Objekte werden zu null.

1. Grundlagen ​

ObjektRolle
MarktplaceEin Shop- oder Marktplatzkanal
SupportedMarktplaceKanaltyp, zum Beispiel Amazon oder Shopify
MarketplaceWarehouseLager des Kanals
MarketplaceCategoryKategorie des Kanals
CategoryMarketplaceMappingZuordnung reybex-Kategorie zu Kanal-Kategorie

Die Zahlen in den Beispielen sind Beispiel-Ids eines Mandanten. 9401 ist der Kanal. 7001 ist das Lager HAUPT. 4202 ist die Auftrags-Belegart. 501 ist der Benutzer.

isActive schaltet den Kanal. isSandbox true nutzt die Testumgebung des Kanals. isGetOnly liest nur, isGetOnlyOrder liest nur Bestellungen, isGetOnlyMaterial nur Artikel.

1.1 Suchschlüssel ​

ZielSuchschlüssel
Lagercode, sonst name
Belegart, Versandart, Zahlungsstatuscode, sonst name
Artikel am TransfermatCode, sonst sku

Bekannte id hat Vorrang. Ein Suchschlüssel in einer Positionsliste legt keinen bestehenden Transfer an.

1.2 Antwort- und Fehlerformat ​

Speichern liefert den Kanal. Lesen eines Kanals kapselt den Datensatz. Ein unbekannter Kanal ist nicht gefunden.

SituationKörper
Kanal nicht gefundennicht gefunden
Bestellimport ohne Zeitraum, wenn der Aufruf die Tage verlangtperiod fehlt
Fehlende AnmeldungHTTP 401

2. Kanal anlegen ​

POST /api/marketplace/ legt an, wenn keine id im Körper steht. Beim Ändern werden Zahlarten, Versandarten und Importlager neu aus dem Körper gesetzt.

Response enthält die gespeicherte id.

2.1 Felder ​

FeldBedeutung
nameName des Kanals
supportedMarketplaceKanaltyp
salesDocTypeBelegart der importierten Aufträge
fallbackDocTypeErsatz-Belegart
numberRangesNummernkreis
profitCenterProfitcenter
isActiveKanal ist aktiv. Standard false
isSandboxTestumgebung
isPaidOrdersNur bezahlte Bestellungen. Standard true
pastDaysRückblick in Tagen. Standard 7
maxStockObergrenze des Bestands
createMissingMaterialsFehlende Artikel beim Import anlegen
importMissingArticleAsTextPositionFehlenden Artikel als Textposition. Standard true
doNotUploadNewMaterialNeue Artikel nicht hochladen
inlandShipping, foreignCountryShippingVersand Inland und Ausland
isDeleteLogisch gelöscht

2.2 Pflichtfelder ​

Ohne Namen und Kanaltyp entsteht kein nutzbarer Kanal. Die API setzt den Kanaltyp nicht von selbst.

Auflösung, wenn ein Pflichtfeld fehlt ​

Die API setzt Pflicht-Referenzen nicht von selbst. Fehlt ein Feld, in dieser Reihenfolge füllen. Der erste Treffer gilt.

  1. Angabe – Wert aus dem Auftrag für dieses Feld.
  2. Vorlage – dasselbe Feld aus GET /api/marketplace/{id}. id nicht übernehmen. Ist eine Vorlage genannt, diese lesen. Ist keine genannt, keine raten, mit Schritt 3 weiter.
  3. Standard – Wert aus der Tabelle.
  4. Domäne – GET /api/domains/supportedMarktplace?take=1&sort=code und GET /api/domains/salesDocType?isOrder=true&take=1. Den Treffer per Suchschlüssel setzen.
  5. Stopp – die Domäne ist leer. Kanal nicht anlegen. Den fehlenden Kanaltyp oder die fehlende Belegart nennen.
FeldPflichtVorlageStandardDomäne
namejaname——
supportedMarketplacejasupportedMarketplace—supportedMarktplace
salesDocTypejasalesDocTypeAuftragsartsalesDocType
isActiveneinisActivefalse, bis die Verbindung steht—
pastDaysneinpastDays7—

2.3 Kanal mit Auftrag ​

json
{
  "name": "Shop Nord",
  "supportedMarketplace": { "id": 31 },
  "salesDocType": { "id": 4202 },
  "isActive": false,
  "isSandbox": true,
  "isPaidOrders": true,
  "pastDays": 7,
  "importMissingArticleAsTextPosition": true
}

31 ist der Kanaltyp, 4202 eine Auftrags-Belegart.

Verbindung prüfen: POST /api/marketplace/checkConnection mit der Kanal-id. Alle Kanäle: GET /api/marketplace/checkConnectionForAll. Aktive Kanäle: GET /api/marketplace/activeMarketplace.

2.4 Lesen und löschen ​

GET /api/marketplace/9401 liest einen Kanal. Ohne Id die Liste. Alle Kanäle: GET /api/marketplace/getAllMarketplaces.

Löschen: DELETE /api/marketplace/9401.

3. Artikel, Bestand, Bestellung ​

Artikel an den Kanal: POST /api/marketplace/marketplaceUpdateMaterial. Transfer anstoßen: GET /api/marketplace/sendMaterialTransfer.

Bestellungen eines Zeitraums: POST /api/marketplace/importOrders

json
{
  "marktplaceId": 9401,
  "orderImportStartDate": "2026-10-01",
  "orderImportEndDate": "2026-10-16"
}

9401 ist der Kanal. Die Daten sind yyyy-MM-dd. Die API formatiert sie intern nach dd.MM.yyyy. Fehlt der Kanal, bricht das Lesen ab.

Letzte Tage: POST /api/marketplace/orderImportWithPeriod

json
{ "period": 7 }

Response: { "success": true }

Einfacher Abruf: GET /api/marketplace/performSimpleOrderImport und GET /api/marketplace/performSimpleMaterialImport.

Status zurückmelden: POST /api/marketplace/updateOrderStatusInMarketplace. Rechnungen hochladen: POST /api/marketplace/uploadInvoices.

Übertragungsprotokoll Artikel: GET /api/marketplaceMaterialTransfer/{id}. Bestellungen: GET /api/marketplaceOrderTransfer/{id}. Fehler des Imports: GET /api/marketplaceOrderTransfer/orderImportErrors.

Bestand als CSV: GET /api/marketplace/downloadStockCsv. Amazon FBA: POST /api/marketplace/amazonFbaStock.

4. Kategorien und Lager ​

Kategorien importieren: GET /api/marketplace/importCategories. Liste: GET /api/marketplaceCategory/listCategories.

Zuordnung speichern: POST /api/categoryMarketplaceMapping/

json
{
  "marketplace": { "id": 9401 },
  "materialCategory": { "id": 2101 },
  "marketplaceCategory": { "id": 6101 }
}

2101 ist die reybex-Kategorie, 6101 die Kanal-Kategorie. Mehrere: POST /api/categoryMarketplaceMapping/bulkSave.

Merkmale einer Kategorie: POST /api/marketplaceCategory/categorySpecsForMarketplace. Speichern: POST /api/marketplaceCategory/saveCategorySpecs. Der Schlüssel des Kanals heißt marktplaceId.

json
{
  "marktplaceId": 9401,
  "materialIds": [100200],
  "marketplaceCategories": [6101],
  "shopCategories": [2101]
}

Lager des Kanals: POST /api/marketplaceWarehouse/

json
{
  "marketplace": { "id": 9401 },
  "warehouse": { "code": "HAUPT" }
}

Token des Lager-Zugangs: GET /api/marketplaceWarehouse/token.

5. Zugang ​

Amazon: GET /api/marketplace/amazonAuthUrl/9401. eBay-Sitzung: GET /api/marketplace/getSessionIdForEbay, Token: GET /api/marketplace/getTokenForEbay. Token löschen: DELETE /api/marketplace/ebayAuthToken. Shopify-Lagerorte: GET /api/marketplace/getLocationsForShopify. Etsy: GET /api/marketplace/etsyAuthUrl/9401. Shopware: GET /api/marketplace/getStoreInformationForShopware.

FBA-Bestand: POST /api/marketplace/amazonFbaStock. FBA-Bericht: POST /api/marketplace/amazonFbaInventoryReport. Berichte einlesen: POST /api/marketplace/importAmazonFbaInventoryReports. Belegarten dazu: GET /api/marketplace/getFbaSalesDocTypesForAmazon.

Massenänderung: GET /api/marketplace/massUpdate liest die Auswahl, POST /api/marketplace/massUpdate schreibt sie.

Externer Kanal: GET /api/marketplaceExternal/register. Bestätigen: POST /api/marketplaceExternal/confirm. Konfiguration lesen und schreiben: GET /api/marketplaceExternal/configuration und POST /api/marketplaceExternal/configuration. Daten einlesen: POST /api/marketplaceExternal/importData.

6. Weitere Beispiele ​

6.1 Kanal bis Auftrag ​

  1. Kanal inaktiv und mit isSandbox true anlegen, Abschnitt Kanal.
  2. POST /api/marketplace/checkConnection.
  3. Lager HAUPT zuordnen.
  4. Kanal mit isActive true speichern.
  5. Bestellungen der letzten sieben Tage importieren.
  6. Den Auftrag in der Auftragsverwaltung lesen.

7. Shop-Client, Mollie, OAuth ​

/api/wsClient/ spricht den angebundenen Shop. Bestellungen anlegen: POST /api/wsClient/createOrders und POST /api/wsClient/orders. JSON-Import: POST /api/wsClient/importJsonOrders. Status: POST /api/wsClient/updateOrders. Storno mehrerer Aufträge: DELETE /api/wsClient/cancelOrders. Der Körper braucht marketplace und orders. Fehlt der Kanal: marketplace.not.found. Fehlt die Storno-Belegart: cancelDocType.not.found. Unbekannte Auftrags-Id: order.not.found. Ein Auftrag: POST /api/wsClient/cancelOrder.

Artikel finden: GET /api/wsClient/materialFinding. marktplaceName und sku sind Pflicht. Zahlart: GET /api/wsClient/paymentTypeFinding mit paymentType und provider. Alle Kanäle: GET /api/wsClient/importOrdersForAllMarketplaces. Tradebyte-Retouren: POST /api/wsClient/importTradebyteReturnedOrders. Ohne file: file.import.error.message. Das Trennzeichen ist ; oder ,.

Mollie: GET /api/mollie/, anmelden POST /api/mollie/auth, verbinden GET /api/mollie/connect.

OAuth-Link: GET /api/oauth2/authorize/{oauthType}. Rückkehr: GET /api/oauth2/callback/{oauthType}. oauthType ist der Anbieter im Pfad.

8. Endpoint-Katalog ​

MethodePfadBedeutung
GET/api/marketplace/{id}Ein Kanal oder die Liste
POST/api/marketplace/Anlegen und ändern
DELETE/api/marketplace/{id}Löschen
POST/api/marketplace/checkConnectionVerbindung prüfen
GET/api/marketplace/activeMarketplaceAktive Kanäle
POST/api/marketplace/marketplaceUpdateMaterialArtikel übertragen
POST/api/marketplace/importOrdersBestellungen im Zeitraum
POST/api/marketplace/orderImportWithPeriodBestellungen der letzten Tage, Body period
POST/api/marketplace/updateOrderStatusInMarketplaceStatus zurückmelden
POST/api/marketplace/uploadInvoicesRechnungen hochladen
GET/api/marketplaceOrderTransfer/orderImportErrorsImportfehler
GET/api/marketplaceCategory/listCategoriesKategorien
POST/api/categoryMarketplaceMapping/Kategorie zuordnen
POST/api/marketplaceWarehouse/Lager zuordnen
GET/api/marketplace/amazonAuthUrl/{id}Amazon-Anmeldung
GET/api/marketplace/getTokenForEbayeBay-Token
GET/api/marketplace/etsyAuthUrl/{id}Etsy-Anmeldung
GET/api/marketplace/getLocationsForShopifyShopify-Lagerorte
POST/api/marketplace/massUpdateMassenänderung
POST/api/marketplace/amazonFbaStockFBA-Bestand
POST/api/marketplace/importAmazonFbaInventoryReportsFBA-Berichte einlesen
POST/api/marketplaceCategory/saveCategorySpecsKategoriemerkmale, Feld marktplaceId
GET/api/marketplaceExternal/registerExternen Kanal registrieren
POST/api/marketplaceExternal/confirmRegistrierung bestätigen
POST/api/marketplaceExternal/configurationKonfiguration speichern
POST/api/marketplaceExternal/importDataDaten einlesen
POST/api/wsClient/ordersBestellungen
POST/api/wsClient/createOrdersBestellungen anlegen
POST/api/wsClient/importJsonOrdersJSON-Bestellungen
POST/api/wsClient/updateOrdersStatus aktualisieren
POST/api/wsClient/updateOrdersToProcessOffene Aufträge nachziehen
DELETE/api/wsClient/cancelOrdersMehrere stornieren
POST/api/wsClient/cancelOrderEinen stornieren
GET/api/wsClient/importOrdersForAllMarketplacesAlle Kanäle einlesen
GET/api/wsClient/materialFindingArtikel, marktplaceName und sku
GET/api/wsClient/paymentTypeFindingZahlart, paymentType und provider
POST/api/wsClient/stockplaceFindingLagerplatz
POST/api/wsClient/ebayCategorieseBay-Kategorien
POST/api/wsClient/invoiceUploadRechnungen hochladen
POST/api/wsClient/invoicesRechnungen
POST/api/wsClient/materialExportJsonArtikel als JSON
GET/api/wsClient/wsResponseLogAntwortprotokoll
GET/api/wsClient/fetchEbayGrantAccessUrleBay-Freigabe
POST/api/wsClient/importTradebyteReturnedOrdersTradebyte-Retouren, file
POST/api/wsClient/testSetStockPlacesWithPriorityOnOneWarehouseTest der Lagerplatz-Priorität
GET/api/mollie/Mollie lesen
POST/api/mollie/authMollie anmelden
GET/api/mollie/connectMollie verbinden
GET/api/oauth2/authorize/{oauthType}OAuth-Link
GET/api/oauth2/callback/{oauthType}OAuth-Rückkehr

9. Häufige Fehler ​

SituationUrsache
Kanal nicht gefundenid unbekannt
Import bleibt leerisActive ist false oder isGetOnly sperrt das Schreiben
Artikel fehlt im AuftragcreateMissingMaterials ist false und importMissingArticleAsTextPosition ist false
Bestand kommt nicht anAm Kanal ist kein Lager zugeordnet
Verbindung schlägt fehlisSandbox passt nicht zum Token, oder der Token fehlt
marketplace.not.foundcancelOrders ohne Kanal
cancelDocType.not.foundKeine Storno-Belegart
order.not.foundAuftrags-Id im Storno unbekannt
file.import.error.messageTradebyte-Import ohne file

Nur für reybex-Partner. Nicht für Endkunden bestimmt.