The pos.app.ready.data target now runs for the entire POS session, allowing extensions to observe POS events and execute background logic without rendering UI. Use shopify.addEventListener() to subscribe to events like transactioncomplete, cashtrackingsessionstart, and cashtrackingsessioncomplete.
Developer Changelog
Shopify Partners can now complete identity verification before requesting collaborator access to merchant stores. Verification through Stripe (requiring government ID and selfie or liveness check) is optional today but will become mandatory in the coming weeks for users sending new collaborator requests.
Public plan limit increased to 8 per app (from 4) and private plan limit to 15 (from 10). No-charge plan testing now available: app reviewers can select any existing plan during review, development stores can install and subscribe at no cost, and plans can be marked free for partner testing. The App Events API now accepts negative and fractional values for event usage adjustments and credits.
Starting with POS UI extensions API version 2026-07, FixedAmount line item discounts passed to setLineItemDiscount and bulkSetLineItemDiscounts must represent a per-unit discount instead of a total line discount. Apps adopting 2026-07 must divide the total discount by line item quantity before calling these methods.
Server-side endpoints for Flow actions now receive requests even when the payload matches an older version of the action's configuration, instead of failing validation. Your endpoint can handle schema differences by applying defaults, ignoring legacy fields, or rejecting unsafe payloads.
Shopify Flow now resolves an action's runtime_url on every execution instead of hard-coding it into the workflow at activation time. When a runtime_url changes and the app is redeployed, the new URL is automatically used by existing workflows on their next run without requiring merchants to re-save them.
Policy 1.3 further clarifies enforcement on the existing ban against fake, untrusted, and incentivized reviews in the App Store. Developers incentivizing reviews may face review removal, app demotion or delisting, or Partner account termination; the platform is adjusting its logic to unpublish reviews that do not meet trust standards, which may be republished automatically once they do.
The deprecated Customer.lastIncompleteCheckout field and its associated Checkout type subtree are removed from the Customer Account API in version 2026-10. Apps querying this field must remove those selections and migrate to Storefront API cart flows or Customer.orders instead.
Apps using Admin GraphQL 2026-07 can now work with Markets configured using country-subdivision regions such as states and provinces. Use MarketRegionSubdivision as the stable region type and read sub-region membership through market.conditions.regionsCondition.regions; the deprecated market.regions field may omit subdivision regions. Sub-region support is currently limited to shipping; other configurations including Discounts, Catalogs, and Theme contextualization will return validation errors if attempted.
As of API version 2026-10, the OrderDisplayFulfillmentStatus enum returns a new value, FULFILLMENT_NOT_REQUIRED, for orders with no items remaining to fulfill—such as fully cancelled or fully refunded orders. Previously these returned UNFULFILLED. Apps that exhaustively map enum values or filter by UNFULFILLED status need to handle the new value when adopting 2026-10.
The useBuyerJourneyIntercept hook and block_progress capability are deprecated as of version 2026-07 and will be removed in a future version. Migrate business rule enforcement to cart and checkout validation Functions (server-side, apply across all checkout surfaces), or migrate discount code rejection logic to the discount Function API.
New Features
Market-driven shipping moves merchant-owned shipping configuration out of delivery profiles and into Markets. Merchants will attach shipping options directly to each market, and then vary rates by product and location conditions within a single option. This makes checkout rate…
As of the 2026-07 API version, draft order deposit fields are available in the GraphQL Admin API and Customer Account API.
As of API version 2026-07, the BusinessEntity type in the GraphQL Admin API includes a new legalEntityId field. This field returns the stable Central Legal Entity ID from Shopify's Organizations Platform, giving Partners a consistent identifier for the same legal entity…
As of GraphQL Customer Account API version 2026-07, draft orders now expose discount applications.
The isCumulative argument to the marketingEngagementCreate mutation is being deprecated, defaulting to false. Please update your integration to send non-cumulative engagements, as needed. Existing activities that have been sending cumulative metrics can migrate to…

