Bug in the order API: "requires_shipping" is set to true for a product that's set to false

Bug in the order API: "requires_shipping" is set to true for a product that's set to false

bardia
New Member
15 0 0

When a product variant is set to "requires_shipping": false, one would assume that the order line_item associtated with that variant would honor the setting and set its "requires_shipping" attribute to false, but that is definitely not the case.

Here is an example

Product JSON snippet
{
  "product": {
   "variants": [
      {
        "id": 12345,
        "product_id": 6789,
        "title": "Default Title",
        "requires_shipping": false
      }
    ]
  }
}


Order Snippet including the ^ product as a line_item:

{
  "order": {
    "line_items": [
      {
        "id": 11111,
        "variant_id": 12345,
        "title": "Replacement Plan",
        "quantity": 1,
        "product_id": 6789,
        "requires_shipping": true,
        "name": "Replacement Plan"
      }
    ]
  }
}

Would appreciate it if this could be fixed as soon as possible.

Thanks.

Replies 4 (4)

Josh
Shopify Staff
1134 84 235

Hey there, 

I'm not able to replicate this behaviour when I create an order via the API. 

Could you link me to an example product/order where you're able to consistently replicate this?

Josh | Shopify 
 - Was my reply helpful? Click Like to let me know! 
 - Was your question answered? Mark it as an Accepted Solution
 - To learn more visit the Shopify Help Center or the Shopify Blog

Jerrycurl
Visitor
3 0 0

I just noticed this problem as well.  It seems like it started happening sometime in the last few months because I'm sure it used to work correctly. 

Jerrycurl
Visitor
3 0 0

The api docs say that "requires_shipping" is deprecated, but I can't find when this happened, or what the alternative is.

Jerrycurl
Visitor
3 0 0

I may have spoke too soon.  It doesn't look like this is happening to me after all.  My point about the field being deprecated still stands, however.