Identifiers in Excel Import

How to correctly set product identifiers when importing products and variants via Excel

This guide explains how to use product identifiers correctly when importing products and variants through Excel files in Omnium.


Import Overview

Omnium supports importing products and variants via Excel files. The identifier fields determine:

  1. Whether a record is a new product or updates an existing one
  2. Whether a record is a product or a variant
  3. How variants are associated with their parent products

Required Columns

For Products

ColumnRequiredDescription
IdYesUnique identifier for the product
ProductIdYesLogical product grouping
SkuIdConditionalRequired for single-SKU products
IsSkuRecommendedSet to true for single-SKU, false for products with variants
ParentIdNoFor sibling grouping

For Variants

ColumnRequiredDescription
IdYesUnique identifier for the variant
SkuIdYesStock-keeping unit identifier
VariantParentIdYesMust match the Id of the parent product
ProductIdRecommendedShould match parent product's ProductId
ParentIdRecommendedShould match parent product's ParentId

When importing variants via Excel, the parent product must already exist in Omnium. The VariantParentId column links the variant to its parent.


Import Scenarios

Scenario 1: Single-SKU Products

For products that have no size/color variants:

IdProductIdSkuIdIsSku
BOOK-001_enBOOK-001BOOK-001TRUE
BOOK-002_enBOOK-002BOOK-002TRUE
BOOK-003_enBOOK-003BOOK-003TRUE

Notes:

  • SkuId is required and typically matches ProductId
  • IsSku should be TRUE
  • VariantParentId is not needed

Scenario 2: Products With Variants (Single Import)

When importing products and variants together using the "Product Export File" format:

Products Sheet:

IdProductIdIsSkuParentId
SHIRT-BLUE_enSHIRT-BLUEFALSESHIRT-SERIES
SHIRT-RED_enSHIRT-REDFALSESHIRT-SERIES

Same File - Variant Rows:

IdProductIdSkuIdIsSkuVariantParentIdParentId
SHIRT-BLUE-SSHIRT-BLUESHIRT-BLUE-STRUESHIRT-BLUE_enSHIRT-SERIES
SHIRT-BLUE-MSHIRT-BLUESHIRT-BLUE-MTRUESHIRT-BLUE_enSHIRT-SERIES
SHIRT-RED-SSHIRT-REDSHIRT-RED-STRUESHIRT-RED_enSHIRT-SERIES
SHIRT-RED-MSHIRT-REDSHIRT-RED-MTRUESHIRT-RED_enSHIRT-SERIES

Notes:

  • Products have IsSku = FALSE (they contain variants)
  • Variants have IsSku = TRUE (they are purchasable)
  • VariantParentId links each variant to its product

Scenario 3: Updating Existing Variants

When you need to update variant properties (price, inventory, etc.) for existing products:

IdSkuIdVariantParentIdPriceIsActive
SHIRT-BLUE-SSHIRT-BLUE-SSHIRT-BLUE_en299TRUE
SHIRT-BLUE-MSHIRT-BLUE-MSHIRT-BLUE_en299TRUE

Notes:

  • VariantParentId is essential to locate the parent product
  • The system finds the variant by SkuId within the parent product
  • Other fields are updated on the found variant

Scenario 4: Multi-Language Products

Importing the same product in multiple languages:

IdProductIdLanguageName
JACKET_enJACKETenWinter Jacket
JACKET_noJACKETnoVinterjakke
JACKET_svJACKETsvVinterjacka

Notes:

  • Id includes language suffix for uniqueness
  • ProductId is shared across all languages
  • Products are grouped as translations in the UI

Common Mistakes

1. Missing VariantParentId on Variants

Wrong:

IdSkuId
SHIRT-SSHIRT-S

Correct:

IdSkuIdVariantParentId
SHIRT-SSHIRT-SSHIRT_en

Without VariantParentId, the system cannot associate the variant with its parent product. The import will fail or create orphaned data.


2. VariantParentId Pointing to ProductId Instead of Id

Wrong:

IdSkuIdVariantParentId
SHIRT-SSHIRT-SSHIRT

Correct:

IdSkuIdVariantParentId
SHIRT-SSHIRT-SSHIRT_en

VariantParentId must reference the Id field (with language suffix), not the ProductId.


3. Inconsistent ParentId Between Product and Variants

Problematic:

EntityIdParentId
ProductSHIRT_enSHIRT-SERIES
VariantSHIRT-S(empty)

Better:

EntityIdParentId
ProductSHIRT_enSHIRT-SERIES
VariantSHIRT-SSHIRT-SERIES

While not strictly required, keeping ParentId consistent between product and variants ensures proper inheritance behavior.


4. Using Same Id for Product and Variant

Wrong:

IdIsSkuSkuId
SHIRTFALSE
SHIRTTRUESHIRT-S

Correct:

IdIsSkuSkuIdVariantParentId
SHIRT_enFALSE
SHIRT-STRUESHIRT-SSHIRT_en

Every Id must be unique. Products and variants cannot share the same Id.


Import File Formats

Omnium supports several Excel import formats for products:

1. Product Import (Basic)

  • Creates or updates products
  • Required columns: Id
  • Optional: all other product fields

2. Variant Import (ExcelImportModelVariant)

  • Creates or updates variants on existing products
  • Required columns: Id, Variant.SkuId, Variant.Id

3. Product Export File Format

  • Full product structure with inline variants
  • Required columns: Id, SkuId, IsSku, VariantParentId
  • Most flexible for importing products with variants

Best Practices

  1. Always test with a small batch first - Import 5-10 products to verify your column mappings

  2. Export existing products as template - Use the product export feature to see the correct format

  3. Keep identifiers consistent - Use the same ID patterns throughout your imports

  4. Set VariantParentId explicitly - Don't rely on automatic association for Excel imports

  5. Include IsSku column - Explicitly mark which rows are purchasable SKUs

  6. Validate parent products exist - Before importing variants, ensure parent products are already in the system


Troubleshooting

IssueLikely CauseSolution
Variant not appearingMissing/wrong VariantParentIdVerify it matches parent product's Id exactly
Product overwrittenDuplicate Id in importEnsure each Id is unique
Languages not groupedDifferent ProductId valuesUse same ProductId for translations
Siblings not groupedMissing/different ParentIdUse same ParentId for all siblings
SKU not trackableMissing SkuId or IsSku = falseSet both SkuId and IsSku = true

See Also