Products

What’s a shop without products? What’s a product group?

Without products, your eCommerce solution is pretty dull and useless.

In Dynamicweb, products are very rich objects, with loads of properties, settings, options and abilities – and things can get pretty complicated.

In this article, you will learn more about products in Dynamicweb, starting with the basics – how to create and manage products – and all the way down to more advanced topics, like context sensitive pricing (the price matrix) or units and unit categories.

Most businesses renew their product portfolio over time; new products are added and old products are removed. Where this happens depends on the solution architecture:

  • On an integrated solution products are typically created on an external system, and then imported/deleted on a schedule when the import job runs
  • On a non-integrated solution products are created directly in Dynamicweb

You can add products directly in Dynamicweb from any product list using the ribbon bar buttons New product and Create multiple products (Figure 2.1).

Figure 2.1 Creating products

Creating a single new product opens the product details view so you can add data to the product fields.

Creating multiple new products opens a grid view where you can enter product data into the selected product list columns (Figure 2.2).

Figure 2.2 Creating multiple new products at once

Once products have been created, you can edit them to update their prices, descriptions, product images and so on.

If the solution architecture supports doing this directly in Ecommerce (instead of e.g. Dynamicweb PIM or a remote system), this can be done simply by clicking a product in the product list and changing product field values (Figure 3.1).

Figure 3.1 Editing product fields

You can also edit multiple products – select them in the product list and click Edit products to open grid containing the selected product list columns (Figure 3.2).

Figure 3.2 Editing multiple products at the same time

Direct URLs to editing products

You can link directly to a product in backend (e.g. from your ERP system) by using the product ID or product number in the URL:

  • yourwebsite.com/admin/?ProductID=123
  • yourwebsite.com/admin/?ProductNumber=123QWER

The user will be prompted to log in, then redirected to the product in question.

NOTICE!  if you import products, and ProductId is part of the import data, make sure that the ProductId contains Aa-Zz or 0-9 ONLY, and nothing else. Do NOT use space, comma, dot or any special character.

A standard product field is a fields which are present on all products.

Standard fields are typically universal or very commonly used properties such as Name, Price, Stock level, etc. They are usually supplemented by one or more custom fields, which can be used to store additional industry- or solution-specific information.

Below you will find an overview of all standard product fields. You don’t have to provide values for all standard fields – in many cases it makes for a much smoother editor experience if you configure the Fields settings to make some fields required, hidden or read only.

The first section of product fields contains the most commonly edited product data (Figure 5.1).

Figure 5.1 The first section contains the most commonly edited product fields

#

Field

Content

Notes

1

System Id

A system id is auto-assigned to each product when it is created.

A Fields setting makes the product ID editable when creating a product, but read-only after first save.

2

Active

Products can be set to active or inactive

This setting can be used to easily control which products are shown in frontend.

3

Name

The product name as you want the customer to see it.

 

4

Number

The product number

 

5

Price

The price in the default currency that you’re charging for the product

If prices depend on contextual information, prices should be managed using the Price matrix.

6

Loyalty points

The price in loyalty points that you’re charging for the product (if used on the solution)

 

7

Stock level

The number of units in stock.

If your stock is distributed across multiple stock locations, stock should instead be managed using the Stock matrix.

 

Not present on product with the product types Service and Gift Card.

8

Manufacturer

Select a manufacturer for this product

See Manufacturers article for more information

9

Teaser text

A short description or teaser text for the product. This field uses a rich text editor, so you can format the content. If you’re a reseller, make sure the content is unique to search engines.

 

10

Description

A more in-depth description of the product. This field uses a rich text editor, so you can format the content. If you’re a reseller, make sure the content is unique to search engines.

 

The images and stock fields (Figure 5.2) deal with the physical dimensions and availability of the product.

Figure 5.2 The Images & Stock fields

#

Field

Content

Notes

1

Product Images

Select 1-3 images related to the product – see note.

This method for matching images to a product is on the way to being deprecated – see Product Images article for details.

