Skip to content

Product Detail (Create and Edit)

Create: /_Admin/commerce/product-management/create?SiteId=...&typeId={typeId or blank}
Edit: /_Admin/commerce/product-management/edit?SiteId=...&id={productId}

Full-screen form after creating a product on the list or clicking Edit; top to bottom: Basic information, custom fields (if any), variant options and variants (when variants not hidden); digital products also require digital product delivery per variant table. Save returns to product management list.

Relationship with list

PageDoc
List, filters, duplicate, batch deleteProduct management (list)
This formThis page

How to Enter

MethodRoute
CreateList Create product → choose "Blank product" or a product type (for digital, choose type with digital product checked) → product-management/create?typeId=...
EditList row edit → product-management/edit?id=...

Breadcrumb usually: Product Management -> Edit product (create title may differ per UI).

Bottom fixed Cancel / Save / Save and return (KBottomBar), similar to content entry edit.

Basic Information

First white card (BasicInfo). Multilingual sites have Multilingual switch top-right; fields below can be maintained per default and each language.

Product detail: basic info name SEO image description categories tags active
FieldDescription
Product name (title)Required; storefront display title. Multilingual: default title plus each language in customData.title
SEO name (seoName)Required; friendly URL. Cannot contain []\{}#%^*+=_|~<>.?!'"/:;,()$&@ or whitespace; unique site-wide. Input can generate suggestion from title (SeoName component, path=product)
Images (images / featuredImage)From media library; set featured image (featuredImage). Gallery and featured metadata in imageMetas
Description (description)Rich text (KEditor); multilingual same as title
Categories (categories)Tags for selected categories; green + opens picker linking product categories. Manual categories: delete on tag
Tags (tags)Enter new or select existing product tags
Active (active)Toggle: sellable on storefront

Field display names configurable in product types / settings product custom fields (system fields like Title, SeoName, etc.).

Attributes (optional)

When settings has not enabled "Hide attributes", basic info card bottom adds Attributes: key-value list (KeyValueEditor) for product-level attributes; no forced 1:1 with variant dimensions below; fill as needed.

Custom Fields

Product custom fields (non-system) from settings rendered by CustomData, between basic info and variant sections; types include text, select, image, etc., with dynamic options on product types. Hidden when no custom fields.

How Variant Options Affect Variants

When settings has not enabled "Hide variants", lower section has variant options (OptionGroupEditor) and variant table (VariantEditor). Together they define storefront SKUs.

Variant OptionsVariantsNew valueGroup name e.g. ColorValues e.g. Red / BlueOne SKU per rowselectedOptions combo

Key points (consistent with product-variant.ts):

ActionEffect on variants
Add option groupClick + for empty group; need option name (e.g. Size) and at least one value before variant rows expand on that dimension
Add value to existing groupSystem duplicates new rows for variants not yet containing that value (no duplicate combos); existing combos unchanged
Rename group / valueSyncs name / value in all variant selectedOptions
Delete a valueIf other variants still have other values on that dimension, deletes rows using that value; if only one value on dimension, removes dimension from rows
Delete entire groupRemoves dimension from all variants and cleans related rows
Add variant (button)With option groups defined, manually create SKU row; dialog picks value per dimension (no duplicate combo)

Each variant is one separately priced, stocked, activatable SKU; selectedOptions is { name, value }[], e.g. Color: Red + Size: M. Storefront add-to-cart matches variant by selected combo.

Variant Options

OptionGroupEditor: one card per option group, collapsible edit.

Variant options: group name, text or color type, value list
UIDescription
Group titleClick card to edit: Option name (e.g. Color, Size)
TypeText or Color; color type uses color picker for values
Option valuesEnter one by one; Enter or Tab to add. Display mode can show small image per value (variantOptions.items[].image)
MultilingualWhen enabled, card Language icon edits translations for group and values
DoneEnd group edit; Delete icon removes entire group (triggers variant logic above)
Bottom +Add new option group

