3 minutes October 1, 2024

Wie lade ich in Shopware 6 Dokumente von einer URL zu einer Bestellung hoch?

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.

Problem: Rechnung von einer anderen Website über API hochladen

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.

Schritte zum Hochladen von Dokumenten zur Bestellung in Shopware 6

Hier ist die Lösung zum Hochladen eines Dokuments zu einer Bestellung in Shopware 6 mit der folgenden Funktion: uploadDocuments($orderId, $fileUrl).

 Schritt 1: Rufen Sie die Datei von der externen URL ab.

Die Funktion beginnt mit dem Abrufen des Dateiinhalts von der externen URL mithilfe der PHP-Methode „file_get_contents()“.

Schritt 2: Erstellen Sie eine temporäre Datei.

Sobald der Inhalt abgerufen wurde, besteht der nächste Schritt darin, eine temporäre Datei zu erstellen, in der der abgerufene Inhalt gespeichert wird.

Schritt 3: Bereiten Sie das Dateiinformationsobjekt vor.

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.

Schritt 4: Anschließend laden Sie die Datei auf Shopware media hoch.

Ü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:

Schritt 5: Bestellung mit hochgeladenem Dokument aktualisieren.

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()“.

Schritt 6: Erstellen Sie ein Dokument und verknüpfen Sie es mit der Bestellung.

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

Abschluss

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.

blog
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.
CEO
Aneesh Sreedharan
Gründer & CEO, 2Hats Logic Solutions
Abonnieren Sie unseren Newsletter
Aneesh ceo

    Bleiben Sie auf dem Laufenden!

    Abonnieren Sie unseren Newsletter und erfahren Sie mehr über die neuesten digitalen Trends.