Rohstoffberechnung: Kursimport VWD
Kursimport VWD für die Rohstoffberechnung: Das Plugin ruft deine VWD-Kursdatei nach Zeitplan ab und schreibt die Kurse in die Rohstoffberechnung. Ungültige Kurse verwirft es.
Auf dieser Seite
- Einleitung
- Was du mit diesem Plugin erreichst
- Für wen ist dieses Plugin?
- Was du vorab brauchst
- Installation
- Erste Schritte
- Einstellungen
- Eine Einstellung für alle Verkaufskanäle
- Dokumentation öffnen
- Kurse bei VWD abrufen
- Abrufintervall (Minuten)
- Abrufintervall je Kundentyp
- Kursfeld
- Daten-URL
- Benutzername und Passwort
- So nutzt du die Funktionen
- So prüfst du, ob die Kurse angekommen sind
- So erkennst du einen Kurs, den der Import neu angelegt hat
- So wirken die neuen Kurse auf deine Preise
- So schützt dich das Plugin vor falschen Kursen
- So hältst du den Abruf an
- Fehlerbehebung
- Die Kurse ändern sich nicht
- In der Adresse stehen Benutzername und Passwort
- Der Anbieter stellt die Datei nur unverschlüsselt bereit
- Bei einem Abruf wurde kein einziger Kurs übernommen
- Ein einzelner Rohstoff bekommt keinen neuen Kurs
- Ein neuer Code wird nicht als Kurs angelegt
- Die Kursbezeichnung aus der Datei wird nicht übernommen
- Die Kurswährung hat sich nach dem Import geändert
- Das neue Abrufintervall wirkt nicht sofort
- Sortierung, Filter oder Exporte zeigen noch alte Preise
- Das Plugin lässt sich nicht installieren oder aktivieren
- FAQ
- Für Administratoren / Technische Details
- Systemanforderungen
- Installation über die Kommandozeile
- Geplante Aufgabe
- Abruf von Hand
- Gespeicherte Produktpreise aktualisieren
- Verbindung zum Anbieter
- Aufbau der Kursdatei
- Protokolle
- Update von früheren Versionen
- Deinstallation
Einleitung
Rohstoffberechnung: Kursimport VWD holt die Kurse für deine Rohstoffberechnung automatisch aus der Kursdatei deines VWD-Zugangs. Du tippst keine Kurse mehr von Hand ab.
Was du mit diesem Plugin erreichst
- Deine Kurse kommen in einem festen Takt in den Shop — von alle 5 Minuten bis einmal am Tag.
- Jeder Rohstoff mit passendem Kurscode bekommt den neuen Kurs, in allen Kundentypen auf einmal. Kundentypen mit eigenem Abrufintervall bekommen ihre Kurse in ihrem Takt, auf Wunsch bis unter einer Minute.
- Du wählst, welcher Kurs übernommen wird: Letzter Kurs, Geldkurs oder Briefkurs.
- Ein kaputter Wert in der Datei führt nicht zu einem Nullpreis. Ungültige Kurse verwirft das Plugin, der bisherige Kurs bleibt stehen.
- Nichts wird abgerufen, bevor du es freigibst. Nach der Installation ist der Abruf ausgeschaltet.
Für wen ist dieses Plugin?
Für Shop-Betreiber, die ihre Preise mit dem Plugin Rohstoffberechnung aus Kursen berechnen — zum Beispiel im Edelmetallhandel — und einen eigenen Zugang zu einer VWD-Kursdatei haben.
Was du vorab brauchst
- Das Plugin Rohstoffberechnung in Version 6.7, installiert und aktiv.
- Von deinem Anbieter: die Adresse der Kursdatei, einen Benutzernamen und ein Passwort. Das Plugin bringt keinen Zugang und keine Kursdaten mit.
- Eine Kursdatei in dem Aufbau, den das Plugin erwartet. Den genauen Aufbau findest du in Kapitel 9 unter Aufbau der Kursdatei. Kläre vor dem Einsatz mit deinem Anbieter, ob deine Datei so aufgebaut ist.
- Geplante Aufgaben müssen in deinem Shop laufen. Sonst ruft das Plugin nicht nach Zeitplan ab. Das richtet die Person ein, die deinen Server betreut (Kapitel 9).
Installation
Nach dem Kauf steht dir das Plugin direkt in deiner Administration zur Verfügung — du musst nichts herunterladen.
Das Plugin baut auf der Rohstoffberechnung auf. Installiere und aktiviere deshalb zuerst die Rohstoffberechnung und erst danach den Kursimport.
-
Melde dich in deiner Shopware-Administration an (
DeinShop.de/admin). -
Öffne Erweiterungen → Meine Erweiterungen.
-
Prüfe, ob Rohstoffberechnung installiert und aktiv ist. Falls nicht, klicke dort zuerst auf Installieren und schalte den Schalter neben dem Eintrag ein.
-
Klicke neben Rohstoffberechnung: Kursimport VWD auf Installieren.
-
Aktiviere das Plugin über den Schalter neben dem Eintrag — fertig.
Abb. 1: Das Plugin ist installiert und aktiv. Über „Konfigurieren” kommst du zu den Einstellungen.
Nach der Installation ruft das Plugin noch nichts ab. Den Abruf schaltest du in Kapitel 3 ein.
Taucht Rohstoffberechnung: Kursimport VWD nicht in der Liste auf, ist dein Shopware-Account noch nicht mit dem Shop verbunden. Das erledigst du unter Erweiterungen → Meine Erweiterungen im Reiter Shopware Account über die Anmeldung mit deinem Shopware-Konto.
Erste Schritte
So bringst du den ersten Kursabruf zum Laufen:
-
Einstellungen öffnen: Gehe zu Erweiterungen → Meine Erweiterungen und klicke in der Zeile Rohstoffberechnung: Kursimport VWD auf Konfigurieren. Lass die Auswahl Verkaufskanal oben auf Alle Verkaufskanäle.
Abb. 2: Die Einstellungsseite mit dem Bereich „Kursimport”. Im Beispiel ist der Abruf bereits eingeschaltet. -
Zugangsdaten eintragen: Trage im Bereich Zugangsdaten die Daten-URL, den Benutzernamen und das Passwort von deinem Anbieter ein. Fehlt eine dieser drei Angaben, ruft das Plugin nichts ab.
-
Kursfeld wählen: Lege im Bereich Kursimport unter Kursfeld fest, welcher Kurs übernommen wird. Das Abrufintervall (Minuten) steht nach der Installation auf 15.
-
Abruf einschalten: Schalte Kurse bei VWD abrufen ein.
-
Speichern: Klicke oben rechts auf Speichern.
-
Ergebnis prüfen: Beim nächsten planmäßigen Lauf holt das Plugin die Kurse. Danach siehst du sie unter Kataloge → Rohstoffberechnung → Kursdaten (Kapitel 5.1).
Tipp: Brauchst du die Kurse sofort und nicht erst beim nächsten planmäßigen Abruf, kann die Person, die deinen Server betreut, den Abruf von Hand starten (Kapitel 9).
Einstellungen
Die Einstellungen findest du unter Erweiterungen → Meine Erweiterungen in der Zeile Rohstoffberechnung: Kursimport VWD über Konfigurieren (Abb. 2). Sie sind in die zwei Bereiche Kursimport und Zugangsdaten aufgeteilt. Nach jeder Änderung klickst du oben rechts auf Speichern.
Eine Einstellung für alle Verkaufskanäle
Die Kurse der Rohstoffberechnung gehören zu keinem Verkaufskanal. Deshalb gelten auch diese Einstellungen für deinen ganzen Shop. Lass die Auswahl Verkaufskanal oben auf Alle Verkaufskanäle und trage alles dort ein. Werte, die du nur für einen einzelnen Verkaufskanal speicherst, beachtet das Plugin nicht.
Dokumentation öffnen
Der Button Dokumentation öffnen ganz oben im Bereich Kursimport öffnet diese Anleitung online, in der Sprache deiner Administration.
Kurse bei VWD abrufen
Mit dem Schalter Kurse bei VWD abrufen gibst du den Abruf frei. Eingeschaltet holt das Plugin die Kursdatei im eingestellten Takt und übernimmt die Kurse. Ausgeschaltet baut es keine Verbindung zum Anbieter auf — weder nach Zeitplan noch bei einem Abruf von Hand. Nach der Installation ist der Schalter aus.
Wozu das gut ist: Du entscheidest selbst, ab wann dein Shop Kontakt zum Anbieter aufnimmt. Und du kannst den Abruf jederzeit anhalten, zum Beispiel wenn sich deine Zugangsdaten ändern. Die gespeicherten Kurse bleiben dabei, wie sie sind.
Abrufintervall (Minuten)
Unter Abrufintervall (Minuten) legst du fest, wie oft das Plugin die Kurse holt. Erlaubt sind 5 bis 1440 Minuten, also von alle fünf Minuten bis einmal am Tag. Nach der Installation steht hier 15.
Eine Änderung gilt ab dem übernächsten Lauf. Bis dahin ruft das Plugin noch im bisherigen Takt ab, danach im neuen Abstand. Der Grund: Shopware hat den nächsten Lauf schon geplant, und das Plugin übernimmt den neuen Wert erst bei diesem Lauf.
Den Takt hält die geplante Aufgabe deines Shops ein. Sie läuft nur, wenn auf deinem Server die geplanten Aufgaben abgearbeitet werden — der Hilfetext am Feld spricht vom „Worker für geplante Aufgaben”. Ob das eingerichtet ist, weiß die Person, die deinen Server betreut (Kapitel 9).
Wozu das gut ist: Je kürzer der Takt, desto näher sind deine Preise am Markt. Ein längerer Takt passt, wenn dir wenige Aktualisierungen am Tag reichen. Ob dein Vertrag mit dem Anbieter eine Grenze für die Zahl der Abrufe setzt, klärst du mit ihm.
Abrufintervall je Kundentyp
Die Rohstoffberechnung kann für einzelne Kundentypen ein eigenes Abrufintervall (Sekunden) führen (Kataloge → Rohstoffberechnung → Kundentypen). Dann holt dieses Plugin die Kurse dieses Kundentyps in dem Abstand, der dort eingetragen ist; alle übrigen Kundentypen bekommen ihre Kurse im Intervall hier. Die geplante Aufgabe läuft dann im kürzesten dieser Intervalle, frühestens alle 5 Minuten.
Für Intervalle unter 5 Minuten startet deine IT den Befehl resourcecalc:vwd:import jede Minute per System-Cronjob:
* * * * * cd /pfad/zum/shop && php bin/console resourcecalc:vwd:import
Der Befehl holt dann innerhalb der Minute alle Kurse, die fällig werden — bei Intervallen unter einer Minute mehrmals. Befehl und geplante Aufgabe teilen sich den Zeitplan: Jeder Kurs wird je Intervall nur einmal abgerufen, egal über welchen Weg. Ist nichts fällig, endet der Befehl sofort mit einem Hinweis. Mit php bin/console resourcecalc:vwd:import --force holst du die Kurse sofort für alle Kundentypen.
Kursfeld
Unter Kursfeld wählst du, welche Spalte der Kursdatei als Kurs übernommen wird. Zur Wahl stehen:
- Letzter Kurs (last) — nach der Installation eingestellt
- Geldkurs (bid)
- Briefkurs (ask)
Abb. 3: Die drei Möglichkeiten im Feld „Kursfeld”.
Der Name in Klammern ist die Spalte, die das Plugin in der Kursdatei sucht. Die Wahl gilt für alle Kurse eines Abrufs. Fehlt die gewählte Spalte in der Datei, übernimmt das Plugin bei diesem Abruf keinen einzigen Kurs und notiert den Grund im Protokoll.
Wozu das gut ist: Du legst fest, auf welcher Kursbasis deine Preise rechnen. Welche dieser Spalten deine Kursdatei enthält, klärst du mit deinem Anbieter.
Daten-URL
In Daten-URL trägst du die Adresse der Kursdatei ein, die du von deinem Anbieter bekommst.
Abb. 4: Der Bereich „Zugangsdaten”. Adresse und Benutzername im Bild sind Beispiele, das Passwort ist verdeckt.
- Schreibst du die Adresse ohne
https://davor, ergänzt das Pluginhttps://selbst. Die Verbindung ist dann verschlüsselt. - Trage
http://nur ein, wenn dein Anbieter die Datei ausschließlich unverschlüsselt bereitstellt. Dann gehen auch Benutzername und Passwort unverschlüsselt über die Leitung. - Schreib Benutzername und Passwort nie in die Adresse. Eine Adresse mit Zugangsdaten weist das Plugin ab und ruft dann nichts ab.
Wozu das gut ist: Deine Zugangsdaten stehen nicht in der Adresse und werden standardmäßig verschlüsselt übertragen.
Benutzername und Passwort
In Benutzername und Passwort trägst du die Zugangsdaten von deinem Anbieter ein. Das Plugin schickt beide bei jedem Abruf als Anmeldung mit, getrennt von der Adresse. Das Passwort ist in der Administration verdeckt. Über das Augen-Symbol rechts im Feld blendest du es ein.
Wichtig: Das Passwort wird verdeckt angezeigt, aber im Klartext in der Systemkonfiguration deines Shops gespeichert.
So nutzt du die Funktionen
So prüfst du, ob die Kurse angekommen sind
Was dir das bringt: Du siehst auf einen Blick, welchen Kurs jeder Rohstoff gerade hat und wann der letzte Import war.
Schritt für Schritt
- Gehe zu Kataloge → Rohstoffberechnung → Kursdaten.
- Sieh dir diese Spalten an:
- Aktueller Kurs: der Kurs aus dem letzten Abruf
- Kurswährung: die Währung, die das Plugin aus dem Code gelesen hat
- Zuletzt geändert: der Zeitpunkt des letzten Imports
Abb. 5: Kursdaten nach einem Import mit Beispielkursen. Weitere Spalten sind in diesem Bild ausgeblendet. Gold steht zweimal in der Liste, einmal je Kundentyp.
Was beim Import passiert
- Jeder Rohstoff, dessen Kurscode in der Kursdatei steht, bekommt den neuen Kurs, die Kurswährung und den Zeitpunkt des Imports — in jedem Kundentyp. Deshalb haben beide Gold-Zeilen in Abb. 5 denselben Kurs.
- Die Kursbezeichnung, die du gepflegt hast, bleibt erhalten. Im Beispiel heißt Gold weiterhin „Gold”, obwohl in der Kursdatei ein anderer Name steht.
- Zuletzt geändert zeigt den Zeitpunkt des Imports. Eine Zeitangabe aus der Kursdatei übernimmt das Plugin nicht.
Wichtig: Die Kurswährung setzt das Plugin bei jedem Import neu aus dem Code. Hast du sie bei einem Rohstoff von Hand geändert, überschreibt der nächste Import deine Änderung.
Tipp: Der Kurscode muss genau so geschrieben sein wie der Code in der Kursdatei. Nur dann findet der Import den Rohstoff.
So erkennst du einen Kurs, den der Import neu angelegt hat
Was dir das bringt: Ein Code, der neu in deiner Kursdatei auftaucht, geht nicht verloren. Das Plugin legt ihn an, und du entscheidest, ob du ihn nutzt.
Steht in der Kursdatei ein Code, den es in deinen Kursdaten noch nicht gibt, legt das Plugin dafür einmal einen neuen Kurs im Kundentyp Default an. Er enthält:
- Kundentyp: Default
- Kursbezeichnung: den Namen aus der Kursdatei
- Code und Interner Code: jeweils den Code aus der Kursdatei
- Variable in der Formel: x
- Aktueller Marktkurs: den importierten Kurs
Abb. 6: Palladium wurde im Beispiel vom Import neu angelegt.
Schritt für Schritt
- Gehe zu Kataloge → Rohstoffberechnung → Kursdaten.
- Öffne den neuen Eintrag (im Beispiel Palladium).
- Passe bei Bedarf die Kursbezeichnung an. Sie bleibt bei künftigen Importen erhalten.
- Klicke auf Speichern.
Tipp: Ein neu angelegter Kurs ändert noch keinen Preis. Er wirkt erst, wenn ein Produkt diesen Rohstoff in der Rohstoffberechnung nutzt. Wie du ein Produkt mit einem Rohstoff verbindest, steht im Handbuch der Rohstoffberechnung (Kapitel 8).
So wirken die neuen Kurse auf deine Preise
Was dir das bringt: Deine Preise folgen dem Markt, ohne dass du ein Produkt anfassen musst.
Die Rohstoffberechnung rechnet Preise aus dem gespeicherten Kurs. Nach einem Import rechnet sie mit dem neuen Kurs. Nutzt du zusätzlich das Plugin Artikelankauf, folgt auch der Aktueller Ankaufspreis dem neuen Kurs.
Abb. 7: Produktseite im Beispiel-Shop. Verkaufspreis und „Aktueller Ankaufspreis” sind mit dem importierten Goldkurs berechnet.
Wichtig: Gespeicherte Produktpreise aktualisiert der Import nicht. Diese Preise nutzt dein Shop zum Beispiel für Sortierung, Filter und Exporte. Sie erneuert die Rohstoffberechnung mit einem eigenen Befehl, den die Person, die deinen Server betreut, regelmäßig laufen lassen sollte (Kapitel 9).
So schützt dich das Plugin vor falschen Kursen
Was dir das bringt: Ein Fehler in der Kursdatei macht aus deinem Produkt kein Angebot für 0 €.
Das Plugin prüft jeden Kurs, bevor es ihn übernimmt. Diese Werte verwirft es, und der bisher gespeicherte Kurs bleibt stehen:
- ein Kurs von 0
- ein negativer Kurs
- ein leerer Wert oder etwas, das keine Zahl ist — dazu zählt auch ein Kurs mit Komma (
2512,40) statt Punkt (2512.40) - ein Kurs, bei dem die Zeichen 4 bis 6 des Codes keine Währung aus drei Buchstaben ergeben
Zeilen mit mehr oder weniger Spalten als die erste Zeile der Datei überspringt das Plugin.
Kann das Plugin die Datei als Ganzes nicht lesen, übernimmt es bei diesem Abruf keinen einzigen Kurs. Das passiert, wenn
- die Adresse nicht erreichbar ist oder der Server mit einem Fehler antwortet,
- die Antwort leer ist oder keine Kursdatei,
- eine Pflichtspalte fehlt: der Code, der Name oder die Spalte des gewählten Kursfelds,
- die Datei außer der ersten Zeile keine Kurse enthält.
In allen Fällen steht der Grund im Protokoll (Kapitel 9).
So hältst du den Abruf an
Was dir das bringt: Du stoppst die Verbindung zum Anbieter, ohne das Plugin zu deinstallieren und ohne deine Einstellungen zu verlieren.
Schritt für Schritt
- Gehe zu Erweiterungen → Meine Erweiterungen und klicke in der Zeile Rohstoffberechnung: Kursimport VWD auf Konfigurieren.
- Schalte Kurse bei VWD abrufen aus.
- Klicke auf Speichern.
Ab dann baut das Plugin keine Verbindung mehr auf. Deine Kurse bleiben, wie sie sind. Du kannst sie unter Kataloge → Rohstoffberechnung → Kursdaten wieder von Hand pflegen. Zum Fortsetzen schaltest du den Schalter wieder ein.
Wichtig: Solange der Abruf eingeschaltet ist, überschreibt jeder Import einen von Hand eingetragenen Kurs, wenn sein Code in der Kursdatei steht.
Fehlerbehebung
Die Kurse ändern sich nicht
Woran es liegen kann: Der Abruf ist ausgeschaltet, die Zugangsdaten sind unvollständig oder die geplanten Aufgaben laufen in deinem Shop nicht.
So behebst du es:
- Öffne die Einstellungen des Plugins und prüfe, ob Kurse bei VWD abrufen eingeschaltet ist.
- Prüfe, ob Daten-URL, Benutzername und Passwort ausgefüllt sind. Fehlt eine Angabe, ruft das Plugin nichts ab.
- Prüfe, ob oben bei Verkaufskanal die Auswahl Alle Verkaufskanäle steht und deine Werte dort eingetragen sind.
- Sieh unter Kataloge → Rohstoffberechnung → Kursdaten in der Spalte Zuletzt geändert nach. Ist der Zeitpunkt alt, bitte die Person, die deinen Server betreut, zu prüfen, ob die geplanten Aufgaben laufen, und ins Protokoll zu sehen (Kapitel 9).
In der Adresse stehen Benutzername und Passwort
Woran es liegt: Manche Adressen enthalten die Zugangsdaten direkt, etwa in der Form https://benutzer:passwort@…. Eine solche Adresse weist das Plugin ab und ruft nichts ab.
So behebst du es: Entferne Benutzername und Passwort aus der Daten-URL und trage sie in die Felder Benutzername und Passwort ein. Klicke dann auf Speichern.
Der Anbieter stellt die Datei nur unverschlüsselt bereit
Woran es liegt: Steht in der Daten-URL kein http:// oder https://, ruft das Plugin per https:// ab. Bietet dein Anbieter die Datei nur unverschlüsselt an, schlägt der Abruf fehl.
So behebst du es: Trage die Adresse mit http:// davor ein. Bedenke: Benutzername und Passwort gehen dann unverschlüsselt über die Leitung.
Bei einem Abruf wurde kein einziger Kurs übernommen
Woran es liegen kann: Das Plugin konnte die Datei als Ganzes nicht lesen — sie war nicht erreichbar, leer, keine Kursdatei, oder es fehlte eine Pflichtspalte (Kapitel 5.4).
So behebst du es:
- Prüfe die Daten-URL auf Tippfehler.
- Prüfe, ob die Spalte deines gewählten Kursfelds in der Datei vorkommt. Wechsle sonst das Kursfeld.
- Lass dir den Grund aus dem Protokoll geben (Kapitel 9) und kläre ihn mit deinem Anbieter.
Ein einzelner Rohstoff bekommt keinen neuen Kurs
Woran es liegen kann: Der Kurscode weicht vom Code in der Datei ab, der Kurs in der Datei ist ungültig, oder die Zeile hat eine falsche Zahl von Spalten.
So behebst du es:
- Vergleiche den Kurscode in Kataloge → Rohstoffberechnung → Kursdaten Zeichen für Zeichen mit dem Code in der Kursdatei.
- Prüfe mit deinem Anbieter, ob der Kurs in der Datei eine Zahl größer als 0 mit Punkt als Dezimaltrennzeichen ist.
- Verworfene Kurse stehen mit Grund im Protokoll (Kapitel 9).
Ein neuer Code wird nicht als Kurs angelegt
Woran es liegen kann: Im Kundentyp Default gibt es schon einen Kurs, dessen Interner Code genau diesem Code entspricht. Oder der Kundentyp Default fehlt. In beiden Fällen legt der Import nichts an.
So behebst du es: Prüfe unter Kataloge → Rohstoffberechnung → Kursdaten, ob ein Kurs im Kundentyp Default diesen Code schon als Interner Code trägt. Prüfe unter Kataloge → Rohstoffberechnung → Kundentypen, ob der Kundentyp Default vorhanden ist.
Die Kursbezeichnung aus der Datei wird nicht übernommen
Woran es liegt: Das ist so gewollt. Bei vorhandenen Kursen bleibt deine Kursbezeichnung erhalten. Den Namen aus der Datei nutzt das Plugin nur, wenn es einen Kurs neu anlegt.
So behebst du es: Nichts zu tun. Willst du einen anderen Namen, änderst du die Kursbezeichnung von Hand.
Die Kurswährung hat sich nach dem Import geändert
Woran es liegt: Das Plugin liest die Währung bei jedem Import aus den Zeichen 4 bis 6 des Codes und setzt sie neu.
So behebst du es: Stimmt die Währung nicht, kläre mit deinem Anbieter, welcher Code für den gewünschten Kurs steht.
Das neue Abrufintervall wirkt nicht sofort
Woran es liegt: Eine Änderung gilt ab dem übernächsten Lauf. Bis dahin ruft das Plugin noch im bisherigen Takt ab (Kapitel 4).
So behebst du es: Nichts zu tun. Danach gilt der neue Abstand von selbst.
Sortierung, Filter oder Exporte zeigen noch alte Preise
Woran es liegt: Gespeicherte Produktpreise erneuert nicht dieser Import, sondern ein Befehl der Rohstoffberechnung.
So behebst du es: Bitte die Person, die deinen Server betreut, diesen Befehl regelmäßig laufen zu lassen (Kapitel 9).
Das Plugin lässt sich nicht installieren oder aktivieren
Woran es liegen kann: Das Plugin setzt die Rohstoffberechnung voraus.
So behebst du es: Prüfe unter Erweiterungen → Meine Erweiterungen, ob Rohstoffberechnung installiert und aktiv ist. Installiere und aktiviere sie zuerst, danach den Kursimport.
FAQ
F: Brauche ich einen eigenen Zugang bei VWD?
A: Ja. Das Plugin enthält keinen Zugang und keine Kursdaten. Adresse, Benutzername und Passwort bekommst du aus deinem eigenen Vertrag mit dem Anbieter.
F: Welche Kurse kann ich abrufen?
A: Das Plugin übernimmt die Kurse, die in deiner Kursdatei stehen. Welche Rohstoffe und Codes die Datei enthält, legt dein Vertrag mit dem Anbieter fest. Das klärst du mit ihm.
F: Kann ich die Kurse je Verkaufskanal unterschiedlich abrufen?
A: Nein. Die Kurse der Rohstoffberechnung gehören zu keinem Verkaufskanal. Die Einstellungen gelten deshalb für den ganzen Shop.
F: Gilt ein importierter Kurs für alle Kundentypen?
A: Ja. Jeder Kurs mit diesem Kurscode bekommt den neuen Wert, egal in welchem Kundentyp. Neue Codes legt das Plugin nur im Kundentyp Default an. Kundentypen ohne eigenen Kurs nutzen in der Rohstoffberechnung den Kurs aus Default.
F: Muss ich den Abruf von Hand starten?
A: Nein. Ist Kurse bei VWD abrufen eingeschaltet, ruft die geplante Aufgabe die Kurse im eingestellten Takt ab. Ein Abruf von Hand ist zusätzlich möglich (Kapitel 9).
F: Werden meine Preise nach dem Import sofort neu berechnet?
A: Zum Teil. Die Rohstoffberechnung rechnet ab dann mit dem neuen Kurs. Gespeicherte Produktpreise für Sortierung, Filter und Exporte erneuert ein Befehl der Rohstoffberechnung (Kapitel 5.3 und 9).
F: Sendet das Plugin Daten an externe Server?
A: Nur, wenn du Kurse bei VWD abrufen einschaltest. Dann ruft es die Datei unter deiner Daten-URL ab und schickt dabei Benutzername und Passwort mit. Kunden- oder Bestelldaten sendet es nie.
F: Liest das Plugin auch andere Dateiformate oder andere Anbieter?
A: Nein. Es liest genau eine Textdatei mit Semikolon als Trennzeichen und einer Kopfzeile (Kapitel 9).
F: Ich nutze schon eine ältere Version. Muss ich nach dem Update etwas tun?
A: In der Regel nicht. War vor dem Update eine Daten-URL eingetragen, schaltet das Update Kurse bei VWD abrufen ein. Dein Import läuft also weiter. Details stehen in Kapitel 9.
F: Was passiert bei der Deinstallation mit meinen Kursen?
A: Die importierten Kurse bleiben in der Rohstoffberechnung erhalten. Shopware entfernt die geplante Aufgabe des Plugins. Die Einstellungen entfernt Shopware nur, wenn du die Daten beim Deinstallieren nicht behältst.
Für Administratoren / Technische Details
Dieser Abschnitt richtet sich an technische Administratoren. Für die normale Nutzung brauchst du ihn nicht.
Systemanforderungen
- Shopware: 6.7.7 oder neuer (6.7)
- PHP: 8.2 oder neuer
- Rohstoffberechnung (
SwpResourceCalcSix) 6.7, installiert und aktiv - Für den Abruf nach Zeitplan: laufende Verarbeitung der geplanten Aufgaben
- Der Shop-Server muss die eingetragene Daten-URL erreichen können
Installation über die Kommandozeile
Liegt das Plugin bereits in deinem Shop, installierst und aktivierst du es so. Die Rohstoffberechnung kommt zuerst:
bin/console plugin:refresh
bin/console plugin:install --activate SwpResourceCalcSix
bin/console plugin:install --activate SwpResourceCalcVwdSix
bin/console cache:clear
Geplante Aufgabe
Den Abruf nach Zeitplan übernimmt die geplante Aufgabe swp.resource_calc_vwd.rate_import (Standard: alle 15 Minuten). Sie läuft nur, wenn die geplanten Aufgaben und die Nachrichten-Warteschlange abgearbeitet werden, zum Beispiel mit:
bin/console scheduled-task:run
bin/console messenger:consume
Einen einzelnen Lauf startest du mit:
bin/console scheduled-task:run-single swp.resource_calc_vwd.rate_import
Ist Kurse bei VWD abrufen ausgeschaltet, läuft die Aufgabe weiter, baut aber keine Verbindung auf. Bei jedem Lauf schreibt das Plugin das eingestellte Abrufintervall (Minuten) in den Zeitplan dieser Aufgabe. Den nächsten Lauf hat Shopware zu diesem Zeitpunkt schon im alten Abstand geplant. Deshalb gilt eine Änderung ab dem übernächsten Lauf.
Abruf von Hand
bin/console resourcecalc:vwd:import
Der frühere Befehlsname resourcecalcvwd:cron funktioniert weiter. Bestehende Cronjobs musst du nicht ändern.
Die Ausgabe nennt die aktualisierten und die neu angelegten Codes sowie die Zahl der verworfenen Kurse. Der Befehl endet ohne Fehler, wenn Kurse geschrieben wurden oder der Abruf ausgeschaltet ist (dann mit Warnung, ohne Verbindung). Er endet mit Fehler, wenn Zugangsdaten fehlen, der Abruf oder das Lesen der Datei scheitert oder kein einziger Kurs geschrieben wurde. Das kannst du für die Überwachung eines Cronjobs nutzen.
Gespeicherte Produktpreise aktualisieren
Der Import schreibt nur die Kurse. Die gespeicherten Produktpreise für Sortierung, Filter und Exporte erneuert der Befehl der Rohstoffberechnung:
bin/console resourcecalc:cron
Die Rohstoffberechnung bringt dafür keine geplante Aufgabe mit. Plane den Befehl über den Cron deines Servers ein.
Verbindung zum Anbieter
- Je Abruf eine einzige GET-Anfrage an die Daten-URL. Benutzername und Passwort gehen per HTTP-Basic-Authentifizierung mit, nie als Teil der Adresse.
- Ohne Protokoll in der Adresse gilt
https://.http://nutzt das Plugin nur, wenn es ausdrücklich eingetragen ist. - Eine Adresse mit Zugangsdaten, ohne Servernamen oder mit einem anderen Protokoll als
http/httpsgilt als fehlende Daten-URL. Dann ruft das Plugin nichts ab und notiert die fehlende Angabe im Protokoll. Dasselbe gilt für einen leeren Benutzernamen oder ein leeres Passwort. - Grenzen je Abruf: 10 Sekunden Wartezeit auf eine Antwort, 30 Sekunden Gesamtdauer, höchstens 5 MB, höchstens 3 Weiterleitungen. Antwortet der Server mit einem Status außerhalb von 200 bis 299, bricht der Abruf ab.
- Außer dieser Anfrage sendet das Plugin nichts an externe Server, auch keine Kunden- oder Bestelldaten.
- Das Passwort liegt im Klartext in der Systemkonfiguration des Shops.
Aufbau der Kursdatei
So muss die Datei aufgebaut sein, damit das Plugin sie lesen kann:
- Text, eine Zeile je Kurs, Spalten durch Semikolon getrennt. Leere Zeilen und eine Byte-Order-Mark am Dateianfang ignoriert das Plugin.
- Die erste Zeile nennt die Spalten. Pflicht sind
#vwdcode(Code),name(Kursbezeichnung) und die Spalte des gewählten Kursfelds:last,bidoderask. Weitere Spalten sind erlaubt, das Plugin beachtet sie nicht. - Jede Kurszeile hat genau so viele Spalten wie die erste Zeile. Sonst überspringt das Plugin die Zeile und notiert sie im Protokoll.
- Kurse mit Punkt als Dezimaltrennzeichen und ohne Tausendertrennzeichen, zum Beispiel
2512.40. Werte wie2512,40oder2.512,40verwirft das Plugin. - Die Währung sind die Zeichen 4 bis 6 des Codes, in Großbuchstaben (
XAUEUR.FXVWDergibtEUR). - Eine Zeitangabe in der Datei übernimmt das Plugin nicht. Als Änderungszeitpunkt gilt der Import.
Beispiel einer Datei, die das Plugin lesen kann. Codes, Namen und Kurse sind erfundene Beispielwerte, keine Daten eines Anbieters:
#vwdcode;name;date;last;bid;ask
XAUEUR.FXVWD;Gold Unze 999.9;2026-10-27 16:30:00;2512.40;2511.90;2513.10
XAGEUR.FXVWD;Silber Unze;2026-10-27 16:30:00;30.125;30.100;30.150
Das Plugin wurde für diesen Aufbau gebaut. Ob deine Kursdatei genau so aussieht — Spaltennamen, Dezimaltrennzeichen, Erreichbarkeit per https:// — klärst du vor dem Einsatz mit deinem Anbieter.
Protokolle
var/log/SwpResourceCalcVwdSix-<Datum>.log— Zusammenfassung je Import (Zahl der Kurse, aktualisierte und angelegte Codes, verworfene Kurse mit Grund), unvollständige Zugangsdaten, Verbindungsfehler, unlesbare Antworten und übersprungene Zeilen.var/log/SwpResourceCalcSix-<Datum>.log— das Protokoll der Rohstoffberechnung. Dort stehen die verworfenen Kurse zusätzlich.
Update von früheren Versionen
- Update von einer Version vor 6.7.0: War eine Daten-URL eingetragen, schaltet das Update Kurse bei VWD abrufen ein. Bestehende Shops importieren also weiter.
- Wurde der Schalter nie gespeichert (zum Beispiel weil die Plugin-Dateien ohne Update ausgetauscht wurden), gilt eine eingetragene Daten-URL als eingeschaltet.
- Ein Schalter je Verkaufskanal aus früheren Versionen hatte keine Wirkung. Installation und Update entfernen ihn.
- Steht in der Daten-URL kein Protokoll, ruft das Plugin per
https://ab. Stellt dein Anbieter die Datei nur unverschlüsselt bereit, traghttp://ausdrücklich ein. - Der frühere Befehlsname
resourcecalcvwd:cronfunktioniert weiter.
Deinstallation
Das Plugin hat keine eigenen Tabellen. Die importierten Kurse bleiben in der Rohstoffberechnung. Shopware entfernt die geplante Aufgabe und — wenn du die Daten nicht behältst — die Einstellungen des Plugins.
Diese Anleitung wurde für Rohstoffberechnung: Kursimport VWD Version 6.7.0 erstellt.
Weitere Handbücher
Admin Passwort Erinnerung
Admin Passwort Erinnerung: Deine Backend-Benutzer erneuern ihre Passwörter rechtzeitig, mit Hinweis nach dem Login und täglicher E-Mail. Premium sperrt abgelaufene Zugänge.
Handbuch öffnen Shopware 6Adressprüfung: Hausnummer-Check & Korrekturvorschläge
Adressprüfung bei der Eingabe: Das Plugin erkennt fehlende Hausnummern, schlägt auf Wunsch über Google Korrekturen vor und sorgt für weniger Pakete, die unzustellbar zurückkommen.
Handbuch öffnen Shopware 6Adventskalender | Türchen mit Produkten, Gutscheinen und Aktionen
Adventskalender für deine Erlebniswelten: Die Türchen öffnen pünktlich ohne Cache leeren, verraten vorab nichts im Quelltext und zeigen Gutscheine, Produkte oder eigene Inhalte.
Handbuch öffnenWer betreut deinen Shop, wenn es ernst wird?
Wir pflegen Shopware-Shops seit über 20 Jahren, inklusive Updates, Hotfixes und der Plugins, die du hier gerade einrichtest.