Options

In Konfig, options are used to define the customizable aspects of a product configurator. Options allow users to swap out objects, groups, materials, or input numeric values, which can be used to create a wide range of customizations and configurations. In this article, we will take a deep dive into Konfig options, and provide an overview of each of the option types.

Object options

Object options allow users to swap out one object for another in the Konfig. For example, if a chair has multiple seats, you can create an object option that allows the user to choose between different seats. Object options are defined using the structure of the Konfig.

To create an object option, you will need to:

  • Identify the group of objects that you want to include in the option. This could be a group of frames for a chair, or a group of colors for a product.
  • Create the option in the Konfig editor, clicking the "Object" option button
  • Select the objects that you want to include in the option.
  • Specify the default object that should be selected when the Konfig is first loaded.
  • Preview the Konfig and test the option to ensure that it works as expected.

Group options

Group options allow users to swap out one group of objects for another in the Konfig. For example, if a chair has multiple frames, each with multiple components, you can create a group option that allows the user to choose between different frames. Group options are defined using the structure of the Konfig, and they require that the groups to be swapped out are nested within a parent group.

To create a group option, you will need to:

  • Identify the parent group that contains the groups that you want to include in the option. This could be a group of frames for a chair, or a group of product variants for a product.
  • Create the option in the Konfig editor, and select "Group" as the option type.
  • Select the groups that you want to include in the option.
  • Specify the default group that should be selected when the Konfig is first loaded.
  • Preview the Konfig and test the option to ensure that it works as expected.

Material options

Material options allow users to swap out one material for another on an object in the Konfig. For example, if a chair has multiple frames, each with a different material, you can create a material option that allows the user to choose between different materials for the frames. Material options are defined using the materials that have been created in the Konfig, and they require that the objects to be modified have been assigned materials in the Konfig structure.

To create a material option, you will need to:

  • Create the option in the Konfig editor, using the create "Material" button
  • Identify the material that you want to modify with the material option.
  • Add the other materials you want to be able to swap this out for in the "Settings" tab
  • With the default material, you decide which objects have the potential to be affected by the change. In the "Affects" tab, you can filter all of them to the specific sub-set of objects you want to be affected by the chagne in material
  • Preview the Konfig and test the option to ensure that it works as expected.

Number input options

Number input options allow users to input numeric values in the Konfig, which can be used for calculations or other purposes. For example, if a chair has customizable dimensions, you can create number input options that allow the user to specify the width, height, and depth of the chair. Number input options are defined using a simple input field, and they do not require any specific objects or groups in the Konfig structure. It is important to note that they can only be used in pricing calculations. They cannot affect anything in the scene itself.

To create a number input option, you will need to:

  • Identify the purpose of the number input option, and how the input value will be used. This could be for calculations, such as determining the price of a product, or for other purposes, such as specifying a custom measurement.
  • Create the option in the Konfig editor, using the "Number" create button
  • Specify the name and label for the option, and specify the default value for the input field.
  • Specify any additional settings for the option, such as the minimum and maximum values, the step size, and any formatting options.
  • Preview the Konfig and test the option to ensure that it works as expected.

By using these option types, you can create a wide range of customizable options in your Konfigs, which will improve the flexibility and user experience of your product configurators.

Shared Options

Every option in a Konfig, except for the number input option, has the following options that can be configured:

  • Name: The name of the option, which will be displayed to the user in the Konfig. This should be a clear and descriptive name that explains the purpose of the option.
  • Category: The category of the option can be used to categorize multiple options for the User Interface, making it easier for a customer to make a decision - See below for details.
  • SKU: The SKU (Stock Keeping Unit) of the option, which can be used for inventory and pricing management. This should be a unique identifier for the option, such as a product code or a serial number.
  • Price: The price of the option, which can be either a fixed price or a price formula. The fixed price is a static value that will be used for all instances of the option, whereas the price formula is a dynamic calculation that can use the input values from number input options as inputs. The price formula supports basic arithmetic operations, such as addition, subtraction, multiplication, and division, as well as grouping and nesting of expressions.

Categorization

When defining an option on a Konfig, you can define a categorization by entering several categories into the options. Those categories will be merged and the Viewer will put the things in the correct place.

The displaying of categories is sorted. They are first sorted on the category name itself, and afterwards on the option name. Within the options, the sorting happens by first checking if there is a default option (that option will always be first), after which we start sorting by name. Sorting categories is in principle by name, but there is a way to sort them manually by prefixing them with a number and colon. When showing the title, we will hide the number and colon;

  • Option 01 <- Sorted by Name, shown as is
  • 1. Option 01 <- Sorted by the Number, shown like 1. Option 01 (there is no colon, so we don't remove it)
  • 1: Option 01 <- Sorted by the Number, shown like Option 01 (the number is hidden)
  • 3453565: Option 01 <- Sorted by the Number, shown like Option 01 (the number is hidden)
  • Subcategory 01: Option 01 <- Sorted by the elements on the left hand side of the :, shown like Option 01 (the number is hidden)

SKU's

In a Konfig, the SKU for a total product is comprised of multiple sub-SKUs, which correspond to the individual options that make up the product. For example, when defining the options in a Konfig, you can specify the SKU for each option, which will become a sub-SKU of the total product SKU. For example, if you define a frame option for a chair with the SKU "FRAME-001", this SKU will be included in the total product SKU as a sub-SKU. It is important to note that the SKU you define for an option in the Konfig is a sub-SKU, and not the SKU for the total product. When a user hits 'add-to-cart', we provide an object with the final configuration for you to handle the assembly of the SKU in whichever way you like.

By using sub-SKUs for the options in a Konfig, you can manage the inventory and pricing of the individual options, as well as the total product, in a flexible and scalable way. This will allow you to offer a wide range of customizable products to your users, while maintaining accurate and up-to-date inventory and pricing information.