Zum Inhalt springen
Rohstoffberechnung Kursimport StoneX | Kurse automatisch abrufen statt abtippen, Plugin-Icon

Rohstoffberechnung Kursimport StoneX | Kurse automatisch abrufen statt abtippen

Kursimport StoneX für die Rohstoffberechnung: Statt Kurse abzutippen, holt das Plugin die Briefkurse je Währungspaar bei StoneX ab und schreibt sie in deinem Takt in die Kursdaten.

Verfügbarkeit

Bald verfügbar

Das Plugin ist in Vorbereitung für den Shopware Community Store. Preise und Download-Link stehen mit der Freigabe hier.

Auf einen Blick

  • Kurse kommen automatisch von StoneX in deine Kursdaten, ohne Abtippen
  • Jeder Kurseintrag mit passendem Kurscode bekommt den Kurs, in jedem Kundentyp
  • Du legst fest, wie oft abgerufen wird: alle 5 Minuten bis einmal am Tag
  • Ein Kurs von null oder ein Fehlwert überschreibt deinen Kurs nicht
  • Auch berechnete Ankaufspreise aus Artikelankauf folgen dem neuen Kurs

Du hast einen Kurszugang bei StoneX und rechnest deine Preise mit der Rohstoffberechnung. Trotzdem tippt jemand morgens die Kurse von Hand in die Kursdaten. Das kostet jeden Tag Zeit, und ein Zahlendreher steht sofort im Preis.

Das Problem

Die Rohstoffberechnung rechnet jeden Preis mit dem Kurs, der gerade in den Kursdaten steht. Wie aktuell der ist, hängt an dir. Wer mehrmals am Tag nachpflegt, verliert Zeit. Wer es seltener tut, verkauft mit dem Kurs von heute Morgen. Und führst du eigene Kurseinträge für Händler, machst du dieselbe Arbeit gleich mehrfach.

Die Lösung

Das Plugin holt die Kurse bei StoneX ab und schreibt sie über den Kursimport der Rohstoffberechnung in deine Kursdaten. Gelesen wird je Währungspaar der Briefkurs. Jeder Kurseintrag, dessen Kurscode zum Paar passt, bekommt den neuen Kurs, die Kurswährung und die Änderungszeit, in jedem Kundentyp. Das läuft als geplante Aufgabe in deinem Intervall oder auf Befehl.

Was du davon hast

Kein Abtippen mehr. Die Kurse kommen direkt in die Kursdaten unter Kataloge › Rohstoffberechnung › Kursdaten. In der Spalte „Zuletzt geändert“ siehst du, wann ein Kurs zuletzt geschrieben wurde.

Du bestimmst den Takt. Das Abrufintervall stellst du zwischen 5 und 1440 Minuten ein, ab Werk sind es 15. Reicht dir ein Kurs pro Tag, nimmst du 1440. Brauchst du ihn öfter, gehst du bis auf 5 Minuten herunter.

Ein Abruf für alle Kundentypen. Händler- und Endkunden-Einträge mit demselben Kurscode bekommen denselben Kurs in einem Durchgang. Unterschiedliche Konditionen legst du wie gewohnt über die Kursmanipulation je Eintrag fest, etwa mit einem kleineren Aufschlag für Händler.

Fehlwerte zerschießen keinen Preis. Kommt ein Kurs als null, negativ oder als Text an, verwirft der Import ihn. Der gespeicherte Kurs bleibt stehen. Das zählt, denn ohne Kurs rechnet die Rohstoffberechnung mit dem Wert 1.

Der Ankauf zieht mit. Nutzt du zusätzlich das Plugin Artikelankauf und rechnest deine Ankaufspreise mit dem Rohstoffkurs, folgen auch sie dem importierten Kurs. Verkauf und Ankauf hängen dann am selben Kurs.

Die Verbindung steuerst du. Ab Werk ist der Abruf aus. Erst wenn du „Kurse bei StoneX abrufen“ einschaltest, nimmt dein Shop Kontakt zu StoneX auf. Schaltest du ihn wieder aus, ist Ruhe.

So arbeitet das Plugin

