Skip to main content
A template article groups products that share the same structure. You add attributes, such as Size and Colour. Each combination of values becomes a variant with its own code, stock, prices and lots. Example: a “T-shirt” template with Colour and Size can have “Red / M” and “Blue / XL” variants.

Configure a template

  1. Create or open the template article.
  2. Add the required attributes.
  3. Select the allowed values for each attribute.
  4. Set a default value if forms should prefill it.
An attribute can be shared by several templates. The attribute structure is locked as soon as the template has a variant.

Create variants

You can create a variant in four ways:
  • from the matrix in the Variants tab;
  • from an order line when the combination does not exist yet;
  • during manufacturing when a BOM uses a template component;
  • by attaching an existing article to a template.
The matrix detects duplicates and creates up to 100 missing combinations at a time.

Copied and inherited data

On creation, a variant copies its price, unit, VAT, family, stock settings, quality controls and custom fields from the template. These values are then independent. A variant without its own process continues to use the template’s BOM, routing, operation times, minimum quantities and main supplier. You can override these values for a specific variant.

Parametric BOM

A parametric rule changes a component or its quantity based on the attributes of the manufactured variant. For example, a red variant can use a red component, and an XL size can use a larger quantity. Bonx applies the same rules in the preview, CSV export, manufacturing orders and MRP.

Other flows

  • Orders and printed documents show quantities per variant.
  • Stock, lots and movements are managed on the variant.
  • MRP calculates needs per variant and groups them under the template.
  • Odoo, Shopify and WooCommerce synchronize templates, variants and attributes.

Current limitations

  • Attribute values must be listed. Free dimensions and formulas such as “length × width” are not supported.
  • There are only two levels: template and variant.
  • A value copied at creation is not updated automatically when the template changes later. Only archiving and reactivation propagate.
  • The matrix creates at most 100 combinations per operation.