Das Thema ist sowohl für Entwickler, die für eBay-Kunden arbeiten interessant, als auch für Sie als Seller selbst. Ich versuche beiden Seiten die Vorteile der eBay-APIs zu zeigen. Falls Sie, lieber Leser, zufällig ein PHP-Entwickler sein sollten, gestattet Sie mir den Hinweis, daß Sie in meinem Github-Account viele nützliche Pakete rund um eBay finden werden.

Falls Sie, lieber Leser, ein eBay-Seller sein sollten und keine Ahnung vom Programmieren haben, macht nichts, lesen Sie trotzdem weiter, so erfahren Sie wenigstens, was Sie alles überwachen können, sofern Sie einen Entwickler zu Hand haben.

Bevor wir ins Detail gehen, könnte jemand anmerken: Wieso? Wieso sollte ich das hier lesen, es gibt doch das eBay-Cockpit bzw. mein eBay-Dashboard, welches mir alle relevanten Informationen auf einen Blick zeigt. Grundsätzlich: Ja, das stimmt 🙂 Aber, das ist auch schon alles. Das einloggen bei eBay und das bloße Prüfen mit den eigenen Augen ist halt ein rein manueller Vorgang, begleitet durch die üblichen menschlichen Fehler, die jemand in diesem Zahlengewirr machen kann. Hinzu kommt: eBay entscheidet für Sie, was kritisch ist, was nicht kritisch ist, welche “Ziele” relevant sind und welche nicht. Und noch viel wichtiger: Es gibt keine Notifications, zumindest keine individuellen.

Übrigens, haben Sie bemerkt, daß der Titel dieses Textes sagt: “Wie Sie Ihre Accounts”…. also plural, es geht um mehrere Accounts. Da fängt die Sache nämlich an interessant zu werden.

Es ist nichts neues, große Seller (vielleicht gehören Sie dazu) haben mehrere eBay-Accounts, vielleicht um mehere Länder zu bedienen, zwischen Marken zu differenzieren oder um unterschiedliche Preis-Politiken zu fahren, da gibt es viele gute Gründe. Je mehr eBay-Accounts Sie haben, desto schwieriger wird es, den Überblick zu behalten.

Ich würde mein letztes Hemd verwetten: Es gibt je menge Seller, die eine tägliche oder wöchentliche Routine haben, welche darin besteht, sich bei eBay einzuloggen, copy&paste zu machen und ihre Daten in ein Excel-Sheet kopieren. Wow, was für ein eintöniger Vorgang.

Jetzt stellen Sie sich mal vor, wie aufregend das sein muß, wenn Sie 5 oder mehr Accounts haben 🙂

Zahlen bedeuten Geld, wenn Ihre Reputation sinkt, die negativen Bewertungen nach oben gehen, Ihr Seller-Status sink, all dies bedeutet: Sie verlieren Geld!

Sofern Sie also nicht selber derjenige sind, der dieses aufregende “copy&paste” machen darf: Wollen Sie solch wichtige Zahlen einem Menschen überlassen, der schnell mal Fehler beim Kopieren machen kann? Der schnell mal übersehen kann, dass gewisse Werte und Zahlen “nicht okay” sind und vergisst, Sie zu informieren ?

Wäre es nicht besser, Sie selbst legen ihre eigenen Standards, Ziele und Grenzen fest und werden dann automatisch informiert, wenn diese von Ihren Vorgaben abweichen? Die Frage war natürlich rhetorisch. Natürlich ist es besser, es so zu machen.

Lassen Sie uns also einen Blick auf die eBay-APIs werfen und schauen, welche Möglichkeiten wir haben, welche Daten und Zahlen wir abrufen und überwachen können. Ich versuche nicht zu sehr ins Detail zu gehen, da jede API für sich eine Geschichte Wert ist.

Der Umsatz

Das Wichtigste, keine Frage: Geld!
Das eBay-Cockpit zeigt uns den Umsatz der letzten 31 Tage.
Den Umsatz sollten Sie eigentlich mit Hilfe Ihrer existieren Tools auslesen können,z.B. Ihre Buchhaltungs-Software (SAP) oder aus Ihrem Multi-Channel-Tool, wovon es ja zahlreiche gibt.

