【问题标题】:Bigcommerce API Tracking Number Create PHPBigcommerce API 跟踪号 创建 PHP
【发布时间】:2017-01-16 15:19:05
【问题描述】:

我正在尝试使用 API 更新 Bigcommerce 中订单的跟踪号。这是我正在使用的代码:

//update BC of order status
$filter = array('status_id' => 2);
$order_status_update = BigCommerce::updateResource('/orders/' . 105, $filter);

$order = Bigcommerce::getOrder(105);
foreach($order->products as $shipment) 
{
    $filter = array(
        'order_address_id' => $shipment->order_address_id,
        'items'=> array(
            'order_product_id' => $shipment->product_id,
            'quantity' => $shipment->quantity
            ),
        'tracking_number' => 'tracking number'
        );
    $add_tracking = BigCommerce::createResource('/orders/105/shipments', $filter);
    var_dump($add_tracking);
}

我已按照此处的说明进行操作: https://developer.bigcommerce.com/api/stores/v2/orders/shipments#list-shipments BigCommerce Uploading Tracking Numbers

但我似乎无法让它工作。有人可以帮忙吗?

提前感谢您的帮助!

阿克谢

【问题讨论】:

    标签: api bigcommerce


    【解决方案1】:

    由于 items 字段需要格式化为对象数组并且使用 product_id 而不是订单中的产品 ID,因此用于创建货件的有效负载无效。

    提供的代码试图为订单中的每个产品创建一个货件,这是有意的吗?理想情况下,您将一次装运所有商品,这就是为什么 items 字段是产品对象数组的原因。

    此外,通过为订单创建发货,订单状态将自动更改为“已发货”,因此不需要第一个 PUT 请求。

    如果您尝试为每个订单创建一个货件,并且假设没有订单会有多个地址,那么此代码应该可以工作。

    $order = Bigcommerce::getOrder(105);
    
    $filter = array(
        'order_address_id' => $order->shipping_addresses[0]->id,
        'tracking_number' => '123456'
    );
    
    foreach($order->products as $product) {
        $items[] = array(
            'order_product_id' => $product->id,
            'quantity' => $product->quantity
        );
    }
    
    $filter['items'] => $items;
    
    $add_tracking = BigCommerce::createResource('/orders/105/shipments', $filter);
    var_dump($add_tracking);
    

    【讨论】:

    • 非常感谢。我会试试这个!
    • 已编辑以说明 shipping_addresses 资源返回一个对象数组。
    • 我刚刚检查了代码,它工作正常!非常非常非常感谢。我已经坚持了一个多月,你让我很开心,哈哈!
    • @adambil 您知道为什么我在使用此代码时会收到Fatal error: Uncaught exception 'BigCommerce\Api\NetworkError' with message '<url> malformed' 吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多