POS UI extensions can now run without network access
POS UI extensions can now continue running even when a merchant’s device loses network access. This feature ensures uninterrupted service during connectivity issues. It is especially beneficial for merchants in environments with unreliable internet, such as pop-up shops, outdoor markets, or large retail spaces.
Also shipped Mar 17, 2026Shopify in March 2026 →
Grafana Assistant in Slack is now generally available
Grafana Assistant arrives in Slack and lets you troubleshoot while on the go and with your colleagues in real-time. Grafana Assistant in Slack allows you to access the data and knowledge in Grafana Assistant in Slack. Ask about your traces, metrics, the latest deployment and how to fix high p99 latency in your search service.
Skills in Grafana Assistant are now generally available
Skills are now generally available for all Grafana Assistant users. Skills let you write runbooks, workflows, hints and context guides so that the Assistant can drill down even better in your stack. You can also associate slash commands with Skills so that /my-skill brings up your Skill and the Assistant works through it specifically.
Nova-3 Model Update
🌏 Nova-3 now supports the following new languages and language codes: Chinese (Cantonese, Traditional): zh-HK Thai: th , th-TH 🚀 Also releasing improved Nova-3 models for the following languages: Bengali ( bn ) Marathi ( mr ) Tamil ( ta ) Telugu ( te ) Access these models by setting model="nova-3" and the relevant language code in your request.
Agents, Workers - @cloudflare/codemode v0.2.1: MCP barrel export, zero-dependency main entry point, and custom sandbox modules
The latest releases of @cloudflare/codemode ↗ add a new MCP barrel export, remove ai and zod as required peer dependencies from the main entry point, and give you more control over the sandbox.
AI Gateway - Log AI Gateway request metadata without storing payloads
AI Gateway now supports the cf-aig-collect-log-payload header, which controls whether request and response bodies are stored in logs. By default, this header is set to true and payloads are stored alongside metadata.
More from Shopify developer platformEvery Shopify developer platform release →
`inventoryTransferDelete` adds `INVALID_STATE` error code for transfers with in-progress product import
Starting in version 2026-07, the inventoryTransferDelete mutation will return a new error code: INVALID_STATE . This error will be returned when a client attempts to delete an inventory transfer while a product import related to that transfer is in progress.
Making `fieldDefinitions` optional in `metaobjectDefinitionCreate`
Starting in April 2026, the fieldDefinitions input argument for the metaobjectDefinitionCreate mutation will become optional. This change means that developers will no longer be required to specify fieldDefinitions when creating a new metaobject definition.
Adding `createdAt` and `updatedAt` fields to `MetaobjectDefinition` objects
The createdAt and updatedAt fields will become available on MetaobjectDefinition objects in API version 2026-04
New rejection reason codes in Payments Apps API
The Payments Apps API now provides more granular decline reason codes for rejected payment sessions. Multiple new rejection codes have been added to the PaymentSessionStateRejectedReason enum alongside a new source field, giving payments apps more standardized, actionable ways to communicate to merchants why a payment was declined.
New payment decline codes added to `OrderTransactionErrorCode` enum
We're adding new error codes to the OrderTransactionErrorCode enum to provide more granular detail about the transaction failure. You can use this more detailed response to improve customer interactions. What's new These error codes enable precise identification of transaction issues: | Error Code | Description | |
Expiring offline access tokens required for new public apps as of April 1, 2026
We're updating how public apps handle offline access tokens to enhance merchant data protection. Starting April 1, 2026, all new public apps must request and use expiring offline access tokens .
Process refunds only through the original payment processor – Requirement update
We've updated requirement 1.1.15 for Shopify App Store apps. Apps must now process refunds only through the original payment processor. Previously, apps were prohibited from offering methods for processing refunds outside of the original payment processor.
Admin intents now support Settings
We're excited to announce that admin intents now support Settings. This new feature allows apps to direct merchants straight to specific Settings pages within the Shopify admin. What's new? Previously, directing merchants to a specific Settings page required deep links or manual navigation instructions.