Sofern Sie dies jedoch alles nicht haben oder nicht in einer Form, die Ihnen genug Auswertungsmöglichkeiten liefert, werfen wir einen Blick auf die eBay APIs:

Um die Bestellungen auszulesen, bietet uns eBay hier mindestens 2 verschiede APIs an:

  • die gute alte Trading API mit GetOrders (XML/SOAP)
  • die “neue” Fulfillment API (diese ist Teil der Sell API) mit getOrders (REST)

Die Trading-API ist älter, bietet jedoch mehr Details, weswegen ich diese API der neueren bevorzuge. Die neuen REST APIs befinden sich teilweise noch im Beta-Status, bei der Trading-API ist daher mit weniger zukünftigen Anpssungen zu rechnen.

Mit diesen Abfragen können Sie also die Bestellungen der letzten 30 Tage filtern, länger kann man leider nicht zurückblicken. Jedoch haben Sie hier wirklich alle Informationen zu jeder einzelnen Bestellung. Statt also nur den Umsatz zu ermitteln, können Sie hier auch Stornos abziehen oder Gruppierungen jeglicher Art vornehmen. 

Der heilige Gral, der silberne Stern bedeutet: 1,000,000 Bewertungen

Feedback

Ein erfahrener Seller weiß sehr genau, wie wichtig Kunden-Feedback ist. Noch besser weiß er, was eBay-Feedback im speziellen bedeutet und welche Auswirkungen dieses auf seinen Account und seinen Verdienst bzw. Ausgaben haben.

Wer sich damit noch nie so richtig beschäftigt hat, sollte mal einen Blick in die Beschreibung der “Servicestatus und Mindeststandards” werfen.

Da die Feedback-API von eBay veraltet ist, gehe ich darauf nicht weiter ein. Schauen wir uns an, was derzeit aktuell existiert.

getFeedback liefert nicht das Käufer-Feedback als Text, sondern die Anzahl von:

  • positiven Bewertungen
  • neutralen Bewertungen
  • negativen Bewertungen
  • zurückgezogenen Bewertungen

und dem “SellerRatingSummaryArray” mit den Bewertungspunkten, aufgeteilt in:

  • ItemAsDescribed
  • Communication
  • ShippingTime
  • ShippingAndHandlingCharges

und dies nochmal unterteilt auf verschiedene Zeiträume. Diese Werte sollte man in jedem Fall im Auge behalten, schließlich sagt dies einiges über Sie als Verkäufer aus.

Aktuell scheint es keinen passenden Ersatz für die Feedback-API zu geben, wer jedoch das Feedback der Kunden als Text sammeln und auswerten möchte, kann wie bereits erwähnt die “eBay-Platform-Notifications” benutzen. Das Prinzip ist recht simpel: Wenn etwas passiert, informiert eBay Sie aktiv. Entweder, per XML an eine von Ihnen hinterlegte URL
oder per E-Mail. Sie können selbst bestimmen, zu welchen “Events” Sie benachrichtigt werden möchte. Es gibt verschiedene Events zum Thema Feedback.

Unabhängig von Feedback im speziellen, sind Platform-Notifications eine sehr spannende Informationsquelle, weil Sie im Gegensatz zu allen anderen APIs, wo Sie eine Anfrage stellen – hier, eBay selbst die Partei ist, welche Sie ungefragt (nahezu in Echtzeit) über jegliche Vorgänge (Events) informiert.

Ein kurzes Beispiel dazu: Statt alle 5 Minuten “getOrders” zu machen, um zu prüfen, ob es neue Bestellungen gibt, welche Sie importieren können, könnten Sie auch einfach darauf warten, dass eBay Ihnen mitteilt, wenn jemand etwas gekauft hat – Sie sind also “passiv”
statt “aktiv”.

