class Client extends Client

Client

Constants

ENDPOINT

Methods

RequestHeader
createRequestHeader(RequestHeader $header = null)

Request-Header

getOrderList(string $merchantNumber, string $channelID)

laden der verfügbaren Bestellungen

Response
setOrderExported(string $merchantNumber, int $orderID, int|null $pending = null)

Statusänderung nach erfolgreicher Abholung

Response
sendMessages(MessagesList $messagesList, string $merchantNumber)

Liefer-, Storno- oder Retourenmeldungen senden.

type
sendStock(Stock $stock, string $merchantNumber)

Lagerbestände Melden

Details

at line 61
protected RequestHeader createRequestHeader(RequestHeader $header = null)

Request-Header

Erstellt einen Request-Header. Diese Methode kann überschrieben werden, um den Request-Header zu manipulieren.

protected function createRequestHeader() {
  $header = parent::createRequestHeader();
  // Header erweitern
  return $header;
}

Parameters

RequestHeader $header Header

Return Value

RequestHeader Header

at line 74
OrderList getOrderList(string $merchantNumber, string $channelID)

laden der verfügbaren Bestellungen

Parameters

string $merchantNumber Händlernummer
string $channelID Kanal-ID

Return Value

OrderList

at line 117
Response setOrderExported(string $merchantNumber, int $orderID, int|null $pending = null)

Statusänderung nach erfolgreicher Abholung

Wird TB.One nur dazu genutzt, Aufträge zwischen Kanal und Händlersystem weiterzuleiten, muss nach dem Abruf ein Kennzeichen gesendet werden, dass der Auftrag abgeholt wurde.

Wenn Sie auch schwebende Aufträge durchreichen, kann es unter Umständen passieren, dass sich die Meldung des erfolgreichen Exports an das Händlersystem mit der Freigabe des Auftrags durch den Kanal überschneidet. Dadurch würde das Kennzeichen dem freigegebenen Auftrag zugeordnet und nicht – wie korrekt wäre – dem schwebenden Auftrag. Der freigegebene Auftrag würde dann nicht mehr an Ihr System weitergegeben, weil er ja fälschlicherweise bereits den "exportiert"-Status hat.

Um dies zu vermeiden, kann im REST-Befehl dem Exportkennzeichen gleichzeitig ein Parameter zum Statusabgleich des Auftrags mitgegeben werden. Dieser prüft dann den erwarteten Auftragsstatus gegen den tatsächlichen Status in TB.One und setzt das Exportkennzeichen nur, beide Status identisch sind.

pending=0 wenn der Auftrag in TB.One den Status "freigegeben" hat. pending=1 wenn der Auftrag in TB.One den Status "schwebend" hat.

Mögliche Fehler

412 Precondition Failed: Order does not have expected pending state. Der schwebend-Zustand des Auftrags im Händlersystem entspricht nicht dem Auftragszustand in TB.One. Fragen Sie die Daten für den Auftrag erneut ab (siehe Kap.4.2.3).

Parameters

string $merchantNumber Händlernummer
int $orderID Bestellnummer
int|null $pending

Return Value

Response Antwort des Servers

at line 139
Response sendMessages(MessagesList $messagesList, string $merchantNumber)

Liefer-, Storno- oder Retourenmeldungen senden.

Zusätzlich zu den jeweiligen Inhalten müssen Sie den zurückgemeldeten http-Statuscode (Header) berücksichtigen:

• 200 (alle Codes beginnend mit 2xx): Aufruf/Verarbeitung erfolgreich. • 400 (alle Codes beginnend mit 4xx): Aufruf nicht erfolgreich bzw. Anfrage fehlerhaft. • 500 (alle Codes beginnend mit 5xx): Verarbeitung fehlerhaft

Die Statuscodes betreffen ausschließlich die Verbindung der Systeme via REST und treffen keine Aussage über die Korrektheit der gelieferten Inhalte! Es kann also durchaus sein, dass Sie den Response Header "200 ok" erhalten, aber dennoch keine Änderungen durchgeführt werden.

Parameters

MessagesList $messagesList Nachrichten
string $merchantNumber Händlernummer

Return Value

Response Antwort des Servers

at line 159
type sendStock(Stock $stock, string $merchantNumber)

Lagerbestände Melden

Über die REST-API von TB.One können Bestandsdaten direkt und ohne Verzögerung in den Account importiert wer- den. Die Abhängigkeit zum Zeitplan der Importjobs kann so umgangen werden. Diese Methode eignet sich dann, wenn auch während des Verarbeitens von großen Produktdaten-Katalogen die Bestände bereits bekannter Artikel aktuell gehalten werden sollen. Dies funktioniert allerdings nur unter der Voraussetzung, dass die Bestände ausschließlich mit dieser Methode verändert werden. Da die Datei sofort verarbeitet wird, hängt die Antwortzeit des REST-Calls direkt mit der Größe der Datei zusammen. Außerdem eignet sich diese Methode nicht für Dateien, die größer als 10 MB sind.

Parameters

Stock $stock Lagerbestände
string $merchantNumber Händlernummer

Return Value

type