0

I have a product in my store with radio and checkbox custom options. using below JSON encoded string to add that item with it's options to shopping cart within my mobile app.

{
 "cartItem": {
    "qty": 1,
    "sku": "margherita",
    "quote_id": 134,
    "product_option": {
        "extension_attributes": {
            "custom_options": [
              {
                "option_id": 15,
                "option_value": 67

              },
              {
                "option_id": 16,
                "option_value": 70

              },
              {
                "option_id": 16,
                "option_value": 71

              }
            ]
        }
    }
  }
}

but cart doesn't remember all checkbox selections, only the last one - say, with option value 71 in this example (16 is checkbox option id here).

Any suggestions how I can encode options into cart item string for cart to be able to carry all checkbox option selections?

This is original blueprint cart item JSON string from Magento's doc:

{
"cartItem": {
"item_id": 0,
"sku": "string",
"qty": 0,
"name": "string",
"price": 0,
"product_type": "string",
"quote_id": "string",
"product_option": {
  "extension_attributes": {
    "custom_options": [
      {
        "option_id": "string",
        "option_value": "string",
        "extension_attributes": {
          "file_info": {
            "base64_encoded_data": "string",
            "type": "string",
            "name": "string"
          }
        }
      }
    ],
    "bundle_options": [
      {
        "option_id": 0,
        "option_qty": 0,
        "option_selections": [
          0
        ],
        "extension_attributes": {}
      }
    ],
    "downloadable_option": {
      "downloadable_links": [
        0
      ]
    },
    "giftcard_item_option": {
      "giftcard_amount": "string",
      "custom_giftcard_amount": 0,
      "giftcard_sender_name": "string",
      "giftcard_recipient_name": "string",
      "giftcard_sender_email": "string",
      "giftcard_recipient_email": "string",
      "giftcard_message": "string",
      "extension_attributes": {}
    },
    "configurable_item_options": [
      {
        "option_id": "string",
        "option_value": 0,
        "extension_attributes": {}
      }
    ]
  }
},
"extension_attributes": {}
}
}
1

I was just having this issue.

Change your json to...

{
  "option_id": "16",
  "option_value": "70,71"
}

and it will work!

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.