ProductVariants
Stores variant-level data for products, including SKU, option values, price, and inventory management fields.
Table-Specific Information
Select
The connector uses the Shopify API to process WHERE clause conditions built with the following columns and operators. The connector processes other filters client-side within the connector.
- Id supports the '=, IN' comparison operators.
- ProductId supports the '=, !=' comparison operators.
- Barcode supports the '=, !=' comparison operators.
- Sku supports the '=, !=' comparison operators.
- Title supports the '=, !=' comparison operators.
- UpdatedAt supports the '=, !=, <, >, >=, <=' comparison operators.
- Taxable supports the '=, !=' comparison operators.
- DeliveryProfileId supports the '=, !=' comparison operators.
- LocationInventoryQuantity supports the '=, <, >, >=, <=' comparison operators.
For example, the following queries are processed server-side:
SELECT * FROM ProductVariants WHERE Id = 'Val1'
SELECT * FROM ProductVariants WHERE ProductId = 'Val1'
SELECT * FROM ProductVariants WHERE Barcode = 'Val1'
SELECT * FROM ProductVariants WHERE Sku = 'Val1'
SELECT * FROM ProductVariants WHERE Title = 'Val1'
SELECT * FROM ProductVariants WHERE UpdatedAt = '2023-01-01 11:10:00'
SELECT * FROM ProductVariants WHERE Taxable = true
SELECT * FROM ProductVariants WHERE DeliveryProfileId = 'Val1'
SELECT * FROM ProductVariants WHERE LocationInventoryQuantity = 123
Insert
The following columns can be used to create a new record:
ProductId, Barcode, Sku, Price, CompareAtPrice, TaxCode, Taxable, InventoryPolicy, InventoryItemUnitCostAmount, InventoryItemHarmonizedSystemCode, InventoryItemMeasurementWeightValue, InventoryItemMeasurementWeightUnit, InventoryItemRequiresShipping, InventoryItemTracked, InventoryItemCountryCodeOfOrigin, InventoryItemProvinceCodeOfOrigin
The following pseudo-columns can be used to create a new record:
MediaId, MediaSrc, InventoryQuantities (references InventoryItemInventoryLevelQuantities), OptionValues (references ProductOptionValues), Metafields (references Metafields), Strategy
InventoryItemInventoryLevelQuantities Temporary Table Columns
| Column Name | Type | Description |
| InventoryLevelLocationId | String | A globally-unique ID. |
| Quantity | Int | The quantity for the quantity name. |
ProductOptionValues Temporary Table Columns
| Column Name | Type | Description |
| ProductOptionId | String | A globally-unique ID. |
| ProductOptionName | String | The product option's name. |
| Id | String | A globally-unique ID. |
| Name | String | Value associated with an option. |
| LinkedMetafieldValue | String | Metafield value associated with an option. |
Metafields Temporary Table Columns
| Column Name | Type | Description |
| Id | String | The unique ID of the metafield. |
| Namespace | String | A container for a set of metafields. You need to define a custom namespace for your metafields to distinguish them from the metafields used by other apps. |
| Key | String | The name of the metafield. |
| Value | String | The information to be stored as metadata. |
| Type | String | The metafield's information type. |
Update
The following columns can be updated:
ProductId, Barcode, Sku, Price, CompareAtPrice, TaxCode, Taxable, InventoryPolicy, InventoryItemUnitCostAmount, InventoryItemHarmonizedSystemCode, InventoryItemMeasurementWeightValue, InventoryItemMeasurementWeightUnit, InventoryItemRequiresShipping, InventoryItemTracked, InventoryItemCountryCodeOfOrigin, InventoryItemProvinceCodeOfOrigin
The following pseudo-columns can be used to update a record:
MediaId, MediaSrc, OptionValues (references ProductOptionValues), Metafields (references Metafields), AllowPartialUpdates
ProductOptionValues Temporary Table Columns
| Column Name | Type | Description |
| ProductOptionId | String | A globally-unique ID. |
| ProductOptionName | String | The product option's name. |
| Id | String | A globally-unique ID. |
| Name | String | Value associated with an option. |
| LinkedMetafieldValue | String | Metafield value associated with an option. |
Metafields Temporary Table Columns
| Column Name | Type | Description |
| Id | String | The unique ID of the metafield. |
| Namespace | String | A container for a set of metafields. You need to define a custom namespace for your metafields to distinguish them from the metafields used by other apps. |
| Key | String | The name of the metafield. |
| Value | String | The information to be stored as metadata. |
| Type | String | The metafield's information type. |
Delete
You can delete entries by specifying the following columns:
Id, ProductId
Columns
| Name | Type | ReadOnly | References | Description |
| Id [KEY] | String | True |
A globally unique identifier for the product variant record. | |
| LegacyResourceId | Long | True |
The numeric identifier of the corresponding resource in the REST Admin API, used for backward compatibility. | |
| ProductId | String | False |
Products.Id |
The globally unique identifier of the parent product associated with this variant. |
| Position | Int | True |
The position of the variant in the product's variant list. The first position is numbered 1. | |
| DisplayName | String | True |
The display name of the variant, typically combining the product title with the variant's option values. | |
| Barcode | String | False |
The barcode, UPC, or ISBN value assigned to the product variant for identification and scanning purposes. | |
| Sku | String | False |
The stock keeping unit (SKU) that uniquely identifies the variant in the shop and fulfillment systems. Required for integration with fulfillment services. | |
| Title | String | True |
The title of the product variant, usually representing its distinguishing option values, such as 'Red / Large'. | |
| RequiresComponents | Bool | True |
Indicates whether this variant requires bundle components. If true, the variant can only be purchased as part of a bundle and is excluded from sales channels that don't support bundles. | |
| UpdatedAt | Datetime | True |
The timestamp of the most recent update made to the product variant. | |
| CreatedAt | Datetime | True |
The timestamp indicating when the variant was created in Shopify. | |
| SelectedOptions | String | True |
A list of the product option names and values that define this variant, such as 'Size: Medium, Color: Blue'. | |
| AvailableForSale | Bool | True |
Indicates whether the variant is currently available for sale on any channel. | |
| Price | Decimal | False |
The price of the product variant in the shop's base currency. | |
| CompareAtPrice | Decimal | False |
The original or reference price of the variant, displayed as a compare-at price to indicate a discount. | |
| TaxCode | String | False |
The tax classification code applied to the product variant for compliance and reporting. | |
| Taxable | Bool | False |
Indicates whether sales tax is charged when the product variant is sold. | |
| SellableOnlineQuantity | Int | True |
The total quantity of the variant available for online sales. This does not always represent total stock across all locations. | |
| SellingPlanGroupsCount | Int | True |
The number of selling plan groups (such as subscription plans) associated with this variant. | |
| SellingPlanGroupsCountPrecision | String | True |
Indicates the accuracy of the selling plan group count, such as 'exact' or 'estimated'. | |
| DeliveryProfileId | String | True |
The globally unique identifier of the delivery profile that defines how this variant is shipped. | |
| InventoryPolicy | String | False |
Specifies whether customers can purchase the variant when it is out of stock, following policies like 'deny' or 'continue'. | |
| InventoryQuantity | Int | True |
The total quantity of this variant available for sale across all managed locations. | |
| InventoryItemId | String | True |
The globally unique identifier of the inventory item linked to this variant. | |
| InventoryItemUnitCostAmount | Decimal | False |
The unit cost of the inventory item, representing the merchant's cost price. | |
| InventoryItemUnitCostCurrencyCode | String | True |
The ISO 4217 currency code for the inventory item's unit cost, such as USD or EUR. | |
| InventoryItemHarmonizedSystemCode | String | False |
The harmonized system (HS) code used for international customs classification of the item. | |
| InventoryItemMeasurementWeightValue | Double | False |
The numeric weight value of the item, based on the specified measurement unit. | |
| InventoryItemMeasurementWeightUnit | String | False |
The unit of measurement used for the weight value, such as 'kg' or 'oz'. | |
| InventoryItemRequiresShipping | Bool | False |
Indicates whether the inventory item requires shipping. Digital goods typically return false. | |
| InventoryItemTracked | Bool | False |
Indicates whether inventory tracking is enabled for this item. When true, stock levels are monitored by Shopify. | |
| InventoryItemCountryCodeOfOrigin | String | False |
The ISO 3166-1 alpha-2 country code of where the item originated from. | |
| InventoryItemProvinceCodeOfOrigin | String | False |
The ISO 3166-2 alpha-2 province code of where the item originated from. | |
| ImageId | String | True |
The globally unique identifier of the image associated with this variant. | |
| ImageAltText | String | True |
Alternative text describing the content or purpose of the variant image for accessibility or SEO. | |
| ImageHeight | Int | True |
The height of the variant image in pixels. Returns null if the image is not hosted by Shopify. | |
| ImageWidth | Int | True |
The width of the variant image in pixels. Returns null if the image is not hosted by Shopify. | |
| ImageUrl | String | True |
The URL where the variant image is hosted and accessible. | |
| UnitPriceMeasurementMeasuredType | String | True |
Specifies the type of measurement used for unit pricing, such as 'volume' or 'weight'. | |
| UnitPriceMeasurementQuantityUnit | String | True |
Defines the quantity unit for unit price measurement, such as 'ml', 'g', or 'oz'. | |
| UnitPriceMeasurementQuantityValue | Double | True |
The numeric value representing the measured quantity for the unit price calculation. | |
| UnitPriceMeasurementReferenceUnit | String | True |
The reference unit used to calculate the standardized unit price, such as '100ml' or '1kg'. | |
| UnitPriceMeasurementReferenceValue | Int | True |
The numeric value representing the reference amount for the unit price measurement. | |
| LocationInventoryQuantity | Int | True |
Filters or reports the available inventory quantity for the variant at specific locations. |
Pseudo-Columns
疑似カラムは、明示的にリストされているタイプのステートメントでのみ使用できるフィールドです。これらは標準的なカラムではなく、特定の操作のための追加機能を提供するものです。
| Name | Type | Description |
| MediaId | String |
The identifier of the media file (such as an image or video) to associate with this variant. |
| MediaSrc | String |
The URL of the media file associated with this variant. |
| InventoryQuantities | String |
A list of inventory quantities for this variant at each stocked location. The list size is limited by the merchant's plan. |
| OptionValues | String |
A list of option values defining this variant, representing the specific selections of the parent product's options. |
| Metafields | String |
Holds custom metadata fields used to extend the variant with additional attributes or integration data. |
| Strategy | String |
Defines how variant behavior is handled when new variants are created. 'DEFAULT' retains the single default variant; 'REMOVE_STANDALONE_VARIANT' deletes the default variant when new variants are generated. 使用できる値は次のとおりです。DEFAULT, REMOVE_STANDALONE_VARIANT |
| AllowPartialUpdates | Bool |
Determines whether valid variant updates are saved when some variants fail validation. If true, successful updates are applied while invalid ones are skipped; if false, all updates are rolled back on error. |