In der Konfiguration des Plugins trägst du in der Karte „Zugangsdaten“ die „Daten-URL“ und die „Token-ID“ ein. Beides bekommst du von StoneX. In der Karte „Kursimport“ schaltest du „Kurse bei StoneX abrufen“ ein und legst das „Abrufintervall (Minuten)“ fest. Über den Button „Dokumentation öffnen“ kommst du direkt zur Anleitung.

Die geplante Aufgabe ruft die Kurse in deinem Intervall ab. Dafür braucht dein Server einen laufenden Worker für geplante Aufgaben. Eine Änderung am Intervall gilt ab dem übernächsten Lauf der Aufgabe. Lieber per Crontab? Dann startest du den Abruf mit dem Befehl resourcecalc:stonex:import. Der frühere Name resourcecalcstonex:cron funktioniert weiter.

Aus jedem Eintrag der Antwort liest das Plugin das Währungspaar und den Briefkurs. Das Paar wird zum Kurscode, zum Beispiel XAUEUR. Die Kursbezeichnung bekommt einen Unterstrich (XAU_EUR), die letzten drei Buchstaben werden zur Kurswährung (EUR). Einträge ohne Paar überspringt der Import und vermerkt sie im Protokoll.

Für jedes Paar ohne passenden Kurseintrag legt der Import einmal einen neuen Eintrag im Kundentyp Default an, mit dem Paar als Internem Code. Vorhandene Einträge findet er über den Kurscode. Trägst du im Feld „Code“ deiner bestehenden Einträge das Währungspaar ein, bekommen genau diese Einträge den Kurs.

Deine Kunden sehen den neuen Kurs beim nächsten Seitenaufruf, denn die Rohstoffberechnung rechnet die Anzeige bei jedem Aufruf neu. Sortierung nach Preis, Preisfilter und Exporte nutzen den gespeicherten Preis. Den schreibt weiterhin der Befehl resourcecalc:cron der Rohstoffberechnung.

Typische Einsatzszenarien

Edelmetallshop mit StoneX-Zugang. Du verkaufst Barren und Münzen und rechnest sie mit der Rohstoffberechnung. Statt die Kurse morgens und mittags nachzutragen, stellst du das Intervall auf 15 Minuten und schaust nur noch in die Spalte „Zuletzt geändert“.

Händler und Endkunden aus einem Kurs. Ein Rohstoff steht in deinen Kursdaten zweimal, einmal für Default und einmal für den Kundentyp Händler, beide mit demselben Kurscode aus deinem StoneX-Zugang. Der Import schreibt den Kurs in beide Einträge. Den Unterschied machst du über die Kursmanipulation des Händler-Eintrags.

Verkauf und Ankauf im selben Shop. Mit Artikelankauf kaufst du Ware von Kunden zurück. Rechnen deine Ankaufspreise mit dem Rohstoffkurs, steigen und fallen sie mit jedem Import, ohne dass du einen Ankaufspreis anfasst.

Bestandsshop mit Crontab. Du startest den Import seit Jahren per Crontab mit resourcecalcstonex:cron. Nach dem Update läuft derselbe Eintrag weiter. War eine Daten-URL eingetragen, schaltet das Update den Abruf von selbst ein.