2

Stock  state

Select a group of stock states

Not present on product with the product types Service and Gift Card.

3

Units & stock

Select a default product unit

Not present on product with the product types Service and Gift Card, and Parts list.

4

Weight

The product weight

The weight unit can be changed under Settings > Ecommerce > Advanced configurations > General

5

Volume

The product volume

The volume unit can be changed under Settings > Ecommerce > Advanced configurations > General

The Documents & Files fields allow you to associate one or more links, files, images or texts with the product (Figure 5.3).

Figure 5.3 The Documents & Files fields

#

Field

Content

Notes

1

Link

An internal or external link

 

2

Alternative link

An internal or external link

 

3

Details – Images/Links

One or more links to content or a file/image. One of the links can be marked as the Default link.

When using Dynamicweb PIM, images uploaded to the Images field or to an image category are published to these fields.

4

Details – Text

One or more additional texts associated with the product.

 

The Advanced Configuration section allows you to set a number of important (but not often edited) properties on a product (Figure 6.1).

Figure 6.1 Advanced Configuration options

#

Field

Content

Notes

1

Shop

Select a default shop

Only used for URL generation purposes

2

Default VAT group

Select a VAT group

A VAT group can also be set at the product group level

3

Product Type

Select a product type

 

4

Cost

How much it costs you to stock one unit of this product or variant

The cost can be what you paid the manufacturer, or the time and material you used to manufacture the unit yourself

5

Price calculation

Select a price calculation type for products of the type Parts list

Only present on products with the product type Parts list.

The Meta information fields are used to enrich the product with information which may have an effect on how your website is ranked in search results (Figure 6.2).

Figure 6.2 The Meta Information fields

#

Field

Content

Notes

1

Title

A title for search engine indexing purposes

 

2

Description

A description for search engine indexing purposes

 

3

Keywords

Keywords for search engine indexing purposes

 

4

Canonical

A canonical URL for search engine indexing purposes

 

5

URL

A (user-friendly) URL for search engine indexing purposes

 

Dynamicweb operates with four types of product:

  • stock item is usually a physical product (which you can, in theory, run out of, i.e. it has a limited stock)
  • service is usually a non-physical product, like support or billable hours – if selected, stock level and stock state are unavailable in the default information panel
  • parts list consists of several products and/or product groups, e.g. a computer with defined/selectable parts
  • gift card allows the gift card holder to purchase other goods or services using a gift card code

Stock items and services are self-explanatory - and parts lists and gift cards are explained below. 

A stock item is a physical product, which means that it has limited stock. This is the default product type – unless another product type is specifically selected, new products will be created as stock items.

A service is a non-physical product, like support or billable hours. Service-type products are identical to stock items except that stock-related fields (Stock level, Stock state, Units & Stock) are unavailable.

A parts list is a special product type, which consists of a set of other products. The products included in a parts list can be both fixed and configurable, and the contents may be added to cart either as a single product or as a bundle of products, depending on the configuration. 

Parts lists are created in the standard manner, but you must select the 'Parts list' product type in the Advanced configuration section of the product details. Once saved, two properties unique to parts lists appear:

  • price calculation field under Advanced configuration
  • A parts list button in the ribbon bar

The price calculation field (Figure 10.1) allows you to choose between several price calculation methods:

  • Calculated price sums up the individual prices of all products added to the parts list
  • Fixed price uses the Price field on the parts list product, and ignores the price of all included products
  • Fixed price plus changes combines the regular Price field with the individual prices of all included products
Figure 10.1 The Price calculation dropdown

A parts list may contain both fixed products - i.e. products which are always part of the parts list - but it's also possible to make a parts list configurable; this is done by letting the customer choose between items in a product group.

To configure the parts list contents (Figure 10.2):

  • Click the Parts Lists button in the ribbon bar
  • Use the green plus-icon to add a number of products or product groups to the parts list 
  • Specify the quantity of each product to include

 

Figure 10.2 Adding products to a parts list

