BigCommerce API在更新订单时创建重复的Order- products行



我发现,当我使用BigCommerce API更新订单时,订单的产品线项目被重复了。似乎即使我在订单更新JSON对象中传递单行项目,我也会得到两行(订单产品)。

我在这里放置更新调用文档:https://developer.bigcommerce.com/api/stores/v2/orders#update-an-order

更新是成功的,但我原来的产品现在是两个产品线。似乎BC将我发送的内容解释为新产品线,而不是替换/更新现有的产品线。

我正在传递orderProducts的'id'。

我是否需要传递一些东西来指示行项目要更新而不是创建新的?enter code here

这是我发送的JSON:

{
  "customer_id": 1,
  "date_created": "Mon, 14 Sep 2015 19:28:01 +0000",
  "status_id": 11,
  "base_shipping_cost": "0.0000",
  "shipping_cost_ex_tax": "0.0000",
  "shipping_cost_inc_tax": "0.0000",
  "base_handling_cost": "0.0000",
  "handling_cost_ex_tax": "0.0000",
  "handling_cost_inc_tax": "0.0000",
  "base_wrapping_cost": "0.0000",
  "wrapping_cost_ex_tax": "0.0000",
  "wrapping_cost_inc_tax": "0.0000",
  "total_ex_tax": "34.0000",
  "total_inc_tax": "34.0000",
  "items_total": 16,
  "items_shipped": 0,
  "payment_method": "Manual",
  "refunded_amount": "0.0000",
  "order_is_digital": "false",
  "ip_address": "64.231.103.57",
  "geoip_country": "Canada",
  "geoip_country_iso2": "CA",
  "discount_amount": "0.0000",
  "ebay_order_id": 0,
  "billing_address": {
    "first_name": "Charles",
    "last_name": "Delfs",
    "company": "Delfs Eng",
    "street_1": "50 Moore St.",
    "street_2": "Box 1428",
    "city": "Bradford",
    "state": "Ontario",
    "zip": "L3Z 2B7",
    "country": "Canada",
    "country_iso2": "CA",
    "phone": "",
    "email": "mrdelfs@gmail.com"
  },
  "products": [{
    "id": 253,
    "product_id": 113,
    "name": "Hammer and Anvils 6",
    "sku": "",
    "price_ex_tax": "24.0000",
    "price_inc_tax": "24.0000",
    "quantity": 1,
    "ebay_item_id": "",
    "product_options": []
  }, {
    "id": 254,
    "product_id": 113,
    "name": "Hammer and Anvils 6",
    "sku": "",
    "price_ex_tax": "24.0000",
    "price_inc_tax": "24.0000",
    "quantity": 1,
    "ebay_item_id": "",
    "product_options": []
  }],
  "shipping_addresses": []
}

BC Support的响应…"感谢您联系Bigcommerce!"

"我很遗憾地说,更新订单行项目的细节很少,因为它目前还没有完全建立起来。有一些方法可以更新现有的行项目——类似于您尝试过的方法,但是如果您想覆盖现有的行项目,则需要在订单中包含现有产品的"id"参数。但问题是,当对现有产品进行更新时,总数计算似乎不正确。我也看到过类似的奇怪之处,它改变了现有的送货地址。现在您可以额外更新"total_inc_tax"one_answers"total_ex_tax"以使其准确,但在某些情况下,"total_tax"行项似乎仍然不正确。

这确实是v2 API没有妥善解决的问题,需要在即将推出的下一个版本中解决。与此同时,我的建议是,如果您需要更新产品或送货地址,不要以这种方式更新现有订单,而是创建新订单并丢弃原始订单。更新订单上的其他细节似乎不会产生同样的负面影响。

我很抱歉,因为我知道这不是你想听到的。如果您对上述问题有任何疑问,请让我知道,我会尽我所能提供帮助。"

解决方案:我的代码没有将返回的BC Line信息映射到正确的记录,并且随后创建了重复的记录。

一个根本的问题仍然存在:该API允许编辑行项,但不允许删除行项。他们建议删除并重新创建订单,这会破坏所有通过订单id连接的第三方应用程序!

相关内容

  • 没有找到相关文章

最新更新