Catalog
Attributes

Attributes

Attributes define the selectable options for your products—materials, finishes, edge profiles, hardware, and any other choices customers make when ordering.

Overview

TimberCloud Storefront — Product Catalog

Attributes are organized into tables with customizable columns. Each row represents an option the customer can select.

Example: Material Attribute

NamePriceThicknessWeight
Cherry$253/40.8
Maple$303/40.5
Walnut$355/41.2

When a customer selects "Cherry," your pricing and parts formulas can reference material.price (25), material.thickness (0.75), or material.weight (0.8).

TimberCloud Storefront — Product Catalog


Creating an Attribute

TimberCloud Storefront — Product Catalog

Step 1: Open Product Attributes

Navigate to your product and click the Attributes tab.

Step 2: Add Attribute

Click the "+" icon to create a new attribute.

Step 3: Define Structure

FieldDescription
Attribute NameThe label shown to customers (e.g., "Material", "Edge Profile")
Table HeadersThe data columns for this attribute (e.g., "Price", "Thickness")

Note: The "Name" column is automatically included—you don't need to add it.

Step 4: Choose Data Types

For each column, select the appropriate data type (see Data Types below).

Step 5: Add Rows

After saving the structure, add rows to your attribute table. Each row represents one selectable option.


Data Types

Each column in your attribute table needs a data type:

TypeDescriptionExample
PriceCurrency value$25.00
FractionFractional measurement3/4, 1 1/2
DecimalDecimal number0.75, 1.5
IntegerWhole number1, 2, 10
DescriptionText value"Standard finish"
BooleanYes/No toggleYes, No
ListDropdown selectionSelect from predefined options
BlockEmpty spacer(Visual separator)

Choosing the Right Type

  • Price for costs and upcharges
  • Fraction for dimensions that customers see (3/4", 1 1/2")
  • Decimal for calculations (thickness in formulas)
  • Description for text information
  • Boolean for yes/no features

Using Attributes in Formulas

Attributes are referenced in Pricing, Parts, and Inventory formulas.

Reference Format

attribute_name.column_name

Examples

ReferenceReturns
material.priceSelected material's price value
material.thicknessSelected material's thickness
edge.upchargeSelected edge option's upcharge
hardware.nameSelected hardware option's name

In the Formula Builder

  1. Click "Add Step"
  2. Select "Field" as the operand type
  3. Choose the attribute from the dropdown
  4. Select the column/property

In the Code Editor

// Price based on material and edge options
const sqFt = (width * height) / 144;
return sqFt * material.price + edge.upcharge;

CSV Import/Export

Speed up attribute setup with CSV files.

Exporting Attributes

  1. Open the attribute you want to export
  2. Click the "Export CSV" button
  3. Save the file for backup or editing

Importing Attributes

  1. Prepare a CSV with headers matching your attribute structure
  2. Click "Import CSV"
  3. Select your file
  4. Review and confirm the import

CSV Format

Your CSV should have:

  • First row: Column headers (must match attribute columns)
  • Subsequent rows: Option values

Example:

Name,Price,Thickness,Weight
Cherry,25,0.75,0.8
Maple,30,0.75,0.5
Walnut,35,1.25,1.2

Common Attributes

Here are common attributes for woodworking products:

Materials

ColumnTypePurpose
NameTextMaterial name
PricePriceCost per unit
ThicknessDecimal/FractionStock thickness
DensityDecimalFor weight calculations

Edge Profiles

ColumnTypePurpose
NameTextProfile name
PricePricePrice per linear foot
ImageDescriptionReference image path

Designs/Styles

ColumnTypePurpose
NameTextDesign name
PricePriceAdditional cost
Stile WidthDecimalFrame dimension
Rail WidthDecimalFrame dimension

Finishes

ColumnTypePurpose
NameTextFinish name
PricePricePrice per unit
Lead TimeIntegerAdditional days

Parts Data for Visual Part Builder

Attribute columns can be referenced as "parts" data in the Parts & Pieces configuration and Visual Part Builder. This is what makes automatic part calculations possible.

How It Works

When you add columns like thickness, stile_width, or rail_width to an attribute, these values become available for field mapping using dot notation:

AttributeName.column_name → Value

Setting Up Parts Columns

Example: Material Attribute with Parts Data

NamePricethicknessdensityweight_factor
Cherry$250.75352.1
Maple$300.75442.4
Walnut$350.75382.2

These columns can be referenced as:

  • Material.thickness → 0.75 (for Cherry)
  • Material.density → 35 (for Cherry)
  • Material.weight_factor → 2.1 (for Cherry)

Example: Design Attribute with Frame Dimensions

NamePricestile_widthrail_widthpanel_reveal
Shaker$02.252.250.125
Mission$152.52.50.125
Craftsman$253.03.00.1875

These columns can be referenced as:

  • Design.stile_width → 2.25 (for Shaker)
  • Design.rail_width → 2.25 (for Shaker)
  • Design.panel_reveal → 0.125 (for Shaker)

Using Parts Data in Visual Part Builder

In the Visual Part Builder configuration:

  1. Open your product → Parts tab
  2. Select "Use Visual Templates"
  3. For each dimension field, map to attribute columns:
Builder FieldMappingSource
ThicknessMaterial.thicknessMaterial attribute
Stile WidthDesign.stile_widthDesign attribute
Rail WidthDesign.rail_widthDesign attribute
Lip/RevealDesign.panel_revealDesign attribute

Benefits of Parts Data

  1. Define once, use everywhere — Stile widths, thicknesses defined on attributes apply to all products using them
  2. Automatic calculations — Visual Part Builder computes stile lengths, panel sizes automatically
  3. Consistent cut sheets — Production documents always reflect the correct values
  4. Easy maintenance — Update an attribute, and all products get the new values

Best Practice: Parts Column Naming

Use lowercase, snake_case names for parts columns that will be referenced in formulas:

GoodAvoid
thicknessThickness
stile_widthStile Width
rail_widthRail Width
panel_revealPanel Reveal

This ensures consistent referencing in formulas and field mappings.


Attribute Layout

Control how attributes appear in the order form:

Display Order

Drag and drop attributes to reorder them in the customer-facing form.

Grouping

Group related attributes together for a cleaner interface.

Required vs. Optional

Mark attributes as required to ensure customers make a selection.


Best Practices

Naming

  • Use clear, customer-friendly names
  • Be consistent across products
  • Avoid abbreviations in customer-facing names

Structure

  • Keep attribute tables focused (one concept per attribute)
  • Use appropriate data types for calculations
  • Include all values needed for formulas

Maintenance

  • Review and update prices regularly
  • Archive discontinued options rather than deleting
  • Use CSV export for backups

Troubleshooting

Attribute Not Appearing in Formulas

  • Verify the attribute is saved
  • Check that column names are lowercase in formula references
  • Refresh the formula builder

Import Errors

  • Ensure CSV headers match exactly
  • Check for special characters in values
  • Verify data types match (numbers vs. text)

Calculation Issues

  • Confirm the correct column is referenced
  • Check for null/empty values in attribute rows
  • Test with known values

Next Steps