If a product group is selected the quantity indicates how many products from this group can be included in the parts list. You can preselect a default option using the radio buttons, and also write a nothing selected text (e.g. Select your helmet here).

The sort icon can be used to sort the individual products added to the parts list - product groups follow the sort order of the group selected.

A gift card is a special product type which generates a unique code when sold. The code can then be used to pay for other products in your web shop. It must be shown to the customer on the order receipt or in an order confirmation email – preferably both.

A few things to note about gift cards:

  • Gift card products are created in the standard manner, but you must select the ’Gift Card’ product type in the Advanced configuration section of the product details.
  • Since a gift card is a digital product, stock is unlimited and so all stock related fields (Stock level, Stock state, Units & Stock) are unavailable on this type of product.
  • Gift cards also don’t work with the following Ecommerce tools & features; Variants, the Price Matrix, Discounts, Parts lists, Units, and VAT Groups.

Whenever a gift card is sold and a gift card code is generated, it is added to the Gift cards list in Ecommerce (Figure 11.1). You cannot generate gift cards manually – they must be generated by a sale from frontend.

Figure 11.1 The Gift Cards node lists all gift cards sold on a solution

In the gift card list you can see information about all gift cards sold on the system:

  • The name of the product sold
  • The gift card code
  • The currency – gift cards can only be used to buy products in the same currency as the gift card
  • The creation date and expiry date (the default is 24 months after the creation date, but this can be changed)
  • The initial amount and the remaining balance

You can select any number of gift cards and click cancel gift card – this sets the expiration date to ’now’.  You can also click a gift card to see a list of transactions where the gift card was used (Figure 11.2).

Figure 11.2 A list of all transactions involving a particular gift card

A gift card may be sold with either a fixed amount, or a variable amount where the customer enters a sum before completing the purchase:

  • A fixed amount gift card is simply sold for the price, as per any other product
  • To sell a variable amount gift card, check in your template if the product type is 3 (for gift card), and if it is replace the price field with an input field with the name and id ‘amount’

When a gift card is sold, the unique gift card code should be shown to the customer on the receipt and in an order confirmation email.

You must also modify the checkout flow and add an input field (name and id = EcomOrderGiftCardCode) so a customer can use a gift card to pay during checkout.

All Ecommerce solutions have a default language and optionally a number of additional languages.

When more than one language is present on a solution you can use the language selector dropdown (Figure 12.1) in the ribbon bar to change the language context.

Figure 12.1 The Language selector allows you to switch language contexts

A new product is always created in the default language, as well as in the current language context.

To localize the product to additional languages:

  • Switch to the language context
  • Translate the product field values as appropriate
  • Save

To remove a language version again:

  • Switch to the language context
  • Click the Delocalize button

You can’t remove a language from the default language – but you can deactivate it (depending in your Fields settings, of course)

From the ribbon bar you have access to more advanced tools for working with products in Dynamicweb Ecommerce.

Using these tools you can:

  • Assign discounts to a product
  • View and edit related groups and related products
  • Set up custom publication periods (campaigns)
  • Work with languages and localize or delocalize products
  • Access marketing tools such as personalization
  • Work with prices, stock and VAT groups in an advanced manner using the matrixes

 

The discounts dropdown (Figure 14.1) is used to include or exclude a product from order discounts.

Figure 14.1 You can include or exclude a product from certain order discounts

To include a product in or exclude a product from a discount:

  • Click the arrow-icon and select Include in or Exclude from
  • Select one or more discounts (they must have the ’Assignable from product catalog’ flag set to true to appear in this list)
  • Save

After saving – or if you click the Discounts button – you can see a list of discounts which this product has been included in or excluded from (Figure 14.2).

Figure 14.2 The discounts overview

The related groups dropdown and interface (Figure 15.1) allows you to add a product to, or remove it from, other product groups. You can also specify which group is the primary group, which is relevant for generating canonical URLs.

Figure 15.1 Related groups

