# Recent changes to Shopify’s platform --- ## Add PickupAddress for subscription contracts in customer API As of 2025-01, you can use the `PickupAddress` field in both `SubscriptionDeliveryMethodPickupOption` and `SubscriptionPickupOption` to query for a customer pickup address. Learn more about this field at [PickupAddress](https://shopify.dev/docs/api/customer/2025-01/objects/PickupAddress) *Published: November 25, 2024* Tags: API, New Link: https://shopify.dev/changelog/add-pickupaddress-for-subscription-contracts-in-customer-api --- ## New Billing Attempt Field: processingErrors As of 2025-01, you can now access billing error details on billing attempts via processingErrors. This will allow you to know which product variants are at fault for inventory errors. *Published: November 23, 2024* Tags: API, Update Link: https://shopify.dev/changelog/new-billing-attempt-field-processingerrors --- ## Increased limits for automatic function-based discounts We've expanded the capability of our discount management system by increasing the limit for automatic app-based discounts from 5 to 25. This update allows developers to create and manage a larger number of concurrent discount campaigns, offering more flexibility and targeted promotional strategies for merchants. The limit increase enables developers who are currently managing multiple promotions using Shopify Scripts to migrate to Shopify Functions. With the limit increase on Shopify Functions, each discount can be configured with its own start and end dates, giving merchants better precision in promotional timing and controls to govern which discounts can coexist on a cart. Learn more about discount combinations & limits in the [Shopify Dev Docs](https://shopify.dev/docs/apps/build/discounts/). *Published: November 21, 2024* Tags: Platform, Update Link: https://shopify.dev/changelog/increased-limits-for-automatic-function-based-discounts --- ## Search and browse apps using structured category details in the Shopify App Store Merchants can now search and browse apps based on a specific category feature in the Shopify App Store. Keep your apps updated with the most relevant category features and follow our [best practices](https://shopify.dev/docs/apps/launch/app-store-review/app-listing-categories#app-category-details). *Published: November 21, 2024* Tags: Shopify App Store, Update Link: https://shopify.dev/changelog/search-and-browse-apps-using-structured-category-details-in-the-shopify-app-store --- ## New dynamic source attributes available in the online store editor You can now use more dynamic source attributes in the online store editor. The following new attributes have been added: - **Product**: `url`, `featured_image`, `description` - **Collection**: `url`, `description` - **Article**: `author`, `comments_count`, `content`, `excerpt` - **Blog**: `content` Learn more about dynamic sources on [Shopify.dev](https://shopify.dev/docs/storefronts/themes/architecture/settings/dynamic-sources). *Published: November 18, 2024* Tags: Themes, Update Link: https://shopify.dev/changelog/new-dynamic-source-attributes-available-in-the-online-store-editor --- ## Strongly-matched apps will be highlighted in Shopify app store search results Apps that are **strongly-matched to brand term searches** will now be highlighted in search results. * When a merchant searches for a specific app (e.g. Shopify Inbox), we use organic search results and behavioral data to find the matching app. The high-match app is now prominently featured at the top of search results, above ads. * This treatment is automatically applied when your app listing is optimized and shows strong branded search match. * Make sure your app has a specific brand name and follow our [best practices](https://shopify.dev/docs/apps/launch/app-requirements-checklist#5-app-listing) around improving organic search. In addition, we’ve **removed the list of restricted keywords** previously implemented for search ads. * More keywords are now available for bidding, including previously restricted brand terms. * We are ensuring a more equitable advertising environment and to align Shopify's ad products with industry standards and the familiar patterns of other search ad platforms. *Published: November 18, 2024* Tags: Shopify App Store, Update Link: https://shopify.dev/changelog/strongly-matched-apps-will-be-highlighted-in-shopify-app-store-search-results --- ## Edit customer account menu including adding full-page extensions As a part of the [Customer Account Extensibility Developer Preview](https://shopify.dev/docs/apps/build/customer-accounts), you can now add, remove, or edit menu items in your customer account header menu. This update helps you better understand how merchants will be able to add any type of link to their customer accounts main menu. Included in this update: **All full-page extensions are now linkable** - Before this update, full-page extensions had to be explicitly declared as linkable. Now, all full-page extensions will be linkable by default and merchants will be prompted in the checkout & accounts editor to add a link to your full-page extension in the header menu. To take advantage of this change, deploy a new version of your extension. [To prevent merchants from linking to your page, declare your extension as not linkable](https://shopify.dev/docs/apps/build/customer-accounts/full-page-extensions#prevent-direct-linking). **Add any type of link** - Including links to default online store pages (products, collections, pages), customer account pages (order, profile and settings), customer account apps (full-page extensions), as well as any URL. By default, the menu will link to online store (Home), and Orders. **Use the same menu across online store & customer accounts** - Merchants will be able to use the same menu in their online store and customer accounts. **Navigation has moved** - You can now find the navigation tool in Admin > Content > Menus. It has been moved from its original location of Online Store > Navigation. You can learn more about full-page extensions [here](https://shopify.dev/docs/apps/build/customer-accounts/full-page-extensions). *Published: November 15, 2024* Tags: API, New Link: https://shopify.dev/changelog/edit-customer-account-menu-including-adding-full-page-extensions --- ## `manualPaymentGateway` field added to `orderTransaction` object As of GraphQL Admin API version 2025-01, the `manualPaymentGateway` field will be added to `orderTransaction` object. This field indicates if the transaction is processed by a manual payment gateway. *Published: November 15, 2024* Tags: API, Update Link: https://shopify.dev/changelog/manualpaymentgateway-field-added-to-ordertransaction-object --- ## Built for Shopify category-specific criteria are now available Category-specific criteria are now available. This feature gives developers more clarity on the [category-specific criteria](https://shopify.dev/docs/apps/launch/built-for-shopify/category-achievement-criteria) that apply to certain Built for Shopify apps. To view or update your app's category, check its distribution page in your Partner Dashboard. Your app's pre-selected category is based on its categorization in the Shopify App Store. You can update your category based on your app's functionality. Built for Shopify reviewers have final approval on all categorizations. Starting in January 2025, all Built for Shopify reviews will require accurate categorization. This applies to existing Built for Shopify apps, as well as new applications. *Published: November 14, 2024* Tags: Shopify App Store, Update Link: https://shopify.dev/changelog/built-for-shopify-category-specific-criteria-are-now-available --- ## Marketing Activity Extensions can be migrated to CLI As of Shopify CLI 3.70, existing Marketing Activity Extensions can be migrated from the Partner Dashboard to CLI. Learn more about how to import and migrate your Marketing Activity Extensions to CLI [here](https://shopify.dev/docs/apps/build/marketing-analytics/marketing-activities) *Published: November 12, 2024* Tags: Tools, Update Link: https://shopify.dev/changelog/marketing-activity-extensions-can-be-migrated-to-cli --- ## Conditionally disable gift cards in checkout using custom logic with the Payment Customization API As of Nov 12, 2024, you can use the HideOperation in the Payment Customization Function API to disable native gift card functionality and Shopify-integrated third-party gift card systems. Disabling gift cards hides the gift card field, removes any applied gift cards, and prevents any gift cards from being applied by UI extensions. The ability to disable the gift card field is available in the unstable API version and will be released to the stable 2025-01 API version. Learn more about [payment customizations](https://shopify.dev/docs/apps/build/checkout/payments). *Published: November 12, 2024* Tags: API, Update Link: https://shopify.dev/changelog/conditionally-disable-gift-cards-in-checkout-using-custom-logic-with-the-payment-customization-api --- ## Changes to our Font Library As part of a move towards open-source fonts, and in an effort to refine our font offerings, we have deprecated some fonts in our library. We’re also expanding the library of open-source fonts, with [32 new high quality typefaces](https://shopify.dev/docs/storefronts/themes/architecture/settings/fonts#available-fonts) available today. Action Required: For theme developers with published themes in the Shopify theme store using any of the [deprecated fonts](https://shopify.dev/docs/storefronts/themes/architecture/settings/fonts#deprecated-fonts), **please replace your default font for each preset by January 3, 2025.** We have provided recommended replacements in the developer documentation that maintain a similar style to the deprecated font, or you can choose any other available font from our library. Merchants who are currently using deprecated fonts will be prompted to make updates at a later date. *Published: November 12, 2024* Tags: Themes, Deprecation Link: https://shopify.dev/changelog/changes-to-our-font-library --- ## Create extension-only discount apps with Admin UI extensions As of today discount apps can use Admin UI extensions to embed discount configuration UI directly into the discount details page. Admin UI extensions are hosted by Shopify, which means you no longer need to build and maintain your own web infrastructure to host the UI that configures your discount function's metafields. Learn more by following this [tutorial on building a discount UI with UI extensions](https://shopify.dev/docs/apps/build/discounts/build-ui-extension?extension=javascript) and browse the available [Admin UI components here](https://shopify.dev/docs/api/admin-extensions/unstable/components). *Published: November 12, 2024* Tags: API, New Link: https://shopify.dev/changelog/create-extension-only-discount-apps-with-admin-ui-extensions --- ## Built for Shopify Fulfillment services assessments category specific criteria The Built for Shopify [category-specific criteria assessments](https://shopify.dev/docs/apps/launch/built-for-shopify/category-achievement-criteria#fulfillment-services-apps) are now available for Fulfillment service apps. You can review whether these requirements apply to your Built for Shopify app by checking its distribution page through your Partner Dashboard. These assessments apply to existing Built for Shopify apps, as well as new applications. *Published: November 07, 2024* Tags: Shopify App Store, Update Link: https://shopify.dev/changelog/built-for-shopify-fulfillment-services-assessments-category-specific-criteria --- ## POS Legacy Extensions Will Be Deprecated in February 2025 On February 28, 2025, POS Links, POS cart app extensions, and POS product recommendations will be deprecated. Developers and merchants will no longer be able to view or access these extensions in Shopify POS. We recommend you rebuild legacy extensions with [POS UI Extensions](https://shopify.dev/docs/api/pos-ui-extensions). Not only do POS UI Extensions have extensive capabilities today, but we’ll continue to grow these capabilities into the future. **POS Links:** * Recommendation: Rebuild using [POS UI Extensions](https://shopify.dev/docs/api/pos-ui-extensions) * Alternative: Embed your app within Shopify POS via the Partner Dashboard, Please note that merchants can manually add and access these from the smart grid. **Cart App Extensions and Product Recommendation Extensions:** * Recommendation: Rebuild using [POS UI Extensions](https://shopify.dev/docs/api/pos-ui-extensions). POS UI extensions provide necessary components and APIs to develop extensions that run natively on Shopify POS. If you have any questions, please contact [partner support](https://help.shopify.com/en/support/partners/org-select) for assistance. *Published: November 06, 2024* Tags: API, Deprecation Link: https://shopify.dev/changelog/pos-legacy-extensions-will-be-deprecated-in-february-2025 --- ## Remove `metafieldDelete` in favor of `metafieldsDelete` As of `2025-01` the `metafieldDelete` Admin API method is being removed. The `metafieldsDelete` method should be used instead. The former relies on the Metafield GID, while the latter takes an array of Metafield Identifiers composed of `ownerId`, `namspace`, and `key`. Note that the Metafield GID is not an option in `metafieldsDelete`. *Published: November 05, 2024* Tags: API, Deprecation Link: https://shopify.dev/changelog/remove-metafielddelete-in-favor-of-metafieldsdelete --- ## Updates to Shopify’s Standard Product Taxonomy - October 2024 As of the latest Shopify’s Standard Product Taxonomy version `2024-10`, you can now find additional categories, attributes and values across product areas such as Apparel & Accessories, Home & Garden, Sporting Goods, and more. The taxonomy is an evolving library that’s informed by user feedback and market insights, with each release aiming to help you more accurately classify your products. More details about this update can be found in the [release notes](https://github.com/Shopify/product-taxonomy/releases/tag/v2024-10). *Published: November 04, 2024* Tags: API, Update Link: https://shopify.dev/changelog/updates-to-shopify-s-standard-product-taxonomy-october-2024 --- ## GraphQL Over HTTP The handling of GraphQL requests via HTTP will evolve slightly as of `2025-01` API versions in accordance with the [GraphQL over HTTP spec](https://graphql.github.io/graphql-over-http). These changes refine how a request's `Content-Type` and `Accept` headers work, and offer additional granularity in response status codes. ## New response format A new `application/graphql-response+json` response format is available. Requests may select this format using the `Accept` header, for example: `Accept: application/graphql-response+json, application/json` The above favors receiving a `application/graphql-response+json` response by listing it first. This new format is the same as JSON aside from its status codes: ### `200 OK` * For `application/graphql-response+json`, this status indicates that the JSON payload was valid and that the submitted GraphQL document _attempted_ execution on the server. Note that the response payload may still contain errors encountered during execution along with partial data. * For `application/json`, this status only indicates that the JSON payload was valid. ### `400 Bad Request` * For `application/graphql-response+json`, this status indicates that the JSON payload was invalid, or that the submitted GraphQL parameters failed static validation and were not executed. * For `application/json`, this status only indicates that the JSON payload was invalid. ## Usage summary For requests to `2025-01` versions and after: * Use the `/graphql` endpoint. Using `/graphql.json` will automatically respond with `application/json` as it does now. * The request body must contain a [spec JSON encoding](https://graphql.github.io/graphql-over-http/draft/#sec-JSON-Encoding). * The `Content-Type` header _must_ specify `application/json`. The legacy `application/graphql` request format is no longer supported. Requests with no supported content type will receive a `415 Unsupported Media Type` response. * The `Accept` header now supports `application/graphql-response+json` and/or `application/json` response formats. Requests with no supported accept types will receive a `406 Not Acceptable` response. * Accepting `*/*` will default to a `application/graphql-response+json` response. These changes do NOT affect `unstable` versions at this time, or Storefront API. A breaking change announcement with migration timeline will be announced prior to any unstable transition. *Published: November 01, 2024* Tags: API, Update Link: https://shopify.dev/changelog/graphql-over-http --- ## Content type `application/graphql` is deprecated The `Content-Type: application/graphql` request format is deprecated and will no longer be accepted as of 2025-01 schema versions. As of `2025-01` schemas, all requests must specify `Content-Type: application/json` and post a [spec encoded body](https://graphql.github.io/graphql-over-http/draft/#sec-JSON-Encoding). See [GraphQL Over HTTP](https://shopify.dev/changelog/graphql-over-http) update for more details. *Published: November 01, 2024* Tags: API, Deprecation Link: https://shopify.dev/changelog/content-type-application-graphql-is-deprecated --- ## Removing `multiLocation` field from `ShopFeatures` As of the **2025-01** release of the Admin GraphQL API, the deprecated `multiLocation` field on [ShopFeatures](https://shopify.dev/docs/api/admin-graphql/latest/objects/ShopFeatures) will be removed. Use the [locationsCount](https://shopify.dev/docs/api/admin-graphql/latest/queries/locationsCount) query to determine how many locations a shop has. *Published: November 01, 2024* Tags: API, Deprecation Link: https://shopify.dev/changelog/removing-multilocation-field-from-shopfeatures --- ## Merchants can now view your app extension collections As of Oct 31, 2024, merchants can now manage their apps using the new Apps tab, which includes app extension collections. Note: If your app contains customer account UI extensions, these extensions won't be shown to merchants until customer account UI extensions is released in December. Learn more about the Apps tab in the [Shopify Help Center](https://help.shopify.com/en/manual/checkout-settings/customize-checkout-configurations/checkout-apps#apps-editor). *Published: October 31, 2024* Tags: Tools, Update Link: https://shopify.dev/changelog/merchants-can-now-view-your-app-extension-collections --- ## Metaobject and metaobject_list theme settings now available We've added two new theme setting types: [`metaobject`](https://shopify.dev/docs/storefronts/themes/architecture/settings/input-settings#metaobject) and [`metaobject_list`](https://shopify.dev/docs/storefronts/themes/architecture/settings/input-settings#metaobject_list) so theme and app developers can write sections and blocks that consume [metaobjects](https://shopify.dev/docs/apps/build/custom-data#about-metaobjects) of a specified type. For theme store themes, developers must only use [standard metaobject definitions](https://shopify.dev/docs/apps/build/custom-data/metaobjects/list-of-standard-definitions) since custom metaobject definitions are unique to a store. Learn more about the new `metaobject` and `metaobject_list` theme settings on [Shopify.dev](https://shopify.dev/docs/storefronts/themes/architecture/settings/input-settings#metaobject). *Published: October 30, 2024* Tags: Themes, New Link: https://shopify.dev/changelog/metaobject-and-metaobject_list-theme-settings-now-available --- ## Hydrogen October 2024 release Hydrogen v2024.10.0 is out today. The October 2024 Hydrogen release supports the 2024-10 Storefront API and contains several optimizations and bug fixes, including: * Cart `warnings` support ([#2572](https://github.com/Shopify/hydrogen/pull/2572)) * Product option updates ([#2538](https://github.com/Shopify/hydrogen/pull/2585)) * Hydrogen supports worker compatibility date ([#2380](https://github.com/Shopify/hydrogen/pull/2380)) * Shopify cookie banner no longer is the default set up in skeleton ([#2588](https://github.com/Shopify/hydrogen/pull/2588)) * Update `createWithCache` ([#2546](https://github.com/Shopify/hydrogen/pull/2546)) * Release stable sitemaps utility functions ([#2589](https://github.com/Shopify/hydrogen/pull/2589)) * Decode product variant encoding functions ([#2425](https://github.com/Shopify/hydrogen/pull/2425)) * Route warnings ([#2613](https://github.com/Shopify/hydrogen/pull/2613)) * Analytics fixes ([#2538](https://github.com/Shopify/hydrogen/pull/2538)) * Optimistic cart banner ([#2502](https://github.com/Shopify/hydrogen/pull/2502)) * Aside improvements ([#2503](https://github.com/Shopify/hydrogen/pull/2503)) * Use datalist for query suggestions ([#2506](https://github.com/Shopify/hydrogen/pull/2506)) * Remove unstable re-exports from remix-oxygen package ([#2551](https://github.com/Shopify/hydrogen/pull/2551)) * Update MiniOxygen to latest workerd version ([#2567](https://github.com/Shopify/hydrogen/pull/2567)) * `` local asset fix ([#2573](https://github.com/Shopify/hydrogen/pull/2573)) * Update `` to remove deprecated code usage for `priceV2` and `compareAtPriceV2`. Remove export for `getCustomerprivacy` ([#2601](https://github.com/Shopify/hydrogen/pull/2601)) * Remove deprecated `--worker` Shopify CLI flag ([#2603](https://github.com/Shopify/hydrogen/pull/2603)) * Allow generated codegen files to be placed anywhere in the directory ([#2600](https://github.com/Shopify/hydrogen/pull/2600)) * Add optional headers param for customer logout redirect ([#2602](https://github.com/Shopify/hydrogen/pull/2602)) Check out our full [Hydrogen October 2024 release blog post](https://hydrogen.shopify.dev/update/october-2024-release-storefront-api-2024-10) for more details. And please drop your comments, feedback, and suggestions in [GitHub Discussions](https://github.com/Shopify/hydrogen/discussions)! *Published: October 30, 2024* Tags: Platform, Update Link: https://shopify.dev/changelog/hydrogen-october-2024-release --- ## Change to metafield type handling in liquid Effectively immediately, metafields without a `type` value will return "string" instead of `blank`. For example, this check will no longer be true ```liquid {% if metafield.type == blank %} This will no longer render. {% endif %} ``` Instead, a value of `string` will be returned: ```liquid {% if metafield.type == 'string' %} This metafield is of type `string`. {% endif %} ``` *Published: October 28, 2024* Tags: Themes, Update Link: https://shopify.dev/changelog/change-to-metafield-type-handling-in-liquid --- ## Updates to Theme Information Access in Shopify **Action Required:** Developers currently using the BOOMR variables for theme identification and customization should begin transitioning to `window.Shopify.theme` properties. The BOOMR variables will be removed on 31/01/2025, after which `window.Shopify.theme.schema_name` and `window.Shopify.theme.schema_version` should be used exclusively. **Deprecation of BOOMR Script:** The BOOMR (Boomerang) JavaScript library was used for collecting Web Performance data on storefronts and it’s now been replaced with a leaner and more conformant library. Some theme and app developers had been relying on a few variables set by BOOMR. These variables include: - `BOOMR.themeName` - `BOOMR.themeVersion` These variables will continue to be available until 31st Janurary 2025, allowing developers to transition to the new method of accessing theme information. **Introduction of Enhanced Theme Information on window.Shopify.theme:** In response to developer feedback, we are enhancing the `window.Shopify.theme` object. Starting today, it will include two new properties: - `schema_name`: Reflects the `name` attribute from the theme's `settings_schema.json`. - `schema_version`: Reflects the `version` attribute from the theme's `settings_schema.json`. These additions aim to provide a standardized and reliable method for accessing theme information directly from the Shopify global object. *Published: October 28, 2024* Tags: Themes, Deprecation Link: https://shopify.dev/changelog/updates-to-theme-information-access-in-shopify --- ## Web pixels now support checkout error events We’re rolling out new standard events to web pixels that enable you to better understand the issues that buyers encounter in checkout. Merchants can now capture specific alerts seen by buyers, such as inline field validations and page-level alerts, and errors from Checkout UI Extensions. Any pixels subscribing to all standard events will automatically receive these new types. Learn more about the new events [here](https://shopify.dev/docs/api/web-pixels-api/standard-events). *Published: October 28, 2024* Tags: API, Update Link: https://shopify.dev/changelog/web-pixels-now-support-checkout-error-events --- ## Breaking Changes to CAPTCHA protection on Storefront forms From the week commencing 28th October 2024, the following changes to CAPTCHA protection will occur: **Classic Customer Accounts: Removal of the `/challenge` page for Login, Create Account and Reset Password flows** If hCaptcha is enabled in Admin for these forms, they will now require a valid hCaptcha token as part of the form submission, otherwise a 400 error response will be returned. Form submissions that fail the hCaptcha assessment will also return a 400 error response. The vast majority of form submissions already comply with this requirement, due to hCaptcha being automatically wired up to forms with the correct markup. More information is available in the [dev docs](https://shopify.dev/docs/storefronts/themes/trust-security/captcha#how-captcha-is-included-in-themes) **Full deprecation of reCAPTCHA on Storefront forms** The recent migration to hCaptcha on all Storefront forms is now complete. Applications or themes that have bespoke code that submits a reCAPTCHA v3 token (site key `6LeHG2ApAAAAAO4rPaDW-qVpPKPOBfjbCpzJB9ey`) will need to update to use hCaptcha. All form submissions containing a `recaptcha-v3-token` field will result in a 400 error response. Again, the vast majority of form submissions already comply with this requirement. If you application or theme invokes the reCAPTCHA api directly, ie via methods on `window.grecaptcha` then you will need to make changes. More information on wiring forms with hCaptcha using methods supported by Shopify is available in the [dev docs](https://shopify.dev/docs/storefronts/themes/trust-security/captcha#how-captcha-is-included-in-themes) *Published: October 28, 2024* Tags: Platform, Update Link: https://shopify.dev/changelog/breaking-changes-to-captcha-protection-on-storefront-forms --- ## Update to `fulfillmentHold.heldByApp` field from `fulfillmentHold.heldBy` field As of the `2025-01` API version, the `heldBy` string field on the `fulfillmentHold` GraphQL object will be replaced by the newly introduced [`heldByApp`](https://shopify.dev/docs/api/admin-graphql/unstable/objects/fulfillmentHold#field-heldbyapp) object field. This new field provides access to all attributes of the [App object](https://shopify.dev/docs/api/admin-graphql/2025-01/objects/app), unlike the deprecated `heldBy` field, which only indicated the app's title. If you currently query `fulfillmentHold.heldBy`, you should transition to querying `fulfillmentHold.heldByApp.title`. *Published: October 24, 2024* Tags: API, Update Link: https://shopify.dev/changelog/update-to-fulfillmenthold-heldbyapp-field-from-fulfillmenthold-heldby-field --- ## Limit for full-page extensions in customer accounts A full-page extension target (`customer-account.page.render` or `customer-account.order.page.render`) can no longer coexist with any other targets in the same extension. This change improves performance and provides a better merchant experience in the checkout and accounts editor. If your full-page extension is best used with other extensions in your app, create an [editor extension collection](https://shopify.dev/docs/apps/build/customer-accounts/editor-extension-collections) to encourage merchants to add all the extensions in the collection. This change will only impact the deployment of new extensions or new versions of existing extensions. Existing extensions will not be affected until a new version is deployed. *Published: October 21, 2024* Tags: API, Update Link: https://shopify.dev/changelog/limit-for-full-page-extensions-in-customer-accounts --- ## Built for Shopify update to grace period for programmatically assessed criteria The grace period for the following criteria have been [extended to 60 days from the current 30](https://shopify.dev/docs/apps/launch/built-for-shopify/regain-lost-status#criteria): * Minimizes impact on store speed * Minimizes impact on checkout speed * Admin performance: meets 75th percentile Web Vitals targets * Minimum number of installs * Minimum number of reviews * Minimum app rating The grace period for [Fulfillment services](https://shopify.dev/docs/apps/launch/built-for-shopify/category-achievement-criteria#fulfillment-services-apps) and [Carrier services](https://shopify.dev/docs/apps/launch/built-for-shopify/category-achievement-criteria#carrier-services-apps) criteria will also be set to 60 days when enforcement begins. *Published: October 17, 2024* Tags: Shopify App Store, Update Link: https://shopify.dev/changelog/built-for-shopify-update-to-grace-period-for-programmatically-assessed-criteria --- ## Storefront API Cart now supports removing Gift Cards As of version 2025-01 of the GraphQL Storefront API, Cart now supports removing Gift Cards by Id. After a cart has been created and a Gift Card applied - perform the [`cartGiftCardCodesRemove`](https://shopify.dev/docs/api/storefront/2025-01/mutations/cartGiftCardCodesRemove) mutation to remove one or more gift cards. *Published: October 16, 2024* Tags: API, New Link: https://shopify.dev/changelog/storefront-api-cart-now-supports-removing-gift-cards --- ## Shopify App Store apps require the latest App Bridge Starting October 15th, 2025, all Shopify App Store apps that appear in the Shopify admin must use the [latest Shopify App Bridge](https://shopify.dev/docs/api/app-bridge-library#getting-started) by adding the `app-bridge.js` script tag to the `` of each document of your app. *Published: October 15, 2024* Tags: Shopify App Store, New Link: https://shopify.dev/changelog/shopify-app-store-apps-require-the-latest-app-bridge --- ## API `StringConnection` includes `nodes` field As of API version `2025-01`, you can access `StringConnection.nodes` field shorthand to retrieve an array of strings directly instead of via `edges`. This connection type is now consistent with other connection types in the schema. Learn more about `StringConnection` on [GraphQL Admin API](https://shopify.dev/docs/api/admin-graphql/2025-01/connections/StringConnection) and [Storefront API](https://shopify.dev/docs/api/storefront/2025-01/connections/StringConnection). *Published: October 14, 2024* Tags: API, Update Link: https://shopify.dev/changelog/api-stringconnection-includes-nodes-field --- ## Deep link to editor extension collections You can now deep link to editor extension collections in the checkout and accounts editor. This is only available on development stores. When editor extension collections are released to merchants, you can start deep linking to editor extension collections from your app onboarding to streamline the merchant experience. Learn more on [Shopify.dev]( https://shopify.dev/docs/apps/build/customer-accounts/editor-extension-collections/editor-extension-collections-ux-guidelines#deep-linking-to-a-collection) *Published: October 11, 2024* Tags: Platform, New Link: https://shopify.dev/changelog/deep-link-to-editor-extension-collections --- ## Checkout UI extensions - Extensions in the reductions render before/after targets will now render in the header order summary on 1 page mobile checkouts As of October 11, 2024, checkout UI extensions targeting the `purchase.checkout.reductions.render-before` and `purchase.checkout.reductions.render-after` extension targets will now render in the order summary at the top of the page for one page mobile checkouts. Previously, extensions in these targets would only appear in the order summary at the bottom of the page. This will apply to checkout UI extensions on all API versions. For more details, please follow up in the [github issue in our public repo](https://github.com/Shopify/ui-extensions/issues/2218) *Published: October 11, 2024* Tags: API, Update Link: https://shopify.dev/changelog/checkout-ui-extensions-extensions-in-the-reductions-render-before-after-targets-will-now-render-in-the-header-order-summary-on-1-page-mobile-checkouts --- ## Shopify Payments Payout Summary GraphQL surfaces advance fees and advance gross fields As of GraphQL Admin API version **2024-10**, ShopifyPaymentsPayoutSummary now surfaces `ADVANCE_FEES` and `ADVANCE_GROSS` fields. Learn more about `ShopifyPaymentsPayoutSummary` on [Shopify.dev](https://shopify.dev/docs/api/admin-graphql/2024-07/objects/ShopifyPaymentsPayoutSummary). *Published: October 10, 2024* Tags: API, Update Link: https://shopify.dev/changelog/shopify-payments-payout-summary-graphql-surfaces-advance-fees-and-advance-gross-fields --- ## Shopify Function resource limits now scale with cart size Certain Shopify Function resource limits now scale proportionally to the number of line items in the cart. Starting at 200 line items, your Shopify Function runs will be able to use more resources than before. This change applies to all Shopify Function runs that include cart lines in their input query. Learn more about dynamic resource limits and how they're calculated for Shopify Functions on [Shopify.dev](https://shopify.dev/docs/api/functions#resource-limits). *Published: October 10, 2024* Tags: Platform, Update Link: https://shopify.dev/changelog/shopify-function-resource-limits-now-scale-with-cart-size --- ## Install Attributions in Partners Merchant Export The merchant export in Partners now provides an "Attribution" column that specifies installs that are attributable to Shopify App Store ad clicks. For more information on the Partners merchant export, [see here](https://shopify.dev/docs/apps/launch/distribution/track-app-usage#view-active-merchant-installs) *Published: October 09, 2024* Tags: Shopify App Store, Update Link: https://shopify.dev/changelog/install-attributions-in-partners-merchant-export --- ## Built for Shopify 2025 Admin performance and Carrier services criteria The 2025 versions of the admin performance and carrier services criteria are now displayed in the Partner Dashboard distribution page along with the rest of the Built for Shopify automated criteria. Carrier services criteria will only be visible to those using the related API. *Published: October 07, 2024* Tags: Shopify App Store, Update Link: https://shopify.dev/changelog/built-for-shopify-2025-admin-performance-and-carrier-services-criteria --- ## `lineItem` connection is no longer deprecated on `FulfillmentOrderLineItem` resource As of today, you can use the `lineItem` on `FulfillmentOrderLineItem` without planning for deprecation. This applies to all API versions. Learn more about `FulfillmentOrderLineItem.lineItem` on [Shopify.dev](https://shopify.dev/docs/api/admin-graphql/2024-07/objects/FulfillmentOrderLineItem#field-lineitem). *Published: October 07, 2024* Tags: API, Deprecation Link: https://shopify.dev/changelog/lineitem-connection-is-no-longer-deprecated-on-fulfillmentorderlineitem-resource --- ## Updated CalculateExchangeLineItemInput and CalculatedExchangeLineItem Variant nullability As of Admin GraphQL API `2025-01` version, `CalculateExchangeLineItemInput.variantId` and `CalculatedExchangeLineItem.variant` fields are nullable at schema level. This is in preparation of future feature changes. In the current state `CalculateExchangeLineItemInput.variantId` will still be validated via a returned error if not present. Learn more about [CalculateExchangeLineItemInput](https://shopify.dev/docs/api/admin-graphql/unstable/input-objects/CalculateExchangeLineItemInput) and [CalculatedExchangeLineItem](https://shopify.dev/docs/api/admin-graphql/unstable/objects/CalculatedExchangeLineItem). *Published: October 07, 2024* Tags: API, Update Link: https://shopify.dev/changelog/updated-calculateexchangelineiteminput-and-calculatedexchangelineitem-variant-nullability --- ## Add `accountOpenerName` to `shopifyPaymentsAccount` As of GraphQL Admin API version 2025-01, the `accountOpenerName` field will be added to `shopifyPaymentsAccount` *Published: October 04, 2024* Tags: API, New Link: https://shopify.dev/changelog/add-accountopenername-to-shopifypaymentsaccount --- ## Bulk query operation userErrors now includes code field As of version 2025-01, the Admin API bulk query operation `userErrors` GraphQL type will change to `BulkOperationUserError`. The new type includes the same fields as the old type, with the addition of a `code` field. *Published: October 02, 2024* Tags: API, Update Link: https://shopify.dev/changelog/bulk-query-operation-usererrors-now-includes-code-field --- ## Shopify Payments Balance Transaction GraphQL type supports advance and advance funding type As of GraphQL Admin API version **2024-10**, ShopifyPaymentsTransactionType now includes `ADVANCE` and `ADVANCE_FUNDING` type. Learn more about `ShopifyPaymentsTransactionType` on [Shopify.dev](https://shopify.dev/docs/api/admin-graphql/2024-10/enums/ShopifyPaymentsTransactionType). *Published: October 01, 2024* Tags: API, Update Link: https://shopify.dev/changelog/shopify-payments-balance-transaction-graphql-type-supports-advance-and-advance-funding-type --- ## Exposing Business Entity fields on Admin API As of GraphQL Admin API version **2024-10**, Business Entity attributes will be available for use as a GraphQL object and across relevant types. You will now be able to query for properties related to the Business Entities that are enabled on your shop and request for these fields on objects that can be associated to a Business Entity. Business Entity identifiers will also be available on the Order REST Admin API version **2024-10** as well as on webhook payloads. *Published: October 01, 2024* Tags: API, New Link: https://shopify.dev/changelog/exposing-business-entity-fields-on-admin-api --- ## Shopify Payments GraphQL Admin API supports querying a list of disputes As of GraphQL Admin API version **2024-10**, querying for all disputes for a given shop will be available for use as a GraphQL connection. Learn more about `ShopifyPaymentsDispute` on [Shopify.dev](https://shopify.dev/docs/api/admin-graphql/2024-07/objects/ShopifyPaymentsDispute) *Published: October 01, 2024* Tags: API, New Link: https://shopify.dev/changelog/shopify-payments-graphql-admin-api-supports-querying-a-list-of-disputes --- ## Added `variant_strategy` for `productOptionsCreate` In the version 2024-10 release of the Admin GraphQL API, the `productOptionsCreate` mutation will include a `variantStrategy` parameter, enhancing control over variant management when adding new product options. This new parameter allows for two strategies: * `LEAVE_AS_IS`: Maintains existing variants, updating them to include new option values without creating new variants as necessary. * `CREATE`: Generates new variants for all possible combinations of option values. This enhancement allows for more precise control over product variant configuration and inventory management. For more detailed information and examples, visit our [productOptionsCreate documentation](https://shopify.dev/docs/api/admin-graphql/2024-10/mutations/productOptionsCreate) on Shopify.dev. *Published: October 01, 2024* Tags: API, Update Link: https://shopify.dev/changelog/added-variant_strategy-for-productoptionscreate --- ## Adding `requiresComponents` field to `ProductVariantsBulkInput` As of the 2024-10 version of the GraphQL Admin API, the `requiresComponents` field available in `ProductVariantInput` has been added to `ProductVariantsBulkInput`. This field allows variants to be marked as bundles that require components in order to be sold. Learn more about `requiresComponents` and `ProductVariantsBulkInput` on [Shopify.dev](https://shopify.dev/docs/api/admin-graphql/unstable/input-objects/ProductVariantsBulkInput). *Published: October 01, 2024* Tags: API, New Link: https://shopify.dev/changelog/adding-requirescomponents-field-to-productvariantsbulkinput --- ## New `CollectionsCount` query in the GraphQL Admin API As of `2024-10` version, we are adding `CollectionsCount` query to the Admin GraphQL API. Learn more about [CollectionsCount](https://shopify.dev/docs/api/admin-graphql/2024-10/queries/CollectionsCount) on [Shopify.dev](https://shopify.dev/). *Published: October 01, 2024* Tags: API, New Link: https://shopify.dev/changelog/new-collectionscount-query-in-the-graphql-admin-api --- ## Metafield Definition Webhooks As of GraphQL Admin API Version 2024-10, you can subscribe to MetafieldDefinition changes under the webhook topics `metafield_definitions/create`, `metafield_definitions/update`, and `metafield_definitions/delete` *Published: October 01, 2024* Tags: API, New Link: https://shopify.dev/changelog/metafield-definition-webhooks ---