Data and AI releases

548 this month · 176 companies

Shopify developer platform Release notes from Shopify

444 releases · 9 this month

Official notes RSS

`FulfillmentOrderDestination` now includes `provinceCode`

As of GraphQL Admin API version 2027-01 , the FulfillmentOrderDestination object has a provinceCode field . It returns the alphanumeric code of the destination's province or state, such as ON for Ontario, so apps can read the code directly instead of mapping the province name themselves.

Update
Source ↗

Exclusive > timestamp filters exclude the full second

As of API version 2026-10 , an exclusive lower bound ( > ) on a timestamp filter in the GraphQL Admin API search syntax excludes the full second. For example, created_at:>'2026-09-15T12:00:02Z' no longer returns an order created at 12:00:02.500 .

Update
Source ↗

Checkout MCP and Cart MCP now support UCP buyer consent

Checkout MCP and Cart MCP now support the UCP buyer consent extension ( dev.ucp.shopping.buyer_consent ) starting with UCP 2026-08-25 . Buyers can now make the same privacy and marketing choices in your agent that they'd make in a shop's own checkout, like opting in to email or SMS. Shops receive those choices with the cart, checkout, and order.

Update
Source ↗

Hydrogen 2026-10 is now available

The new Hydrogen is generally available today. Since the developer preview started in June, we've shipped seven releases based on feedback from developers using it. The big deal about the new Hydrogen is that it isn't a big deal: Hydrogen now works with any JavaScript framework.

GA
Source ↗

Add shopping and Shop Pay checkout to any agent with Shop MCP

Shop MCP lets your agent or app search Shopify Catalog, build carts, and complete Shop Pay checkout through a single MCP connection. It works with over 1 billion products in Shopify Catalog and doesn't require an API key for search. Nothing changes for existing Catalog API integrations, and no action is required.

Update
Source ↗

Catalog API now returns compare-at prices as `list_price`

The Catalog API now returns a merchant’s compare-at price as list_price on each product variant. Your app or agent can use list_price to tell when a product is marked down and by how much. The price field doesn’t change. No action is required. list_price is an optional field defined in the UCP catalog specification, version 2026-08-25 .

Pricing
2 releases →

POS UI extensions now return percentage values for percentage discounts

Shopify POS 11.15 corrects the value returned by Discount.amount for Percentage discounts to match the Cart API contract. Extensions that used this value as money need to update their logic. What changed A 25% discount on a $200 line item now returns amount: 25 . POS 11.14 and earlier returned amount: 50 , the monetary amount deducted.

Pricing
4 releases →

Discounts can now be included in Rollouts

Update your app to account for discount Rollouts Summary Admin GraphQL API version 2026-10 adds a read-only rollouts connection across Discount types. Apps that read discounts should use Discount.rollouts alongside existing discount fields to account for Rollout-driven schedules and buyer reach.

Pricing
18 releases →

Use app intents for your discount app

Apps that create new discount types using Shopify Functions can now register shopify/Discount app intents. This lets Sidekick launch an app’s create and edit flows and promote them in the disambiguation picker. Apps can register an intent using either of these targets: admin.app.intent.link navigates to an existing page in a React Router app.

Pricing
Source ↗

Move existing subscriptions to Shopify App Pricing

Apps that bill with the Billing API can now move their existing subscriptions to Shopify App Pricing by using the migration tool in the Partner Dashboard or new commands in Shopify CLI. Subscriptions move at the start of their next billing cycle, and merchants don’t need to re-approve charges.

Pricing
3 releases →

Sidekick can now invoke app intents without tools

Sidekick now surfaces app extensions that declare only intents , with no tools file. Previously an extension had to declare tools to be eligible for Sidekick, so an admin.app.intent.link or admin.app.intent.render extension that registered only an intent was skipped and Sidekick never suggested the app.

Update
2 releases →

Query SP Fee Details with the GraphQL Admin API

As of API version 2026-10, the GraphQL Admin API includes a feeDetails query for retrieving specialized fees charged to a shop. No action is required for existing apps. What changed The new feeDetails query returns a connection of FeeDetails objects. Each FeeDetails object includes: feeName and amount : The name of the fee and the amount charged.