The Related products button and enables you to relate a product to other products, under the label from a Relation group (Figure 16.1).

Figure 16.1 Related products

When the product page is then visited in frontend, the related products can be rendered using the ProductRelatedGroups loop.

If a product has already been related to other products, the relation groups and products are listed below the ribbon bar (Figure 16.2).

Figure 16.2 A relation group and the related products

To further control/specify how the relation should be used, use the funnel-icon to setup filters on a relation (Figure 16.3).

Figure 16.3 Further control of product relations

Using the Options tab (Figure 17.1) you can:

Figure 17.1 Custom or predefined publication periods

The Price Matrix is a flexible and powerful way of customizing product prices according to various criteria, in a format similar to classic ERP systems.

Click the Prices button in the ribbon bar to open the price matrix view (Figure 18.1).

Figure 18.1 The price matrix for a product

The price matrix consists of a number of rows, each with associated criteria and a price:

  • If the criteria for a row are fulfilled, the price will be used by the system.
  • If more than one price row has fulfilled criteria, the lowest price will be used.

The columns in the price matrix can be customized by right-clicking a column and selecting or deselecting individual columns (Figure 18.2)

To create a new price row:

  • Click Click here to add a new row on the price matrix
  • Set a price and a currency
  • Define the criteria for triggering the price (Figure 19.1)
Figure 19.1 Creating a row in the price matrix

The price matrix can apply prices based on:

  • Product Variants
    • All Variants means the quantity criteria must be met using the same variant (e.g. 5 green shirts)
    • Any Variants all variants count towards the quantity criteria (1 yellow, 2 blue, and 2 green shirts)
  • User and user groups – or customer number
  • A specific time span
  • Whether a specific campaign is running or not
  • The product unit
  • The Ecommerce language or country
  • The particular shop the product is bought from
  • The quantity in which a product is bought

Don’t forget to save the product after you have created your price matrix rows.

Informative prices

A price marked as informative is excluded from the prices loop – this makes it possible to add e.g. retail prices or previous prices to a product (and show them in the frontend with Ecom:Product.InformativePrice.* and Ecom:Product.InformativePrice.IsInformative), without ever applying them  (or temporarily make prices informative to show e.g. pre-sale prices).

Stock may physically be located in more than one location, and this may impact many things, e.g. shipping fees, delivery times, local availability, etc.

In Dynamicweb, you can create stock locations and use the stock matrix (Figure 20.1) to help you manage stock levels across locations and display the relevant information to your customers.

Figure 20.1 The stock button opens the stock matrix

When creating a new row in the stock matrix you can:

  • Specify a stock location
  • Specify a unit type, a variant, and an amount of this unit type you have in stock
  • Specify the weight and volume of the unit type – this is important if you use weight and volume to calculate shipping fees.
  • Provide a description (e.g. 5 pieces or 6 bottles for a stock unit called 'box')

You can limit the stock locations available here at the shop level. If a product belongs to more than one shop, the stock locations selected for both shops will be available.

Stock locations can be created from Settings > Ecommerce > Product Catalog > Stock location.

Stock locations and localization

You can only create new stock locations when your default language is selected in the toolbar. Once a stock location has been created, you can create language-specific version of it by changing the language and saving the stock location in the new language. If you don’t, no stock location label will be rendered in the frontend for that language. Read more about localization in Dynamicweb.

With the VAT group tool you can assign country-specific VAT groups to a product in order to account for differences in how a product is classified by countries - read more about VAT and VAT groups in Dynamicweb.

To use the tool click the VAT Groups button in the ribbon bar (Figure 21.1).

Figure 21.1 The VAT Group matrix

Add a new VAT group to the product:

  • Click Click here to add a new row
  • Select a VAT group and a country and click OK
  • Click Save or Save and close

You can also click a row to edit it – or click the red X to delete it.

The Marketing tab (Figure 22.1) gives you access to the marketing feature called Personalization.

Figure 22.1 The Marketing tab

Database

These are the database tables associated with Products and related features in Dynamicweb.

