2027-01: Release notes
The 2027-01 release focuses on discount, collection, market, metaobject, inventory, and tax app changes.
Several changes in this version require code updates, especially around automatic discount queries, collection metafield conditions, market currency settings, and tax app payloads. Review and adjust affected integrations before adopting 2027-01.
2027-01 is available as a release candidate for development testing until January 1, 2027, when it becomes stable:
- 2027-01RCStableUnsupported
Learn more about API versioning
| Stable version | Release date | Accessible until | Status |
|---|---|---|---|
| 2027-01 | January 1, 2027 | January 16, 2028 15:00 UTC | Release candidate |
Anchor to GraphQL Admin APIGraph QL Admin API
GraphQL Admin API changes remove deprecated discount, collection, and market currency APIs, and add packed product dimensions.
Anchor to Discounts and marketingDiscounts and marketing
Apps that read automatic discounts need to move to discountNodes.
The deprecated automaticDiscounts query is removed, along with the DiscountAutomaticConnection and DiscountAutomaticEdge types. Query discountNodes with a method:automatic filter instead, rather than the also-deprecated automaticDiscountNodes query.
Anchor to InventoryInventory
Inventory items can store packed dimensions for automatic package selection.
InventoryItemMeasurement.packedDimensions and InventoryItemMeasurementInput.packedDimensions let apps read and write an inventory item's packed length, width, height, and unit. Shopify uses these measurements to select the smallest saved package that fits eligible multi-item orders.
Anchor to MarketsMarkets
Apps that still call the removed market currency mutation need to use marketCreate and marketUpdate.
The marketCurrencySettingsUpdate mutation is removed, along with MarketCurrencySettingsUpdatePayload, MarketCurrencySettingsUserError, and MarketCurrencySettingsUserErrorCode. The mutation already fails on every call, so set currency settings with marketCreate and marketUpdate instead.
Anchor to MetaobjectsMetaobjects
Metaobject definitions drop obsolete admin access values.
The obsolete PRIVATE and PUBLIC_READ values are removed from the MetaobjectAdminAccess enum. The API never returns them, so remove references to these values from your queries, mutations, and generated types.
Anchor to Products and collectionsProducts and collections
Collection integrations that use integer metafield conditions need to move to metafieldInt.
The metafieldInteger collection source condition inputs and the CollectionSourceInclusionConditionMetafieldInteger types are removed. Use metafieldInt and CollectionSourceInclusionConditionMetafieldInt instead, and send integer metafield condition value fields as strings.
Anchor to Events & webhooksEvents & webhooks
Tax apps need to handle Global IDs in tax calculation requests and tax summary webhooks.
Third-party tax apps now receive Global IDs instead of numeric IDs for customers, companies, products, variants, line items, and other entities in tax calculation requests and tax summary webhook payloads. Update your parsing to handle the GID format.
Oct 1, 2026