Skip to content

Product vs storefront taxonomy

Ailaaj maintains two taxonomies plus optional generic category schemas. They work together but serve different jobs.

Product categories (internal)

  • Stored in product_categories.
  • Hierarchical: any category can have a parent (parent_category_id).
  • Assigned on each product (category_id) for catalog organization and reporting.
  • Slug is auto-generated for internal/API use — not edited on the form.
  • Managed on the Product categories tab.

Storefront categories (customer menu)

  • Stored in storefront_categories.
  • Controls menu label, slug, icon, sort order, show_in_menu, featured products, and parent/child menu structure.
  • Managed on the Storefront categories tab.
  • Consumed by the B2C storefront API.

The mapping between them

storefront_category_mappings links product categories to storefront categories (many-to-many). When you edit a product category, the Storefront category mappings section is the quick path to connect internal nodes to menu entries without duplicating names in both places.

Generic categories (attribute schemas)

The Generic categories tab configures field definitions (options, dependent fields) used on product forms for regulated types. This is not a navigation taxonomy — it is a schema layer.

Practical rule of thumb

QuestionAnswer
”Where does this SKU live in our catalog tree?”Product category
”Where should shoppers find it?”Storefront category (+ mapping)
“What extra fields must we capture?”Generic category config