使用shopify-api-node创建/接受履行请求时遇422错误求助
解决Shopify-api-node中履行请求返回422错误的问题
问题核心原因
从你提供的fulfillmentOrders返回结果里,supported_actions: [ 'create_fulfillment', 'hold' ]是关键判断依据——当前履行订单仅支持直接创建履行和暂停操作,完全不支持创建/接受履行请求的流程。
fulfillmentRequest.create和fulfillmentRequest.accept是专门用于第三方履行场景的接口:只有当订单分配给外部物流服务商时,履行订单的supported_actions才会包含request_fulfillment这类操作,此时才需要通过履行请求触发第三方处理。而你的订单assigned_location是自身店铺地址,属于自履行场景,不需要走这个流程。
正确实现代码
直接使用shopify.fulfillment.create完成自履行操作,示例代码如下:
// 从已获取的履行订单中提取需要履行的商品项ID const targetLineItems = test[0].line_items.map(item => ({ id: item.id })); const fulfillment = await shopify.fulfillment.create({ order_id: 5333711388952, fulfillment_order_id: 6278164939032, line_items: targetLineItems, // 可选:添加物流跟踪信息(根据业务需求选择) tracking_info: { number: 'YOUR_TRACKING_NUMBER', company: 'YOUR_SHIPMENT_COMPANY', url: 'YOUR_TRACKING_URL' } });
关键提示
- 422错误本质是调用了当前履行订单不支持的接口,严格遵循
supported_actions允许的操作即可避免 - 自履行场景下无需触碰
fulfillmentRequest相关接口,直接创建履行即可完成全流程
内容的提问来源于stack exchange,提问作者Tallion 22
相关产品推荐
相关产品推荐