ABER, und das ist ein großes “aber”: Wenn Sie diese Notifications nicht richtig verarbeiten oder welche verpassen, DANN sieht es schlecht aus. eBay versucht zwar wiederholt diese abzuliefern, wenn Ihr System jedoch überlastet ist und nicht schnell genug den Empfang quittiert, ist diese Notifcation weg – für immer. Meine Erfahrung hat gezeigt, man sollte sich nie ausschließlich auf diese Notifications verlassen. Sie stellen eine gute Ergänzung dar, sollten aber eher als Fail-Over benutzt werden oder genau dann, wenn Echtzeit eine wichtige Rolle spielt.

In Bezug auf “Kunden-Feedback” ist dennoch eine gute Quelle, weil ich eben den kompletten Text der Bewertung bekomme, in (nahezu) Echtzeit – diese kann ich dann sofort auswerten und ggf. an den Support weiterleiten, zb via Slack an das entsprechende Team.
Zeit ist Geld, je eher ich mich um unzufriedene Kunden kümmere, desto eher besteht die Chance, daß eine negative Bewertung ggf. zurückgezogen wird.

Kunden haben 10 Tage Zeit ihr Bewertung zu ändern oder zu löschen.
Je eher Sie, lieber Seller, reagieren, desto besser.

An dieser Stelle möchte Ich dem Entwickler noch etwas aus Erfahrung sagen, der Seller kann diesen Part gerne überspringen:

Wie ich aus erster Hand von großen e-commerce Platformen weiß, welche ich auf diversen eBay Treffen kennengelernt habe, werden diese eBay-Platform-Notifications gar nicht so oft genutzt, wie man denkt. Man muß beachten, wenn ich ein großer Seller bin und – wieso auch immer – für jedes ReviseItem (ein Update eines meiner Listings) eine Notification bekomme, dann muss mein System auch in der Lage sein, mehrere hundert Anfragen parallel beanworten zu können – und zwar sehr performant, ohne irgendwelche Verzögerungen. Diese Infrastruktur hat nicht jeder und möchte vielleicht auch nicht jeder. Der Aufbau und die Wartung solch einer Struktur ist nicht ganz ohne. Ich selbst nutze Jahre lang nodejs und MongoDB, ein Dream-Team, jedoch kommen auch diese beide an Ihre grenzen, wenn eBay Sie mit mehrere tausende Notifications beballert.
Da geht schonmal was verloren, nicht schön.

ABER, gut das die Amazon Websrvices (AWS) gibt. Seit einiger Zeit schon haben diese Services (S3, Lambda, Cloudfront, API Gateway, DynamoDB) mein nodejs+mongo abgelößt und ich bin begeistert und erschrocken zugleich, wie unglaublich performant das ganze funktioniert. Das Beste: Es kostet fast nichts! Mit AWS ist man den ganzen haus eigenen Streß los, kann beliebig weit skalieren und selbst tausende parellele Notifications sind kein Problem mehr, man muss es nur entsprechend konfigurieren. Der Wechsel zu AWS war ein absoluter Befreiungsschlag, ich kann es jedem nur empfehlen.

Zurück zur eBay-API :)Kommen wir zu den nächsten Punkten, welche wir überwachen können:

ITEM_NOT_AS

Mit Hilfe der Anaytics-API (welche Teil der Seller-API ist) und dem call “getCustomerServiceMetric” können Sie überwachen, wie gut:

  • Ihre Artikelbeschreibungungen sind
  • Ihr Versand funktioniert

Im eBay-Englisch: “ITEM_NOT_AS_DESCRIBED” und “ITEM_NOT_RECEIVED”.
Die API liefert Ihnen prozentuale Werte basierend auf der Anzahl der Käufe.

Im Gegensatz zu vielen anderen Abfragen, können Sie hier keine Einschränkung bzw. Filter benutzen. Es gibt gewisse Metriken, welche eBay monatlich evauliert, die Werte aus diesen Abfragen gehören dazu, d.h. Sie können entweder den letzten Zeitraum (Monat) abfragen, dieser wird “CURRENT” genannt, oder Sie fragen den aktuellen Zeitraum ab, d.h. Sie bekommen die Werte, die eBay ermitteln würde, wenn Ihr Account genau jetzt evauliert werden “würde”. Sie bekommen somit einen “vorläufigen” Wert, der Finale wird jeden Monat am 20. Tag ermittelt.

