通过API创建订单在Magento中失败

Epi*_*rus 8 api magento

在尝试通过Magento API V1.0创建新订单时,我遇到了一个相当奇怪的错误.这是我的代码的基本工作流程:

  1. 使用该cart.create方法创建购物车.
  2. 使用该cart_customer.set方法将客户设置为"访客" .
  3. 使用该cart_product.add方法将产品添加到购物车.
  4. 使用该cart.order方法创建订单.

在这一点上,cart.order方法投用消息"调用一个成员函数setFinalPrice()非对象上的"一个的SOAPFault异常.如果我cart.order用其他方法替换方法,例如cart.info或,则抛出相同的异常cart_product.list.

由于异常的消息似乎不具有描述性,我想知道是否有其他人曾经碰到过这个.

谢谢.

更新:问题是由于我在调用cart_product.add方法时使用他们的SKU将产品添加到购物车.使用产品ID而不是SKU时不再抛出异常(我怀疑这可能是一个错误).但是,此时该cart.order方法返回false,因此仍未创建订单.

Jos*_*ano 3

在执行 cart.order 方法之前,您必须将付款和送货地址分配给您的购物车。

这是在 magento 中创建订单的标准程序。

步骤应该是这样的:

  • 使用 cart.create 方法创建购物车。
  • 使用 cart_customer.set 方法将客户设置为“访客”。
  • 使用 cart_product.add 方法将产品添加到购物车。

在调用cart.order之前尝试调用 cart_shipping.methodcart_ payment.method

  • 使用 cart.order 方法创建订单。