EcomProducts

Contains product data from Ecommerce. Identity is defined as a combination of ProductID, ProductVariantID and ProductLanguageID.

Field name Data type Length
ProductId nvarchar 30
ProductLanguageId nvarchar 50
ProductVariantId nvarchar 255
ProductDefaultShopId nvarchar 255
ProductNumber nvarchar 255
ProductName nvarchar 255
ProductShortDescription nvarchar Max
ProductLongDescription nvarchar Max
ProductImageSmall nvarchar 255
ProductImageMedium nvarchar 255
ProductImageLarge nvarchar 255
ProductLink1 nvarchar 255
ProductLink2 nvarchar 255
ProductPrice float 8
ProductStock float 8
ProductStockGroupId nvarchar 50
ProductWeight float 8
ProductVolume float 8
ProductVatGrpId nvarchar 50
ProductManufacturerId nvarchar 50
ProductActive bit 1
ProductPeriodId nvarchar 50
ProductCreated datetime 8
ProductUpdated datetime 8
ProductCustomFieldsXml nvarchar Max
ProductType int 4
ProductPriceType int 4
ProductPriceCounter int 4
ProductVariantCounter int 4
ProductVariantProdCounter int 4
ProductVariantGroupCounter int 4
ProductRelatedCounter int 4
ProductUnitCounter int 4
ProductDefaultUnitId nvarchar 50
ProductDefaultVariantComboId nvarchar 255
ProductPriceMatrixUnit int 4
ProductPriceMatrixVariant int 4
ProductPriceMatrixPeriod int 4
ProductPriceMatrixMultiplePrices int 4
ProductPriceMatrixQuantitySpecification nvarchar 255
ProductMetaTitle nvarchar 255
ProductMetaKeywords nvarchar Max
ProductMetaDescription nvarchar Max
ProductMetaUrl nvarchar Max
ProductCategoryFieldValues nvarchar Max
ProductOptimizedFor nvarchar 255
ProductCommentcount int 4
ProductRating float 8
ProductCost float 8
ProductAutoId bigint 8
ProductMetaCanonical nvarchar 255
ProductExcludeFromIndex bit 1
ProductExcludeFromCustomizedUrls bit 1
ProductExcludeFromAllProducts bit 1
ItemCode nvarchar 255
TaxCode nvarchar 512
ProductPoints float 8
ProductHidden bit 1
ProductShowInProductList bit 1
ProductApprovalState int 4
ProductWorkflowStateId int 4

EcomDetails

Contains data from the Ecom product details tab. Linked to product via DetailProductID, DetailVariantID, and DetailLanguageId.

Field name Data type Length
DetailId nvarchar 255
DetailProductId nvarchar 30
DetailVariantId nvarchar 255
DetailLanguageId nvarchar 50
DetailType smallint 2
DetailValue nvarchar Max
DetailSortOrder int 4
DetailAutoId int 4
DetailIsDefault bit 1
DetailsGroupId int 4

EcomPrices

Contains price matrix data for products as defined in prices section of backend product details. Product is identified by combining PriceProductId, PriceProductVariantID and PriceProductLanguageID.

Field name Data type Length
PriceId nvarchar 255
PriceProductId nvarchar 30
PriceProductVariantId nvarchar 255
PriceProductLanguageId nvarchar 50
PriceCurrency nvarchar 3
PriceQuantity int 4
PriceAmount float 8
PriceUnitId nvarchar 50
PricePeriodId nvarchar 50
PriceCustomerGroupId nvarchar 255
PricePriority int 4
PriceUserCustomerNumber nvarchar 255
PriceCountry nchar 2
PriceShopId nvarchar 255
PriceValidFrom datetime 8
PriceValidTo datetime 8
PriceUserId nvarchar 255
PriceUserGroupId nvarchar 255
PriceAutoId int 4
PriceIsInformative bit 1
PriceStockLocationID bigint 8

EcomPeriods

Contains publication periods for products as defined in backend product details.

