创建/更新Shopify订单履行时遇Not Found错误求助
解决Shopify订单履行API返回{"errors": "Not Found"}问题
尝试创建或更新Shopify订单履行时,反复收到错误:{"errors": "Not Found"}。已确认API密钥、访问令牌、店铺URL等所有凭证均正确,但错误仍持续出现。代码参考官方指南实现,具体代码如下:
header("Access-Control-Allow-Origin: *"); set_time_limit(0); error_reporting(E_ALL); ini_set("display_errors", 1); define("API_KEY", '8f6ba81c2bXXXXXXXXXXXXXXXXX'); define("ACCESS_TOKEN", 'XXXXXXXee88e7dXX3604d8XXXXXXXXXXXXXX'); define("SHOP", 'myshopistore-XXXXX'); define("API_VERSION", '2022-10'); $ch = curl_init(); echo $url = 'https://'.API_KEY.':'.ACCESS_TOKEN.'@'.SHOP.'.myshopify.com/admin/api/2022-10/fulfillments.json'; curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, "{\"fulfillment\":{\"message\":\"The package was shipped this morning.\", \"notify_customer\":false,\"tracking_info\":{\"number\":1562678,\"url\":\"https://www.my-shipping-company.com\",\"company\":\"my-shipping-company\"}, \"line_items_by_fulfillment_order\":[{\"fulfillment_order_id\":125846255999999}]}}"); $headers = array(); $headers[] = 'X-Shopify-Access-Token: XXXXXX27eeXX8e7d9e3604dXXXXXXXXXXXXXX'; $headers[] = 'Content-Type: application/json'; print_r($headers); curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); echo $result = curl_exec($ch); if (curl_errno($ch)) { echo 'Error:' . curl_error($ch); } curl_close($ch);
排查关键点:
- 接口路径错误:当前用的
/fulfillments.json是旧创建端点,通过fulfillment_order_id创建履行的正确路径应为/fulfillment_orders/{fulfillment_order_id}/fulfillments.json,这是导致404最常见的原因。 - 重复身份验证:代码同时用了URL中的Basic Auth(
API_KEY:ACCESS_TOKEN)和请求头的X-Shopify-Access-Token,二者只需保留一种,推荐保留请求头令牌,移除URL里的密钥和令牌部分。 - 履行订单ID有效性:确认
125846255999999对应的履行订单确实存在于店铺中,且状态为可履行(未完成、未取消)。 - API版本匹配:核对2022-10版本的官方接口定义,确保端点路径和请求参数格式完全符合要求。
内容的提问来源于stack exchange,提问作者Nads
相关产品推荐
相关产品推荐

