2.2 - Products
A configurable product has no specific requirements. It just needs to have a 3D model (BMA / BM3).
You can follow the general guidelines about geometry and materials: Geometry and Materials 🔗
For product setup (including translations): Products 🔗
Once your product is created, you can load it in the Product Configurator using its ID. If you created some editable parameters, you will be able to use them to configure your product.
A product without any parameter can be loaded. You can disable the UI and use the Product Configurator as a simple 3D viewer.
Product ordering
When the products are displayed in a list (a list of legs, a list of colors...), they are sorted in the alphabetical order.
If you want to sort the products in a specific order, fill the searchScore attribute on the products.
The products with the higher search score will appear first.
Parameter ordering
When editable parameters are displayed, they are sorted in the alphabetical order (using their translated display name).
If you want to sort the parameters in a specific order, fill the indexUI attribute on the parameters.
It can be done at a product level, or using the Parameter Definitions. 🔗
The parameters with the lower indexUI will be displayed first. If two parameters share the same indexUI,
they will be sorted using alphabetical order.
Parameters with the indexUI attribute not filled will be displayed after parameters with a value set.
Exceptions
When editing a modular product, 🔗 the parameter used to replace or delete a module will always be displayed first.
Parameter visibility
A parameter will be visible in the configuration menu if all the following rules are true:
- Its "editable" attribute is "Read & Write".
- It has at least two possible values.
- The parameter currently has an impact on the 3D models. Check the behaviors below.
- You can override this last behavior by using the EditPanelParameterRule applicative rule. 🔗
Declare only the parameters that you really need on a product. Declaring parameters with no real effect on a product will break automatic parameter hiding. See Behavior with incorrect data 🔗
Basic behavior
If you have:
- A Cushion product that you can add or remove on a sofa module.
- A Cushion color parameter on the sofa module, that applies only on the Cushion product described above.
The Cushion color parameter will only be displayed to the user when a cushion is added.

Product rules behavior
If you have:
- A Covering Type parameter that can be Fabric or Leather.
- A Finish parameter with the full list of fabrics and leathers.
- A Product Rule that filters the list of fabrics and leathers, depending on the choice of Covering Type.
In this case the Covering Type parameter has no direct impact on something visible. But it will still be displayed because it can trigger a change in another parameter having a visible impact (the Finish parameter).
If the Finish parameter has no impact on a visible 3D part, then the Covering Type parameter will also be hidden.

Behavior with incorrect data
The automatic check for visibility assumes that the parameters declared on a geometry (BM3) have a visible impact. If you declare parameters on product geometries that do not use them, the parameter will not be able to automatically hide itself.
Example:
- Top assembly (BMA) with a Cushion color parameter, and including two geometries:
- A Sofa geometry product with a Cushion color parameter that has no effect on it.
- An optional Cushion geometry product with a Cushion color parameter to change its color.
In this situation when the Cushion geometry is not visible the Cushion color parameter will still be visible, because according to the data it has a visible impact on the "Sofa geometry".