Field name Data type Length
PeriodId nvarchar 50
PeriodName nvarchar 255
PeriodStartDate datetime 8
PeriodEndDate datetime 8
PeriodAlways bit 1
PeriodActive bit 1
PeriodShowProductsAfterExpiration bit 1
PeriodAutoId int 4
PeriodHidden bit 1

EcomProductItems

Links items (ProductItemId) with products (ProductItemProductId).

Field name Data type Length
ProductItemId nvarchar 50
ProductItemProductId nvarchar 30
ProductItemBomProductId nvarchar 30
ProductItemBomGroupId nvarchar 255
ProductItemQuantity float 8
ProductItemName nvarchar 255
ProductItemRequired bit 1
ProductItemDefaultProductId nvarchar 30
ProductItemBomNoProductText nvarchar 255
ProductItemSortOrder int 4
ProductItemBomVariantId nvarchar 255
ProductItemAutoId int 4

EcomProductsRelated

Links products (ProductRelatedProductID) with their related products (ProductRelatedProductRelID) within a relation group (ProductRelatedGroupID).

Field name Data type Length
ProductRelatedProductId nvarchar 30
ProductRelatedProductRelId nvarchar 30
ProductRelatedGroupId nvarchar 255
ProductRelatedSortOrder int 4
ProductRelatedLimitLanguage nvarchar Max
ProductRelatedLimitCountry nvarchar Max
ProductRelatedLimitShop nvarchar Max
ProductRelatedAutoId int 4
ProductRelatedProductRelVariantID nvarchar 255
ProductRelatedLimitVariant nvarchar Max

EcomProductsRelatedGroups

Defines product relation groups as defined in Settings -> Ecom -> Product catalog -> Relation groups

Field name Data type Length
RelatedGroupId nvarchar 255
RelatedGroupName nvarchar 255
RelatedGroupLanguageId nvarchar 50
RelatedGroupSortOrder int 4
RelatedGroupAutoId int 4

EcomProductVatGroups

Contains vat groups as defined in Settings -> Ecom -> Internationalization -> Vat groups.

Field name Data type Length
ProductVatGroupID int 4
ProductVatGroupProductID nvarchar 30
ProductVatGroupProductVariantID nvarchar 255
ProductVatGroupVatGroupID nvarchar 50
ProductVatGroupCountryID nvarchar 2

Comment

Contains comments for news, paragraphs, and items.

Field name Data type Length
CommentId int 4
CommentName nvarchar 255
CommentEmail nvarchar 255
CommentWebsite nvarchar 255
CommentRating int 4
CommentText nvarchar Max
CommentItemType nvarchar 25
CommentItemId nvarchar 35
CommentLangId nvarchar 25
CommentCreatedDate datetime 8
CommentEditedDate datetime 8
CommentCreatedBy int 4
CommentEditedBy int 4
CommentIp nvarchar 16
CommentLikes int 4
CommentNolikes int 4
CommentParentId int 4
CommentActive bit 1

These are the database tables associated with product units and stock:

EcomStockGroups

Contains setup date for stock states as defined in Settings -> Ecommerce -> Orders -> Stock state.

Field name Data type Length
StockGroupId nvarchar 50
StockGroupName nvarchar 255
StockGroupAutoId int 4

EcomStockStatusLanguageValue

Contains translated (StockStatusLanguageValueLanguageId) data for individual stock states.

Field name Data type Length
StockStatusLanguageValueId nvarchar 50
StockStatusLanguageValueLinesId nvarchar 50
StockStatusLanguageValueLanguageId nvarchar 50
StockStatusLanguageValueText nvarchar 255
StockStatusLanguageValueDeliveryValue nvarchar 255
StockStatusLanguageValueDeliveryText nvarchar 255
StockStatusLanguageValueAutoId int 4

EcomStockLocation

Contains setup data for stock locations as defined in Settings -> Ecommerce -> Product catalog -> Stock location.

