Error when updating CatalogObject with product_type "REGULAR"

  "errors": [
      "category": "INVALID_REQUEST_ERROR",
      "code": "INVALID_ENUM_VALUE",
      "detail": "`REGULAR` is not a valid enum value for `product_type`.",
      "field": "product_type"

The ENUM of REGULAR still exists on the Square API explorer and in the docs.

Hi @lavid ,

Sounds like you are using UpsertCatalogObject to update an existing catalog id.

In the for a CatalogItem product_type, The product type of the item. Once set, the product_type value cannot be modified.

That error message seems to be misleading. The note in the technical reference about the value cannot be modified is more likely the reason you got this error.

Well, I just was able to update it to a new value of FOOD_AND_BEV, so it’s not that the field is immutable once set.

Moreover, my software has specified the “REGULAR” value, even for updating an existing catalog item, in spite of the value not changing, for about 2 years. So something changed since last evening when I was doing my most recent testing.

I would like to take a look, to see what’s going on and to confirm whether you can or cannot update the product_type.

Could I get your application id, from Developer Dashboard.
And can I get the catalog id in question that is not letting you update product_type to REGULAR.

Optionally, can you find the last time you were able to change the product_type to Regular in your application - what was the catalog id and the timestamp?

@Lance-Square Any update here?

I am taking a look now.

@lavid , I’ve tried replicating your item, but it’s get created for me as REGULAR instead of FOOD_AND_BEV. If I try and change the product_type, nothing happens. That seems to make the documentation’s noted behavior.

I took a look at your API Logs, and saw the 400 errors for U2QDCN3UESGJGYOBRFQWNL4B.

And I took a look at ILXUOX4D5CKV64RQOMAXGOFE, but I saw no upserts that tried to change the product_type on Mon, 29 Jan 2024 01:11:24 GMT or in the last 28 days.

Do you have any recent examples where you’ve changed the product_type? I do not believe it is possible.

I changed item WOCAHNK5Q4NPHDRCM762NGVY from REGULAR to FOOD_AND_BEV with the request timestamped 2024-01-31 16:11:00 GMT-8

@lavid , Looking at the last BatchRetrieveCatalogObjects at 2024-01-31 16:01:22 GMT-8, it was already FOOD_AND_BEV . Or based on the last successful Batch Upsert before it on 2024-01-31 16:05:34 GMT-8.

The call on 2024-01-31 16:11:00 GMT-8 did not change it to FOOD_AND_BEV, it was already FOOD_AND_BEV.