Ich verwende den folgenden Code als Teil eines Skripts, um Magento Orders programmatisch zu erstellen. Das Skript funktioniert gut, wenn ich die VersandmethodeMagento Auftragserstellung Programmatisch nur mit einer Versandart arbeiten
als Versandmethode verwende. Allerdings, wenn ich andere Lieferweg wie eine benutzerdefinierte Versandart, flatrate_flatrate oder usps_1 e.t.c wählen, es gibt mir den Fehler:
"Please Specify a shipping method"
Ich habe überall gesucht, aber war nicht in der Lage, eine Lösung zu finden. Jede Hilfe würde sehr geschätzt werden, danke.
$shippingAddress->setCollectShippingRates(true)->collectShippingRates()
->setShippingMethod($shipping_method);
Edit:
Ich habe es für nicht US-Aufträge mit flatrate zu arbeiten und eine Verlängerung freeadminshipping sowohl auf US- und Nicht-US-Aufträge. Sie können jedoch immer noch keine der Versandmethoden von UPS oder USPS verwenden.
Hallo Sunny, danke für deine Antwort. Ich verwende die Bestellungserstellung in einer API-Datei, die die Produktartikel, Zahlungsdaten und Versandart erhält, um die Bestellung zu erstellen. Ich benutze die Checkout-Sitzung nicht, sondern benutze 'sales/service_quote', um die Bestellung zu erstellen. Ich kann nicht herausfinden, wo die Versandart in Ihrem Code festgelegt ist, da ich den Kunden dafür ebenfalls belasten muss. –