Hier noch die Definifion von eBay für das besagte “CURRENT” und “PROJECTED”:

CURRENT — A monthly evaluation that occurs on the 20th of every month.

PROJECTED — A daily evaluation that provides a projection of how the seller is currently performing with regards to the upcoming evaluation period.

Für Ihre täglichen Checks sollten sie also immer “PROJECTED” wählen.

PowerSellerStatus

Um Ihren PowerSeller-Status zu überwachen, gibt es in der “Trading-API” den call “GetSellerDashboard”. Auch diese Abfrage hat keine Filter und spiegelt nur den Status für ein bestimmtes Zeitfenster wieder. z.B. 30 Tage oder 365 Tage rückblickend. Neben den Status:

  • Excellent
  • Good
  • Poor
  • Unacceptable
  • VeryPoor

Können Sie auch “Alerts” vom Typ “StrongWarning” und “Warning” überwachen, welche in der Antwort mitgeliefert werden.

Ihr Seller Level

Was genau ist mit “Level” gemeint? Wir sprechen hier über die gefürchteten “Ratings”, basierend auf Käufe innerhalb eines bestimmten Zeitfensters. Ähnlich wie “getCustomerServiceMetric” gibt es auch hier nur die Unterscheidung zwischen “CURRENT” und “PROJECTED”, d.h. Sie fragen entweder den letzten Zeitraum ab, in dem eBay Ihren Account bewertet hat, oder den aktuellen, was aber nur ein “vorläufiges” Ergebnis darstellt.

Auch hier hilft uns wieder die Analytics-API mit dem Call “findSellerStandardsProfiles”.

Wir bekommen hier verschiedene “Ratings” und auch das “Level”:

  • TOP_RATED
  • ABOVE_STANDARD
  • BELOW_STANDARD

Ich brauche nicht zu erwähnen, daß Sie dies natürlich besonders im Auge behalten sollten.

Diese Abfrage liefert unterschiedliche Metriken, wie z.B. “DEFECTIVE_TRANSACTION_RATE” mit der Kurzbeschreibung “Transaction defect rate” oder “MIN_GMV” mit “Sales Amount”.

Diese Metriken sehen Sie auch in Ihrem Dashboard:

In der linken unteren Ecke sehen wir, wann eBay uns das nächste mal bewertet.

Wichtig zu erwähnen wäre, bei diesem Call: Die Metriken sind unterteilt nach “Programs”,

z.B. “PROGRAM_DE” oder “PROGRAM_UK”. Damit ist die Verkaufs-Platform gemeint. Es gibt auch ein “PROGRAM_GLOBAL”, jedoch darf man sich hier nicht verwirren lassen,dies ist NICHT die Summe aller Werte aus allen “Programs”, sondern stell nur einen Platzhalter für alle anderen Verkaufsplattformen dar, welche nicht explizit unterschieden werden.

Zum jetzigen Zeitpunkt unterscheidet eBay nur zwischen: DE, UK und US. Alles andere dürfte sich dann kumuliert in “GLOBAL” wiederfinden.

Ist das alles?

Natürlich nicht. Das eBay-API-Universum ist groß, riesig groß. Es gibt noch viele weitere APIs und um so mehr Abfragen, welche unzählige Informationen liefern, die man überwachen kann. Wie jedoch anfangs erklärt, wollte ich jetzt nicht zu tief gehen und nur einen groben Überblick der Daten vermitteln, welche wir aus dem eBay-Dashboard/Cockpit kennen.

Und wie war das jetzt mit dem schönen großen TV auf dem ich mein cooles Dashboard rund um die Uhr bestaunen kann?

Klar, darauf haben Sie doch jetzt gewartet oder? 😉
Aber bitte sehen Sie es mir nach, daß Ich diese Baustelle kurz halte, denn dazu ließe sich mindestens ein genauso langer Artikel schreiben.

