Als Entwickler Wenn Sie mit Shopware 6 arbeiten, müssen Sie häufig externe Systeme nahtlos integrieren. Eine häufige Aufgabe ist das Hochladen von Dokumenten, wie z. B. Rechnungen, von externen URLs zu Shopware-Bestellungen über die API der Plattform.
In diesem Artikel führen wir Sie durch das Hochladen einer Rechnung (oder anderer Dokumente) zu einer Shopware 6-Bestellung von einer externen URL über eine API. Wenn Sie Dokumente – wie Rechnungen –, die auf anderen Systemen erstellt oder gespeichert wurden, an Shopware-Bestellungen anhängen müssen, ist diese Methode praktisch.
Manchmal müssen Sie möglicherweise eine Rechnung oder ein Dokument von einer externen Website zu einer Shopware-Bestellung hochladen. Dies kann über eine API-Funktion erfolgen, um das Dokument von der URL abzurufen und in Shopware hochzuladen.
Hier ist die Lösung zum Hochladen eines Dokuments zu einer Bestellung in Shopware 6 mit der folgenden Funktion: uploadDocuments($orderId, $fileUrl).
uploadDocuments($orderId, $fileUrl)
Die Funktion beginnt mit dem Abrufen des Dateiinhalts von der externen URL mithilfe der PHP-Methode „file_get_contents()“.
Sobald der Inhalt abgerufen wurde, besteht der nächste Schritt darin, eine temporäre Datei zu erstellen, in der der abgerufene Inhalt gespeichert wird.
Erstellen Sie ein Dateiobjekt, das wichtige Dateidetails wie Pfad, Originalname, MIME-Typ und Größe enthält. Diese Informationen werden verwendet, um die Datei zum Hochladen an den Medienhelfer von Shopware zu übergeben.
Über die Funktion „uploadMedia“ des Medienhelfers von Shopware wird die Datei in das Shopware-Mediensystem hochgeladen und erhält eine „mediaId“, die mit dem Bestelldokument verknüpft wird.
Schließen Sie nach dem Hochladen die temporäre Datei:
Nachdem das Dokument nun hochgeladen wurde, müssen Sie die Shopware-Bestellung mit diesem Dokument aktualisieren. Dies erfolgt durch Übergabe der Medien-ID und des Dateityps an die Funktion „updateOrderDocuments()“.
In der Funktion „updateOrderDocuments()“ wird das Dokumenten-Repository verwendet, um ein neues Dokument für die Bestellung zu erstellen. Anhand der Art wird der Dokumenttyp abgerufen (z. B. Rechnung) und das Dokument mit der Bestellung verknüpft.
Die Funktion „getDocumentTypeId()“ ruft den Dokumenttyp basierend auf dem angegebenen technischen Namen ab (z. B. „Rechnung“):
Vollständige Codelösung
Wenn Sie dieser Anleitung folgen, können Sie Rechnungen oder andere Dokumente von externen URLs nahtlos über die API-Integration in Shopware 6 hochladen und an Bestellungen anhängen. Dies ermöglicht die automatisierte Verarbeitung von Dokumenten aus anderen Systemen und verbessert so die Effizienz des Arbeitsablaufs. Für fachkundige Dienstleistungen wenden Sie sich an einen Fachmann Shopware-Agentur für eine reibungslose Umsetzung.
Grüße! Ich bin Aneesh Sreedharan, CEO von 2Hats Logic Solutions. Bei 2Hats Logic Solutions widmen wir uns der Bereitstellung von technischem Fachwissen und der Lösung Ihrer Probleme in der Welt der Technologie. Unsere Blog-Seite dient als Ressource, in der wir Einblicke und Erfahrungen teilen und wertvolle Perspektiven auf Ihre Fragen bieten.
Abonnieren Sie unseren Newsletter und erfahren Sie mehr über die neuesten digitalen Trends.
Δ