WooCommerce Rest API 在创建订单中返回无效参数 'shipping_lines'

WooCommerce Rest API returning invalid paramter 'shipping_lines' in create order

从 woo-commerce 版本的 php rest api 创建订单:wc/v3 并出现错误

其他 apis 工作正常尝试使用 v2 仍然出现相同的错误

<?php

require __DIR__ . '/vendor/autoload.php';

use Automattic\WooCommerce\Client;

$wc = new Client(
    'https://example.com/', 
    'client key', 
    'client secret',
    [
        'wp_api'  => true,
        'version' => 'wc/v3',
    ]
);

$data = [
    'payment_method' => 'cod',
    ....
    'shipping_lines' => [
        [
            'method_id' => 'flat_rate',
            'method_title' => 'Flat Rate',
            'total' => 10
        ]
    ]
];

print_r($wc->post('orders', $data));

出现此错误,如果我删除正常工作的运输线并创建订单

[07-May-2019 06:39:45 UTC] PHP Fatal error:  Uncaught Automattic\WooCommerce\HttpClient\HttpClientException: Error: Invalid parameter(s): shipping_lines [rest_invalid_param] in /home/gathhnaw/public_html/mapi/vendor/automattic/woocommerce/src/WooCommerce/HttpClient/HttpClient.php:350
Stack trace:
#0 /home/gathhnaw/public_html/mapi/vendor/automattic/woocommerce/src/WooCommerce/HttpClient/HttpClient.php(386): Automattic\WooCommerce\HttpClient\HttpClient->lookForErrors(Object(stdClass))
#1 /home/gathhnaw/public_html/mapi/vendor/automattic/woocommerce/src/WooCommerce/HttpClient/HttpClient.php(422): Automattic\WooCommerce\HttpClient\HttpClient->processResponse()
#2 /home/gathhnaw/public_html/mapi/vendor/automattic/woocommerce/src/WooCommerce/Client.php(56): Automattic\WooCommerce\HttpClient\HttpClient->request('orders', 'POST', Array)
#3 /home/gathhnaw/public_html/mapi/create_order.php(46): Automattic\WooCommerce\Client->post('orders', Array)
#4 {main}
  thrown in /home/gathhnaw/public_html/mapi/vendor/automattic/woocommerce/src/WooCommerce/HttpClient/HttpClient.php on line 350

woo api 上似乎有拼写错误或文档错误。只需将总值括在单引号和 运行 it

之间

https://www.infocaptor.com/dashboard/woocommerce-rest-api-php-example-error-creating-order