Ich bekomme einen seltsamen Fehler, wenn ich versuche, eine neue Bestellung über die Magento API V1.0 zu erstellen. Hier ist der grundlegende Workflow meines Codes:
cart.create
. cart_customer.set
als 'Gast' fest. cart_product.add
dem Warenkorb hinzu. cart.order
. An dieser Stelle löst die Methode cart.order eine SoapFault-Ausnahme mit der Nachricht "Aufruf einer Memberfunktion setFinalPrice () für ein Nicht-Objekt" aus. Die gleiche Ausnahme wird ausgelöst, wenn ich die Methode cart.order
durch andere Methoden wie cart.info
oder cart_product.list
ersetze.
Da die Nachricht der Ausnahme nicht sehr aussagekräftig erscheint, habe ich mich gefragt, ob jemals jemand anderes auf diese Idee gestoßen ist.
Danke.
UPDATE: Das Problem liegt daran, dass ich beim Aufruf der cart_product.add
-Methode Produkte über ihre SKUs in den Einkaufswagen lege. Die Ausnahme wird nicht länger ausgelöst, wenn Produkt-IDs anstelle von SKUs verwendet werden (ich vermute, dass dies ein Fehler sein könnte). An dieser Stelle gibt die Methode cart.order
jedoch false zurück, sodass die Reihenfolge noch nicht erstellt wurde.
Bevor Sie die Methode "cart.order" ausführen, müssen Sie die Zahlungs- und Lieferadresse Ihrem Einkaufswagen zuordnen.
Es ist Standardverfahren, um eine Bestellung in Magento zu erstellen.
Die Schritte sollten wie folgt aussehen:
versuche anzurufen cart_shipping.method und cart_payment.method , bevor Sie cart.order
aufrufen