Option definitions write to product variantOptions (type, multilingual, per-item metadata) and link to Options column in variant table.

Variant List

Below variant options is variant table; when at least one option group exists and first variant has selectedOptions, Add variant appears above table (UI copy for manual SKU creation).

Variant table: image, option combo, price, stock, sales, active, row actions
Column / ActionDescription
ImageVariant featured image; replaceable. If settings has meta template for Images, image metadata editable
OptionsCurrent row selectedOptions display (e.g. Red / M)
PriceSKU price (currency symbol from settings)
StocknewInventory: value written on save (with originalInventory; per API)
SalesRead-only stats
Digital productDigital products (isDigital) only; button opens delivery config; see digital products
ActiveWhether SKU is sellable
EditOpens edit variant dialog
DeleteAvailable when more than one variant row

Digital product delivery

If settings enables Digital product delivery required and product is digital, each variant must have at least one digital delivery item before Save.

Digital Products

When product is from product type with Digital product checked, or isDigital is true after save, variant table shows Digital product column (physical products omit it). Each variant SKU configures what buyers receive after payment; different variants can have different files, links, or text.

Open Configuration

In variant table Digital product column:

StateAction
Not yet addedUpload file button (cloud upload icon) opens config dialog
One or more addedDigital button (count) opens same dialog

Dialog title: Digital product.

Digital product dialog: add dropdown file/link/text, auto delivery, delivery list

Three Ways to Add Delivery Items

Click Add (dropdown arrow on primary button) top-left; choose type; can add multiple per variant delivery package.

Method / menu itemUseConfiguration
FileDownloadable attachment (PDF, ZIP, installer, etc.)Select local file uploads immediately; list Type is "File", Details shows file size. Stored in site digital product storage, linked to variant variantId
LinkExternal resource (cloud drive, video page, third-party download)Sub-dialog: Name (buyer-visible title) and Link (URL, multiline). Details shows link text (truncated if long)
TextNo file needed: license key, serial, instructions, account/password, etc.Sub-dialog: Name and Text (multiline). Shown to buyer or used in email templates after order

All three types appear in dialog table after save:

ColumnDescription
NameDelivery item display name
TypeFile / Link / Text (tag)
DetailsFile size; link and text show value summary
Row DeleteRemove item; File type on saved product may also delete remote uploaded file

Same variant can mix types (e.g. PDF file + activation text + backup link).

Auto Delivery

Toolbar right Auto delivery checked by default. When checked, system can auto-send delivery to buyer per commerce rules when order conditions met; unchecked requires manual or other flow. Triggers and email templates: shipping and site commerce settings.

Close dialog when done; repeat for each variant row (multi-variant digital products each have own digitalItems).

Relationship with Save and Storefront

  • On save, if Digital product delivery required enabled, empty digitalItems on any variant shows Digital content cannot be empty and blocks submit.
  • Type download count / day limits defined on product type; complements "what to deliver" in this dialog.
  • Storefront add-to-cart, checkout, and k.commerce read variant-level digitalItems; development: k.commerce.

Edit Variant Dialog

Click row Edit to open edit variant dialog.

Edit variant dialog: large image, dimension values, price weight stock SKU etc.
ItemDescription
Variant imageLarge image area; can default to product featured image
Variant optionsOne row per dimension: Name (read-only) + Value (dropdown from existing values on that dimension across product variants)
Price / Weight / StockNumber inputs
SKU / BarcodeText
TagsVariant-level tags (independent from product tags)
ActiveSKU toggle

Confirm writes back to table row; changing dimension value syncs name in variantOptions.

Add Variant Dialog

Click Add variant opens dialog (title often Create); same structure as edit, but dimension values must be reselected (initially empty). New row appended; uses product featured image when no image selected.

Add variant dialog: select value per variant dimension

Combo must not duplicate existing variant; dropdown options from values already on current product.

Bottom Action Bar

ButtonDescription
CancelReturn to list without saving
SaveValidates basic info and custom fields; digital products validate delivery (if required)
Save and returnOn success, return to list