Das Zauberwort heißt: METABASE. Vor kurzem bin ich erneut über diese fantastische Open-Source Software gestolpert und schaute mir an, welche Entwicklung seit meinem letzten Besuch vor ein paar Jahren stattgefunden hat. Und ich kann ehrfürchtig sagen: Mich hat es auch den Socken gehauen!
Es ist unbeschreiblich, wie einfach sich die schönsten Graphen zaubern lassen.

Natürlich müssen die hier erwähnen eBay-Daten in einer Datenbank verfügbar sein, damit Metabase darauf zugreifen kann.

Sie haben die Möglichkeit unterschiedliche Datenbank als Datenquelle einzurichten, wie z.B. das beliebte MySQL. Aus technischer Sicht sollte man natürlich nur “read-only” Datenbank-User benutzen, schließlich wollen wir “nur lesen” und keine Daten verändern.

Sofern Sie einen Datenbank-Slave haben, bietet es sich an, diesen für Abfragen zu benutzen, damit die Haupt-Datenbank nicht unnötig unter den Abfragen leiden muß.

Schauen wir uns ein Beispiel an:

Stellen wir uns einmal Ihre Tabelle vor, in dem Ihre Bestellungen gespeichert werden. Wir gehen davon aus, das wir mindestens folgende Felder haben:

  • ebay_account_name
  • order_date
  • order_tatal_amount (brutto gesamt)

Mit nur diesen 3 Werten, können wir einen Graph wie diesen zaubern: Jede Nummer repräsentiert einen Ihrer eBay Accounts und die Verkäufe der letzten 30 Tage

In Metabase sprechen wir von “Fragen”, der Techniker sagt hierzu: SQL-Queries. Um also den oben gezeigten Kuchen zu backen, brauchen wir:

  • einen Filter auf “order_date” (hier wählen Sie: “die letzten 30 Tage”)
  • eine “Zusammenfassung” mittels “ebay_account_name”
  • eine neue virtuelle Spalte: “Summe auf “order_total_amount”

Was Metabase im Hintergrund tut, ist recht simpel, hier am Beispiel von MySQL:

SELECT `order`.`ebay_account_name` AS `nameebay_account_name`, count(*) AS `count`, sum(`order`.`total_order_amount`) AS `sum`

FROM `order`

WHERE (date(`order`.`order_date`) BETWEEN date(date_add(now(), INTERVAL -30 day))

AND date(now()))

GROUP BY `order`.`ebay_account_name`

ORDER BY `order`.`ebay_account_name` ASC

Sie bekommen eine einfache Tabelle, klicken einfach auf “Visualisierung” und haben dann eine nette Auswahl an Darstellungsmöglichkeiten:

Das beste an der ganzen Sache: Metabase ist kostenlos und Open-Source!

Für die Techniker unter euch: Sofern Docker kein Fremdwort für euch ist, bekommt Ihr Metabase in spätestens 10 Minuten voll einsatzfähig zum laufen!

Der Metabase-Desktop ist extrem simpel und einfach gestaltet, sehr intuitiv und einfach zu bedienen. Selbst “nicht Entwickler” verstehen es sehr schnell und haben somit die Möglichkeit, auf Daten-Jagd zu gehen und endlich Transparenz in Euer Unternehmen zu bringen. Wenn der Techniker z.B. jemanden aus der Buchhaltung die Tabellen und Felder kurz erklärt, wird diese Person nach ganz kurzer Zeit selbst in der Lage sein, die wildesten Abfragen zu machen und schöne Graphen zu zaubern. Der eine oder andere mag sich vor Transparenz fürchten, vielleicht tauchen super alte Altlasten oder Misstände auf, die sich erst zeigen, wenn mal ein Nicht-Techniker einen Blick auf die sonst versteckten Daten wirft. So oder so: Habt keine Angst, es kann am Ende nur zu einer positiven Veränderung führen, wenn sich der Nebel verzieht 🙂