Technische Fakten für deine IT

  • Shopware 6.7.7 oder höher, PHP 8.2 oder höher. Voraussetzung ist die Rohstoffberechnung (SwpResourceCalcSix) 6.7, installiert und aktiv.
  • Keine eigenen Tabellen, keine Zusatzfelder. Die Kurse schreibt das Plugin über den Kursimport der Rohstoffberechnung in deren Kursdaten, ein Schreibvorgang je Abruf. Die Originaltabellen von Shopware bleiben im Aufbau unverändert.
  • Externer Aufruf: ausschließlich an die eingetragene Daten-URL und nur, wenn „Kurse bei StoneX abrufen“ eingeschaltet ist. Gesendet wird die Token-ID als Header, keine Kunden- und keine personenbezogenen Daten. Das Plugin setzt keine Cookies.
  • Ohne Protokoll in der Daten-URL nutzt das Plugin https://. Mit http:// geht auch das Token unverschlüsselt über die Leitung. Zugangsdaten in der Adresse lehnt das Plugin ab.
  • Die Token-ID ist in der Administration maskiert, liegt aber im Klartext in der Systemkonfiguration. Ins Protokoll schreibt das Plugin sie nie.
  • Grenzen je Abruf: 10 Sekunden je Verbindung, 30 Sekunden insgesamt, Antwort höchstens 5 MB, höchstens 3 Weiterleitungen.
  • Protokoll unter var/log/SwpResourceCalcStonexSix-JJJJ-MM-TT.log: Zusammenfassung je Import, Verbindungsfehler, unlesbare Antworten, übersprungene Einträge.
  • Keine Storefront-Erweiterung. Der Abruf läuft im Hintergrund als geplante Aufgabe oder auf der Konsole, der Seitenaufbau bleibt unberührt. Das Intervall speichert das Plugin an seiner geplanten Aufgabe.
  • Die Einstellungen gelten shopweit für alle Verkaufskanäle, weil Kurse keinen Verkaufskanal haben.
  • Deinstallation: Das Plugin legt keine eigenen Tabellen an. Die importierten Kurse bleiben in den Kursdaten der Rohstoffberechnung.

Ehrlich gesagt

Das Plugin ersetzt keinen Vertrag mit StoneX. Daten-URL und Token-ID bekommst du von StoneX, und welche Paare in der Antwort stehen, regelt dein Zugang, nicht das Plugin. Ohne die Rohstoffberechnung tut es nichts. Es ändert keine Shop-Währungen und rechnet keine gespeicherten Artikelpreise neu, dafür bleibt resourcecalc:cron zuständig. Geprüft haben wir den Import mit nachgestellten Antworten in dem Format, das schon die Vorgängerversionen gelesen haben. Mach den ersten Abruf mit deinem Zugang am besten in einem Testshop und wirf danach einen Blick ins Protokoll.

Häufige Fragen

Was brauche ich von StoneX?

Eine Daten-URL, also die Adresse der StoneX-Kursschnittstelle, und eine Token-ID. Beides bekommst du von StoneX, nicht mit dem Plugin. Welche Kurse dein Zugang enthält und was er kostet, klärst du direkt mit StoneX.

Funktioniert das Plugin ohne die Rohstoffberechnung?

Nein. Das Plugin schreibt die Kurse in die Kursdaten der Rohstoffberechnung. Ohne die Rohstoffberechnung 6.7, installiert und aktiv, hat es keinen Ort, an den es die Kurse schreiben kann.

Welche Kurseinträge bekommen den neuen Kurs?

Jeder Eintrag in den Kursdaten, dessen Kurscode zum Währungspaar passt, und zwar in jedem Kundentyp. Für ein Paar ohne passenden Eintrag legt der Import einmal einen neuen Eintrag im Kundentyp Default an. Solche Einträge wirken erst, wenn ein Artikel sie als Rohstoff nutzt. Löschst du einen, legt der nächste Import ihn wieder an.

Ändern sich meine Artikelpreise sofort?

Die Anzeige im Shop ja, beim nächsten Seitenaufruf. Die Rohstoffberechnung rechnet sie bei jedem Aufruf mit dem aktuellen Kurs. Sortierung nach Preis, Preisfilter und Exporte ziehen erst nach, wenn der Befehl resourcecalc:cron der Rohstoffberechnung gelaufen ist.

Aktualisiert das Plugin auch meine Shop-Währungen?

Nein. Der Import schreibt nur Rohstoffkurse. Die Umrechnungsfaktoren deiner Währungen pflegst du in Shopware unter Einstellungen › Regional › Währungen. Bis Version 6.06.00 hat der Import die Faktoren für USD und EUR mitgesetzt, seit 6.7.0 nicht mehr.

Was passiert, wenn ein Kurs fehlt oder StoneX nicht erreichbar ist?

Ein Kurs von null, ein negativer oder ein nicht numerischer Wert wird verworfen, der gespeicherte Kurs bleibt. Ist StoneX nicht erreichbar oder die Antwort unlesbar, ändert der Import nichts. Den Grund findest du im Protokoll des Plugins unter var/log.