Update
Source ↗

Polaris CDN 1.1 is now stable

Polaris Web Components 1.1 is now available on the stable Polaris CDN channels. This is the first minor release under the CDN's new semantic versioning model . The following URLs now serve Polaris 1.1 Apps using polaris.js or polaris-1.js receive the update automatically. No action is required.

Update
3 releases →

Unlimited private plans and target stores in Shopify App Pricing

Developers using Shopify App Pricing can now create unlimited private plans per app and add unlimited target stores to each plan, replacing the previous limits of 15 private plans and 20 stores per plan. No action is required to continue using existing plans. What changed A private plan is an app pricing plan available only to stores you select.

Pricing
2 releases →

New Pricing audit trail for contextual product variant prices

The GraphQL Admin API now includes the auditTrail field on ProductVariantContextualPricing in API version 2026-10 . Apps with the read_products access scope can use this field to inspect the ordered adjustments that Shopify applied to a contextual product variant price. Existing apps do not need to take action.

Pricing
5 releases →

Updates to Events payloads and subscription configuration

Starting today, we're updating Events payloads, trigger syntax, and delivery headers. Classic Webhook subscriptions are unaffected. What's changed fields_changed now describes how each path changed The flat array becomes an object containing three arrays: added , updated , and removed .

Update
Source ↗

Delivery options in Shopify Functions input now expose their metafields

Shopify Functions can now read metafields attached to delivery options in the cart. On API version 2026-10 , you can call metafield(namespace:, key:) on any option in cart.deliveryGroups.deliveryOptions . This affects apps that build Delivery Customization Functions and any other function whose input includes delivery options. No action is required.

Update
5 releases →

Discounts Allocator Function API developer preview has ended

The Discounts Allocator Function API, available only through the Discounts Allocator developer preview, has been removed and won’t be released. The developer preview is closed. Most developers don’t need to take action. The one exception is an app that still declares the purchase.discounts-allocator.run extension target.

Preview
Source ↗

Customer Address APIs now support countryCode

Starting with Customer Account API version 2026-10, customer address inputs and objects support countryCode . The existing territoryCode field is deprecated but remains fully supported, so current integrations continue working without interruption. Developers should migrate to countryCode when adopting API version 2026-10.

Update
2 releases →

Shopify storefronts now support UCP 2026-08-25

Shopify storefronts now advertise support for Universal Commerce Protocol (UCP) version 2026-08-25 in their discovery profiles at /.well-known/ucp . This update adds compatibility with the 2026-08-25 protocol release and doesn’t require any changes to your existing integrations.

Update
Source ↗

Hydrogen developer preview update: September 2, 2026

The Hydrogen developer preview adds new capabilities to the toolkit and extends the ways developers can build Shopify storefronts: Variant links: Links that name a variant, like the ones Shopify submits to a Google Shopping feed, now open on that variant instead of the product's default.

Preview
2 releases →

The Polaris CDN is adopting semantic versioning

Polaris Web Components loaded from the Shopify CDN are moving to semantic versioning. Most apps will continue receiving compatible improvements automatically, while developers can choose when to adopt breaking changes. Existing apps don’t need to take immediate action.

Update
Source ↗

More resilient refreshes for expiring offline access tokens

Expiring offline access token refreshes now retain the previously used refresh token until an app begins using its replacement. This rollout helps apps recover when a refresh response is lost or isn’t persisted. No migration is required, but apps should continue to store every refreshed token pair atomically.

Update
Source ↗

Build Shopify apps in PHP and Python with new official packages

Shopify releases official PHP and Python app packages Shopify now publishes official, open-source packages for building apps in PHP and Python. shopify/shopify-app-php on Packagist and shopifyapp on PyPI have reached version 1.0 . They provide framework-agnostic primitives for request verification, token exchange, and Admin GraphQL requests.

Oxygen is now available on trial plan stores

You can now deploy Hydrogen storefronts to Oxygen from trial plan stores . Previously, Oxygen hosting required a paid plan. Note that trial plan stores don't include public environments, so deployment URLs always require a store login. Learn more about supported plans .