Field name Data type Length
StockLocationId int 4
StockLocationName nvarchar 255
StockLocationDescription nvarchar Max
StockLocationLanguageId nvarchar 50
StockSortOrder int 4
StockLocationGroupId bigint 8

EcomStockStatusLine

Links stock states from EcomStockStatusLanguageValue (StockStatusLinesId) to stock groups from EcomStockGroups (StockStatusLinesGroupId).

Field name Data type Length
StockStatusLinesId nvarchar 50
StockStatusLinesGroupId nvarchar 50
StockStatusLinesRate float 8
StockStatusLinesDefinition nvarchar 50
StockStatusLinesIcon nvarchar 255
StockStatusLineAutoId int 4

EcomStockUnit

Keeps track of stock quantity (StockUnitQuantity) in different units (StockUnitId) for products (StockUnitProductId, StockUnitVariantId) across various locations (StockUnitLocationId).

Field name Data type Length
StockUnitProductId nvarchar 30
StockUnitVariantId nvarchar 255
StockUnitId nvarchar 50
StockUnitQuantity float 8
StockUnitWeight float 8
StockUnitVolume float 8
StockUnitStockLocationId bigint 8
Id int 4
StockUnitDescription nvarchar 255

These are the detabase tables associated with the Gift Cards product type:

EcomGiftCard

Contains gift card data from Settings -> Ecom -> Orders - Gift Cards.

Field name Data type Length
GiftCardAutoId bigint 8
GiftCardId nvarchar 50
GiftCardName nvarchar Max
GiftCardCode nvarchar Max
GiftCardExpiryDate datetime 8
GiftCardCurrency nvarchar 10

EcomGiftCardTransaction

Logs the orders (GiftCardTransactionOrderId) a gift card (GiftCardTransactionGiftCardId) is used in.

Field name Data type Length
GiftCardTransactionId bigint 8
GiftCardTransactionAmount float 8
GiftCardTransactionOrderId nvarchar 50
GiftCardTransactionGiftCardId nvarchar 50
GiftCardTransactionDate datetime 8
GiftCardTransactionOrderLineId nvarchar 50

These are the database tables related to custom product fields:

EcomProductField

Contains product field definitions from Settings -> Ecom -> Product catalog -> Product Fields.

Field name Data type Length
ProductFieldId nvarchar 255
ProductFieldName nvarchar 255
ProductFieldSystemName nvarchar 255
ProductFieldTemplateName nvarchar 255
ProductFieldTypeId int 4
ProductFieldTypeName nvarchar 255
ProductFieldLocked bit 1
ProductFieldSort int 4
ProductFieldListPresentationType int 4
ProductFieldAutoId int 4
ProductFieldDoNotRender bit 1

EcomProductFieldTranslation

Contains translations of product fields (ProductFieldTranslationFieldID) to various languages (ProductFieldTranslationLanguageID).

Field name Data type Length
ProductFieldTranslationID int 4
ProductFieldTranslationFieldID nvarchar 255
ProductFieldTranslationLanguageID nvarchar 50
ProductFieldTranslationName nvarchar 255
ProductFieldTranslationDescription nvarchar Max

EcomFieldOption

Contains option values for product fields (EcomProductField) of type list. Linked on FieldsOptionFieldID.

Field name Data type Length
FieldOptionId nvarchar 255
FieldOptionFieldId nvarchar 255
FieldOptionName nvarchar 255
FieldOptionValue nvarchar 255
FieldOptionIsDefault bit 1
FieldOptionSort int 4
FieldOptionAutoId int 4

EcomFieldOptionTranslation

Contains translation data for Ecom field options (EcomFieldOption). Links field options (EcomFieldOptionTranslationOptionID) to language (EcomFieldOptionTranslationLanguageID).

Field name Data type Length
EcomFieldOptionTranslationID int 4
EcomFieldOptionTranslationOptionID nvarchar 255
EcomFieldOptionTranslationLanguageID nvarchar 50
EcomFieldOptionTranslationName nvarchar 255