Ich nutze eine ältere Version mit Crontab. Muss ich etwas umstellen?

Meist nicht. Der frühere Befehl resourcecalcstonex:cron läuft weiter. War eine Daten-URL eingetragen, schaltet das Update den neuen Schalter „Kurse bei StoneX abrufen“ automatisch ein. Prüfe nur deine Währungsfaktoren, die setzt der Import nicht mehr.

Werden Daten an externe Dienste übertragen?

Ja, an StoneX, und nur dorthin. Das Plugin ruft ausschließlich die eingetragene Daten-URL auf, nur bei eingeschaltetem Abruf, und sendet dabei die Token-ID als Header. Kunden- oder personenbezogene Daten verlassen deinen Shop nicht, Cookies setzt das Plugin keine.

Kann ich den Abruf je Verkaufskanal steuern?

Nein. Kurse haben keinen Verkaufskanal, deshalb gelten die Einstellungen shopweit. In welchem Verkaufskanal Preise aus den Kursen berechnet werden, entscheidet weiterhin der Schalter der Rohstoffberechnung.

Was passiert bei der Deinstallation?

Das Plugin legt keine eigenen Tabellen an. Die Konfiguration entfernt Shopware, wenn du die Daten nicht behältst. Die importierten Kurse bleiben in den Kursdaten der Rohstoffberechnung stehen und lassen sich dort weiter von Hand pflegen.

Features im Überblick

  • Abruf der Briefkurse je Währungspaar von der StoneX-Kursschnittstelle mit Daten-URL und Token-ID
  • Schalter „Kurse bei StoneX abrufen“, ab Werk aus: ausgeschaltet keine Verbindung zu StoneX
  • Geplante Aufgabe mit Abrufintervall von 5 bis 1440 Minuten, Standard 15 Minuten
  • Konsolenbefehl resourcecalc:stonex:import, der frühere Name resourcecalcstonex:cron bleibt nutzbar
  • Kurscode aus dem Paar, Kursbezeichnung mit Unterstrich, Kurswährung aus den letzten drei Buchstaben
  • Neuer Kurs, Kurswährung und Änderungszeit für jeden Eintrag mit passendem Kurscode, je Kundentyp
  • Unbekannte Paare legt der Import einmal im Kundentyp Default an, mit dem Paar als Internem Code
  • Kurse von null, negativ oder nicht numerisch werden verworfen, der gespeicherte Kurs bleibt
  • Einträge ohne Währungspaar überspringt der Import und vermerkt sie im Protokoll
  • Token-ID geht als Header an StoneX, ist in der Administration maskiert und steht nie im Protokoll
  • Ohne Protokoll in der Daten-URL gilt https://, Zugangsdaten in der Adresse werden abgelehnt
  • Zeitlimit 10 Sekunden je Verbindung und 30 Sekunden gesamt, Antwort höchstens 5 MB
  • Eigenes Protokoll unter var/log mit Zusammenfassung je Import und Verbindungsfehlern
  • Nach dem Update von älteren Versionen mit Daten-URL ist der Abruf automatisch eingeschaltet
  • Konfiguration auf Deutsch, Englisch und Niederländisch, gültig für alle Verkaufskanäle
Einrichtung & Pflege

Brauchst du Hilfe bei der Installation?

Wir installieren, konfigurieren und pflegen das Plugin auch dauerhaft, als Teil unserer Shop-Betreuung. Damit es bei Updates nicht plötzlich Schwierigkeiten gibt.

Screenshots

dein-shop.de
Rohstoffberechnung Kursimport StoneX | Kurse automatisch abrufen statt abtippen. Screenshot 1
Rohstoffberechnung Kursimport StoneX | Kurse automatisch abrufen statt abtippen. Screenshot 2
Rohstoffberechnung Kursimport StoneX | Kurse automatisch abrufen statt abtippen. Screenshot 3
Rohstoffberechnung Kursimport StoneX | Kurse automatisch abrufen statt abtippen. Screenshot 4