Update
Source ↗

Script tags are deprecated and will stop running on March 1, 2027

Starting October 1, 2026, the scriptTagCreate and scriptTagUpdate mutations will return an user error, and the ScriptTag REST Admin API resource will reject POST and PUT . The deprecation applies to all API versions, including older ones, so pinning won't defer it. On March 1, 2027, Shopify will stop injecting script tags into storefronts.

Deprecation
Source ↗

App intents on `admin.app.intent.link` now open as a full-page navigation

When Sidekick invokes an app intent declared on the admin.app.intent.link extension target, the Shopify admin now navigates the merchant to your extension's url as a full page, matching how Shopify's own admin intents behave. Previously, the same intent always opened in an overlay on top of the page the merchant was already on.

Update
Source ↗

Hydrogen developer preview update: August 18, 2026

The Hydrogen developer preview adds new capabilities to the toolkit and extends the ways developers can build Shopify storefronts: Cart session attribution: Carts and Customer Account sessions stay in step, so signed-in shoppers reach checkout with their saved details instead of a guest flow.

Preview
Source ↗

WebMCP support for Liquid and Hydrogen storefronts

Online stores now expose WebMCP tools that AI agents can call. Agents can search your catalog, manage the shopper's cart, and go to checkout on the shopper's behalf, all in the tab they're looking at. The tools work through WebMCP , a proposed web standard that lets a page register tools with the browser.

Preview
2 releases →

Hydrogen developer preview update: July 30, 2026

The Hydrogen developer preview adds new capabilities to the toolkit and extends the ways developers can build Shopify storefronts: Vue bindings: Build your storefront in Vue with the same Hydrogen APIs you know from React, through the new @shopify/hydrogen/vue entrypoint.

Preview
2 releases →

Merchants now see partner details on collaborator requests

Collaborator access is built on trust. When a merchant approves a request, they're giving a partner access to a live store , and merchants need enough context to make that decision with confidence. Building on identity verification for partners , merchants now see details about your partner organization on every new collaborator request.

Update
4 releases →

Invalid metafield queries now return errors in the GraphQL Admin API

Starting in API version 2026-10, the GraphQL Admin API returns an error when a query filters by a metafield that isn't set up for filtering, instead of silently returning incorrect results. This is a breaking change. It affects apps that filter resources by metafield on version 2026-10 or later, and you'll need to update affected queries before you upgrade.

Update
Source ↗

Liquid templates can now compose pages with blocks and partials

The Liquid July ’26 developer preview introduces a simpler way to build theme pages. Page structure can live directly in a Liquid template, where developers and coding agents can read and edit everything in one place. The peview adds two Liquid tags: {% block %} renders a reusable theme block directly from a template.

Preview
3 releases →

Physical inventory feature preview

The physical inventory feature preview gives you early access to a new set of inventory APIs in the unstable version of the GraphQL Admin API. Enable it on a development store to build and test against the core primitives merchants use to organize a stockroom: bins, counts, and purchase orders.

Preview
Source ↗

Card deposit endpoint now requires mTLS certificate

Shopify's card-deposit endpoint now requires a Shopify-issued mTLS client certificate. Apps that store cardholder data with the customerPaymentMethodCreditCardCreate and customerPaymentMethodCreditCardUpdate GraphQL Admin API mutations must first deposit that data at Shopify's /sessions card-deposit endpoint to receive a session identifier.

Update
Source ↗

POS UI Extensions 2026-07 adds discount allocations to bundle components

Starting with POS UI Extensions API version 2026-07, product bundle components in cart line item data include discount allocation details. Apps can access component-level discount allocations from bundle components on a cart line item, for example: shopify.cartLineItem.components?.[0]?.discountAllocations The same LineItem shape is also used in Cart API...

Pricing
4 releases →
About and activity

APIs, apps and themes.

Releases per month
39Jun
42Jul
18Aug
35Sep
71Oct
9Nov
Official release-notes pages 3
Release-notes pageFeed
Shopify Changelog
changelog.shopify.com
None
Shopify POS version 11.0
changelog.shopify.com
None
The Spring '26 Edition is live
changelog.shopify.com
None