Als wenn das nicht alles wäre: Metabase hat bereits die s.g. “Alerts” integriert, z.B. via E-Mail oder Slack. Für jeden Balken-Graphen (ja, es funktioniert nur bei bestimmten Graphen) können Sie eine “Ziellinie” definiert. Ist diese gesetzt, können Sie sich benachrichtigen lassen, wenn diese Linie über- oder unterschritten wird. 

Wie genial ist das denn bitte?!

Basierend auf den Metriken, die ich hier im Zusammenhang mit eBay erwähnt habe, können Sie lieber Seller, ohne Hilfe eines Entwicklers, sich z.B. einen Alert schicken lassen, sobald einer Ihrer Accounts mehr als 3 nagtive Bewertungen kassiert hat. Natürlich immer unter der Vorraussetzung, daß alle Daten in einer Datenbank gespeichert werden, die Metabase unterstützt.

Und hier sind wir wieder am Anfang, wo ich versucht haben zu erklären: SIE sollten entscheiden was wichtig für SIE ist – und nicht eBay. SIE entscheiden, was für IHR Business wichtig ist, worauf SIE achten möchten, wo IHRE Grenzen liegen und WANN SIE reagieren möchten. Wann ist ein Wert außerhalb IHRER Norm und nicht erst, wenn eBay meckert.

Am Ende des Tages haben wir also ein cooles Dashboard mit vielen schönen Zahlen und Graphen und Alerts. Jetzt wird´s noch “cooler”: Wir aktivieren den Vollbild-Modus

und aktivieren den Nacht-Modus

und zum Schluß aktivieren wir noch die “automatische Aktualisierung”, 

das ganze zeigen wir dann auf einem TV oder großen Bildschirm an:

Das sieht nicht nur fantastisch aus, sondern bringt auch – für viele – ungewohnte Transparenz ins Unternehmen. Der eine oder andere Chef wird sehr wahrscheinlich bedenken haben, diese Transparenz mit seinen Mitarbeitern zu teilen, aber das sollte man sich nochmal gut überlegen. Viele Augen sehen mehr, viel mehr! Zudem kann so ein Dashboard auch gute, kritische und konstruktive Diskussionen innerhalb des eigenen Unternehmens anregen. Und jede Kritik ist kostbar! Lieber Seller, keine Angst, nutzen Sie dieses fantastische kostenlose Tool, es lohnt sich!

Bitte nicht vergessen: Wenn wir über große Plattformen und APIs sprechen: Nichts ist für die Ewigkeit. Manche hier erwähnten APIs sind zum Zeitpunkt dieses Artikels BETA. Das heißt, Wochen oder Monate später könnte sich das Eine oder Andere bereits geändert haben oder existiert nicht mehr, weil es durch etwas Neues ersetzt wurde. Aus meiner 15 jährigen Erfahrung als eBay-Entwickler kann ich ruhigen Gewissens sagen: Machen Sie sich keine Sorgen. Es wird zukünftig eher mehr als weniger Möglichkeiten geben, Daten zu sammeln und zu überwachen. eBay hat allzu gut verstanden, daß Entwickler moderne APIs brauchen, weswegen auch die neuen REST-APIs entstanden sind.

Sofern das alles hier nicht komplett langweilig für Sie war, können Sie mir gerne auf Github oder Twitter folgen 😉 Euer Michael Bladowski

Über mich

Hallo, mein Name ist Michael Bladowski, ich lebe in Bayern, nähe Regensburg. 1999 habe ich mich schon während der Schulzeit selbstständig gemacht und PCs verkauft. Kurz darauf hat es mich nach Regensburg verschlagen, wo ich fast 6 Jahre für einen Internet-Domain-Service-Provider gerarbeitet habe. Danach, wieder auf eigenen Füßen, arbeite ich bis heute für unterschiedliche Firmen und helfe im Bereich E-Commerce, API-Entwicklung und Automatisierung. Seit über 15 Jahren arbeite ich als eBay-Entwickler und Schule Unternehmen in der modernen Kommunikation (z.B. Slack) und helfe als DevOp beim optimieren von Prozessen. Mein Leitsatz lautet: Programmieren können viele, Probleme lösen nur wenige 😉