__soapCall($method,$param); } /** * Eine Testfunktion der API, so dass die Verbindung sichergestellt werden kann. Diese Funktion wird im laufenden Betrieb nicht benötigt. * * @return Result */ public function ping(){ return self::_Call('ping',Array( )); } /** * Ermittelt das Token für eine Session zum Aufruf aller anderen Funktionen. Einen API-Schlüssel erhalten Sie nach Bewerbung bei oldthing. Ohne Authentifizierung (token) können nur die Funktionen "ping()" und "authenticate(apiKey)" aufgerufen werden. * * @param string $apiKey * @return Result */ public function authenticate($apiKey){ return self::_Call('authenticate',Array( $apiKey )); } /** * Gibt die oldthing-Kategorien mit Namen und Id entsprechend ihrer Hirarchie zurück. * * @param string $token Token nach Authentifizierung * @param int $pid parent_id der Kategorie-Ebene * @return Result */ public function getCategories($token,$pid){ return self::_Call('getCategories',Array( $token, $pid )); } /** * Gibt alle Items (Produkte / Artikel) als array von Item-Objekten zurück. Mit den optionalen Parametern "offset" und "limit" kann die Auswahl definiert werden. * * @param string $token * @param int $offset * @param int $limit * @return Result */ public function getItems($token,$offset,$limit){ return self::_Call('getItems',Array( $token, $offset, $limit )); } /** * Gibt alle Items (Produkte / Artikel) als array von Item-Objekten zurück, die lediglich die ID und SKU enthalten. Mit den optionalen Parametern "offset" und "limit" kann die Auswahl definiert werden. * * @param string $token * @param int $offset * @param int $limit * @return Result */ public function getItemIds($token,$offset,$limit){ return self::_Call('getItemIds',Array( $token, $offset, $limit )); } /** * Gibt das Item (Produkt / Artikel) zurück, welches über die interne id identifiziert wird. Beim Einfügen von Items mittels setItem wird die Id des items zurückgegeben. * * @param string $token * @param int $id * @return Result */ public function getItem($token,$id){ return self::_Call('getItem',Array( $token, $id )); } /** * Gleiche Funktion wie "getItem", jedoch wird das Item über die Artikelnummer (SKU) des Shopbetreibers ermittelt. * * @param string $token * @param string $sku * @return Result */ public function getItemBySku($token,$sku){ return self::_Call('getItemBySku',Array( $token, $sku )); } /** * Fügt ein neues Item (Produkt / Artikel) ein oder aktualisiert ein bestehendes Item (update). Ein Update erfolgt, wenn eine id gesetzt ist oder ein Item mit gegebener SKU vorhanden ist. Ansonsten wird das Item neu angelegt und erhält eine neue interne id, die zurückgegeben wird. * * @param string $token * @param array $item * @return Result */ public function setItem($token,$item){ return self::_Call('setItem',Array( $token, $item )); } /** * Löscht ein Item (Produkt / Artikel) aus dem Bestand , welches über die interne id identifiziert wird. Diese Id wir z.B. über die Funktionen "getItem" und "getItems" zurückgegeben. Siehe auch "deleteItemBySku". * * @param string $token * @param int $id * @return Result */ public function deleteItem($token,$id){ return self::_Call('deleteItem',Array( $token, $id )); } /** * Löscht ein Item (Produkt / Artikel) aus dem Bestand , welches über die Artikelnummer (SKU) des Shopbetreibers identifiziert wird. Siehe auch deleteItem. * * @param string $token * @param string $sku * @return Result */ public function deleteItemBySku($token,$sku){ return self::_Call('deleteItemBySku',Array( $token, $sku )); } /** * Setzt eine HTTP-Adresse, welche beim Kauf eines Produkts (Items) des Shops aufgerufen wird. Die gegebene URL wird nach Bestellungseingang über HTTP mit der POST-Methode aufgerufen (REST-Schnittstelle) wobei Bestelldaten und Details zum Artikel mitgesendet werden. Die URL wird dauerhaft gespeichert, so dass diese Funktion i.d.R. nur einmal aufgerufen werden muss. * Für den Webhook Aufruf gibt es zwei Versionen. Für Kunden mit Registrierung vor dem 01.12.2023 gilt Version 1. Alle Kunden mit späterer Registrierung arbeiten automatisch mit Version 2. Ein Umstieg von Version 1 auf Version 2 kann jederzeit durch unseren Kundendienst vorgenommen werden. * * @param string $token * @param string $uri * @return Result */ public function setSaleNotifierUri($token,$uri){ return self::_Call('setSaleNotifierUri',Array( $token, $uri )); } /** * Testfunktion: Ruft die vorher gesetzte Webhook URL (siehe setSaleNotifierUri) einmalig auf, so dass die Verarbeitung eines Verkaufs auf oldthing getestet werden kann. Die URL wird mittels HTTP-POST aufgerufen. Dabei werden Bestelldaten übergeben, die z.B. in einem PHP-Skript über das $_POST array entgegengenommen werden können. * * Durch die Parameter $version ('1' oder '2') und $userType ('private' oder 'commerical') können Sie die für Sie zutreffende Version mit den beiden Nutzertypen testen. * * @param string $token * @param int $version * @param string $userType * @return Result */ public function testSaleNotifierUri($token,$version,$userType){ return self::_Call('testSaleNotifierUri',Array( $token, $version, $userType )); } /** * Gibt die Orders des Members zurück * * @param string $token * @param string $status * @param string $offset * @return Result */ public function getOrders($token,$status,$offset){ return self::_Call('getOrders',Array( $token, $status, $offset )); } /** * Gibt die Bestellung mit Artikel ID zurück. * * @param string $token * @param string $orderId * @return Result */ public function getOrder($token,$orderId){ return self::_Call('getOrder',Array( $token, $orderId )); } /** * Ändert den Status einer Bestellung und versendet die entsprechenden Emails an den Käufer und Verkäufer. ACHTUNG: Jeder Aufruf dieser Funktion versendet die entsprechenden Status Emails an den Kunden! * * @param string $token * @param string $orderId * @param string $status - Zulässige Werte sind "payed" Wenn Sie die Zahlung für die Bestellung erhalten haben oder "sent" wenn Sie die Bestellung verschickt haben. * @param string $carrier optional- Name des Versanddienstleisters. Die Tracking Info wird in der Kundenmail nur ausgespielt wenn Sie den Carrier UND eine Trackingnummer oder Url angeben. * @param string $tracking optional - Tracking Nummer oder Tracking Url. Wenn Sie eine Nummer übergeben wird in der Mail an den Kunden lediglich die Trackingnummer ausgegeben. Besser ist es Sie übergeben eine Url. In diesem Fall wird die Url als Link in der Mail ausgegeben. * @return Result */ public function setOrderStatus($token,$orderId,$status,$carrier,$tracking){ return self::_Call('setOrderStatus',Array( $token, $orderId, $status, $carrier, $tracking )); } /** * Storniert eine Bestellung und versendet die entsprechenden Emails an den Kunden und Verkäufer. * * @param string $token * @param string $orderId * @param boolean $resetArticles * @return Result */ public function cancelOrder($token,$orderId,$resetArticles){ return self::_Call('cancelOrder',Array( $token, $orderId, $resetArticles )); } /** * Storniert einen Artikel innerhalb einer Bestellung. * * @param string $token * @param string $orderId * @param string $articleId * @param int $count * @param boolean $resetArticle */ public function cancelOrderItem($token,$orderId,$articleId,$count,$resetArticle){ return self::_Call('cancelOrderItem',Array( $token, $orderId, $articleId, $count, $resetArticle )); } /** * Schickt eine Zahlungsaufforderung / Zahlungserinnerung an den Käufer. * * @param string $token * @param string $orderId * @param string $notice */ public function sendPaymentRequest($token,$orderId,$notice){ return self::_Call('sendPaymentRequest',Array( $token, $orderId, $notice )); } }