--- title: Product Variant Field Cleanup - Shopify developer changelog description: Shopify’s developer changelog documents all changes to Shopify’s platform. Find the latest news and learn about new platform opportunities. source_url: html: https://shopify.dev/changelog/product-variant-field-cleanup md: https://shopify.dev/changelog/product-variant-field-cleanup.md --- [Back to Developer changelog](https://shopify.dev/changelog) July 1, 2024 Tags: * Action Required * Admin GraphQL API * 2024-07 # Product Variant Field Cleanup As of GraphQL Admin API version 2024-07, various fields on Product Variants that are duplicates of the linked Inventory Item will be removed from the Product Variant model, input types, and webhooks, as well as restrictions to ### GraphQL Fields In general the fields removed (and their replacement) are: * `fulfillmentService`: The fulfillment service is now defined by where the item is stocked, and the fulfillment services that own those locations. * `harmonizedSystemCode`: This is replaced by the `harmonizedSystemCode` field of the inventory item. * `inventoryManagement`: This is replaced by the `tracked` field from the inventory item. Inventory management information is more clearly defined with both the `tracked` and `fulfillmentService` fields on the inventory item. * `requiresShipping`: This is replaced by the `requiresShipping` field of the inventory item. * `sku`: This field will continue to be returned on the Product Variant model, but is not directly editable. Rather the field will just proxy the `sku` field from the inventory item. * `weight` and `weightUnit`: These fields are replaced by the weight type in `InventoryItem.measurement.weight`. More specifically, these fields are kept or removed: * From `ProductVariantInput`: `fulfillmentServiceId`, `harmonizedSystemCode`, `inventoryManagement`, `requiresShipping`, `sku`, `weight`, and `weightUnit` are all removed. * From `ProductVariantsBulkInput`: `fulfillmentServiceId`, `harmonizedSystemCode`, `requiresShipping`, `sku`, `weight`, and `weightUnit` are all removed. * From `ProductVariantSetInput`: `harmonizedSystemCode`, `requiresShipping`, `weight`, and `weightUnit` are all removed. `sku` is kept. * From `ProductVariant` return type: `fulfillmentService`, `harmonizedSystemCode`, `inventoryManagement`, `requiresShipping`, `weight`, and `weightUnit` are all removed. `sku` is kept. ### Metafields As part of this work, you'll no longer be able to set the `harmonized_system_code` metafield under the `global` namespace for Product Variants. This was an alternative way of updating the `harmonized_system_code` of a variant, but since variants are no longer going to have the `harmonized_system_code` field, the metafield is being removed. ### Webhooks The Product Variant webhooks are also seeing some fields removed, namely: * `fulfillment_service` * `inventory_management` * `grams` * `weight` * `weight_unit` * `requires_shipping`