Search code examples
salesforcevlocityepc

Salesforce Vlocity EPC Error: The service was unable to parse the product attributes. Please review the product definition


I built a 3 layer product using Vlocity Product Console. Thereafter when I try to override an attributed of a child product, it shows the error:

The service was unable to parse the product attributes. Please review the product definition.

Any clue what went wrong?


Solution

  • After spending quite some time on Google, there was no obvious answer so thought to post in here to help others.

    The Root cause is when we build a product and assign attributes to it, specially picklists - sometimes the values of the picklist does not get persisted in to the product metadata.

    So if goes to the Vlocity Product Console and open up the product (whose attribute you wish to override) and the navigate to Debug >> Attribute Metadata. Then copy the JSON block and view it, you will see:

                      {
                        "messages": [],
                        "code": "VEPC_ATTR_DT_PRODUCT_SPEC_TYPE",
                        "dataType": "text",
                        "inputType": "dropdown",
                        "multiselect": true,
                        "required": false,
                        "readonly": false,
                        "disabled": false,
                        "filterable": false,
                        "attributeId": "a0X3H000000ws5DUAQ",
                        "label": "Product Spec Type",
                        "displaySequence": 180,
                        "hasRules": false,
                        "hidden": false,
                        "cloneable": true,
                        "isNotTranslatable": false,
                        "values": null,
                        "userValues": null
                    },
    

    The "values": null is the offending part.

    To fix it, navigate back to Attributes and Fields, select the erroneous attribute. In the Attribute metadata section, just save it once. Then refresh the product and go back to the Debug >> Attribute Metadata to validate that the "values" attribute is now not null. Fix all such attributes and the product will start working