The Platform Shifted Under Every Developer's Feet
If you built a Shopify app in 2023 and have not touched it since, it is running on deprecated infrastructure. Shopify's 2024-2026 development cycle was the most aggressive platform evolution in the company's history — checkout extensibility replaced checkout.liquid, Functions replaced Scripts, MCP opened AI agent access, and Sidekick started generating apps from natural language prompts.
For developers building Shopify custom apps in 2026, these changes are not optional upgrades. They are the new foundation. Understanding what changed, what is deprecated, and what is newly possible determines whether your apps remain competitive or become obsolete. According to Shopify's developer changelog, the API v2026-04 release alone introduced metaobject access in Functions, billing address validation in checkout, and several new extension targets.
This guide covers every significant change affecting custom app development — from the extension framework and Functions system to the MCP protocol and Sidekick app generation. Whether you are building apps for the Shopify App Store or custom apps for specific merchants, the Shopify development landscape in 2026 demands new skills and new architectural patterns.
The Extension Framework: How Apps Integrate Now
The biggest architectural shift in Shopify app development is the move from theme modification to extensions. Apps no longer inject code directly into merchant themes — they use structured extension points that Shopify controls.
Theme App Extensions
Theme app extensions replaced the old model where apps modified theme code directly (adding Liquid snippets, injecting JavaScript, editing theme files). Now apps create self-contained blocks that merchants add through the theme editor, just like any other section or block.
Why this matters for developers:
- Your app UI lives in its own sandbox — it cannot break the merchant's theme
- Merchants install and configure your app blocks without touching code
- Theme updates do not break your app's integration
- Your app works across any OS 2.0 theme without theme-specific code
Implementation: Create a theme-app-extension in your app's extensions directory. Define blocks with Liquid templates, CSS, and JavaScript that render within the merchant's theme context.
Checkout UI Extensions
For Shopify Plus merchants, checkout UI extensions let apps add custom functionality at defined points in the checkout flow. According to Shopify's checkout extensions documentation, these extension points include product information, shipping, payment, order summary, and Shop Pay.
| Extension Point | What You Can Build | Availability |
|---|---|---|
| purchase.checkout.block.render | Custom fields, upsells, trust badges | Plus only |
| purchase.checkout.shipping-option-list.render-after | Shipping option enhancements | Plus only |
| purchase.thank-you.block.render | Post-purchase offers, surveys | All plans |
| customer-account.order-status.block.render | Order status customization | All plans |
Key constraint: Checkout UI extensions run in a sandboxed environment with limited API access. You cannot use browser APIs freely — Shopify provides a specific set of UI components (Text, Banner, TextField, Select, etc.) that you compose into your extension UI. This ensures performance and security but limits design flexibility.
Admin Extensions and Action Extensions
Admin extensions add custom UI to the Shopify admin — product detail pages, order pages, and the admin navigation. Action extensions trigger workflows from admin pages.
These are built with Shopify's Remote UI framework and React components from the @shopify/ui-extensions-react package. They render inside the admin as embedded panels, modals, or full pages.
Shopify Functions: Server-Side Logic at the Edge

Functions are Shopify's replacement for Scripts and the extension model for injecting custom business logic into Shopify's server-side infrastructure. Every app that handles discounts, payment customization, delivery customization, cart transforms, or checkout validation now uses Functions.
What Functions Replace
| Legacy System | Replacement | Deadline |
|---|---|---|
| Shopify Scripts (Ruby) | Shopify Functions (JS/Rust → Wasm) | June 30, 2026 |
| checkout.liquid | Checkout UI Extensions | August 28, 2025 (Plus) |
| Additional Scripts (tracking) | Web Pixel API | Already deprecated |
Functions Architecture in 2026
Functions compile to WebAssembly and execute on Shopify's edge infrastructure in under 5ms. The developer writes logic in JavaScript or Rust, Shopify compiles it to Wasm, and it runs inline during checkout — no network round trips to your app server.
API v2026-04 improvements:
- Functions can now access metaobject entries through input queries — enabling structured data like tiered pricing tables, bundle configurations, and regional pricing rules
- Billing address and PO number validation in Cart/Checkout Functions — enabling compliance checks without separate UI extensions
- Extended instruction budgets for complex discount calculations
For a hands-on tutorial building your first Function, see our Shopify Functions tutorial. For the language decision between JavaScript and Rust, our Liquid 2026 guide covers the performance trade-offs in detail.
Function Extension Points
| Extension Point | Purpose | Common Use Cases |
|---|---|---|
| Product discounts | Apply discounts to cart line items | Volume pricing, BOGO, customer-specific pricing |
| Order discounts | Apply discounts to the order subtotal | Spend thresholds, loyalty discounts |
| Shipping discounts | Apply discounts to shipping rates | Free shipping over $X, member shipping |
| Cart transforms | Modify cart structure | Bundle merging, free gift insertion |
| Checkout validation | Block or allow checkout | Minimum order value, restricted combinations |
| Delivery customization | Modify shipping options | Rename, reorder, hide delivery methods |
| Payment customization | Modify payment methods | Hide, rename, reorder payment options |
| Order routing | Control fulfillment location | Geographic routing, priority fulfillment |
MCP: Building AI-Ready Apps
The Model Context Protocol is Shopify's most forward-looking platform addition. MCP creates standardized interfaces for AI agents to interact with Shopify stores — and apps that expose MCP endpoints position themselves for the AI commerce era.
What MCP Means for App Developers
According to Shopify's MCP documentation, MCP servers are API endpoints that provide structured access to commerce data for AI consumption. Shopify has shipped four MCP servers:
- Storefront MCP — product discovery, cart operations, checkout guidance
- Dev MCP — development assistance and code generation
- Customer Account MCP — customer data and order history
- Checkout MCP — checkout customization and payment management
Building MCP-Compatible Apps
Apps can extend Shopify's MCP servers by exposing their own functionality through MCP endpoints. This means an AI agent interacting with a merchant's store can also interact with your app's features.
Practical example: A loyalty app that exposes MCP endpoints lets AI shopping assistants check a customer's points balance, apply rewards, and suggest products that would earn bonus points — all through natural language interaction.
This is nascent but strategically important. Apps that build MCP compatibility now will have first-mover advantage as AI shopping agents become mainstream. For the full MCP architecture, see our Storefront API MCP guide.
Sidekick App Generation: The Developer's New Competitor

Shopify Sidekick can now generate custom admin apps from natural language descriptions. A merchant says "build me an app that shows customers who haven't ordered in 90 days" and Sidekick creates a functional admin app — no developer required.
What Sidekick-Generated Apps Can Do
- Display data dashboards within the Shopify admin
- Generate reports using ShopifyQL
- Create simple workflow tools
- Build inventory management utilities
- Construct customer analysis tools
What Sidekick-Generated Apps Cannot Do
- Run on the storefront (admin-only)
- Access external APIs or third-party services
- Handle complex business logic requiring conditional workflows
- Integrate with payment providers or shipping carriers
- Process data outside the Shopify ecosystem
Impact on Professional App Development
Sidekick app generation replaces the simplest tier of custom app development — basic admin tools and dashboards that a developer might charge $500-$2,000 to build. It does not replace complex, multi-system apps that require external integrations, storefront rendering, or sophisticated business logic.
The strategic response: Focus your custom app development on capabilities that Sidekick cannot deliver — external system integrations, storefront experiences, complex Functions, and multi-extension-point apps. The commoditized end of the market (simple admin tools) is being automated. The sophisticated end is growing. For more on what Sidekick can do, see our Sidekick prompts guide.
The Modern Shopify App Architecture
A well-architected Shopify app in 2026 combines multiple extension types into a cohesive product. Here is the reference architecture for a modern app.
Architecture Layers
┌─────────────────────────────────────────┐
│ Merchant's Store │
├─────────────────────────────────────────┤
│ Theme App Extension │
│ (Liquid blocks, storefront UI) │
├─────────────────────────────────────────┤
│ Checkout UI Extension (Plus only) │
│ (Custom checkout components) │
├─────────────────────────────────────────┤
│ Shopify Functions (Wasm) │
│ (Discounts, validation, routing) │
├─────────────────────────────────────────┤
│ Admin Extension │
│ (Configuration UI, dashboards) │
├─────────────────────────────────────────┤
│ Web Pixel Extension │
│ (Analytics, tracking, attribution) │
├─────────────────────────────────────────┤
│ App Backend (your server) │
│ (API, webhooks, data processing) │
├─────────────────────────────────────────┤
│ MCP Endpoints (optional) │
│ (AI agent interaction layer) │
└─────────────────────────────────────────┘Technology Stack for 2026
| Layer | Recommended Stack |
|---|---|
| App framework | Remix (Shopify's default), Next.js, or Rails |
| UI components | Polaris (admin), Remote UI (extensions) |
| API client | @shopify/shopify-api (Node.js) or shopify_api (Ruby) |
| Functions language | JavaScript (prototyping), Rust (production, performance) |
| Database | Any — PostgreSQL, MySQL, Redis for sessions |
| Hosting | Heroku, Fly.io, Railway, or self-hosted |
| Authentication | Shopify OAuth (handled by CLI scaffolding) |
Scaffolding a New App
# Create a new app with the Shopify CLI
npm init @shopify/app@latest
# Generate a Function extension
shopify app generate extension --type product_discounts --name my-discount
# Generate a theme app extension
shopify app generate extension --type theme_app_extension --name my-block
# Generate a checkout UI extension (Plus only)
shopify app generate extension --type checkout_ui --name my-checkout
# Deploy everything
shopify app deployThe Shopify CLI handles scaffolding, local development, tunnel management, and deployment. For a complete app creation walkthrough, see our guide on how to create a Shopify app from scratch.
API Changes You Need to Know

Shopify's API evolves quarterly with versioned releases. Each version is supported for 12 months, then deprecated. Staying current prevents broken functionality and ensures access to new features.
Key API v2026-04 Changes
| Change | Impact | Action Required |
|---|---|---|
| Metaobject access in Functions | Functions can query structured data | Update Function input queries |
| Billing address validation | Checkout Functions can validate addresses | New extension point available |
| PO number field in checkout | B2B checkout enhancement | New field in checkout extensions |
| GraphQL subscription improvements | Better webhook-like real-time data | Migration path from REST webhooks |
| Customer segmentation API | Programmatic access to customer segments | New API endpoint for targeting |
API Versioning Strategy
- Always develop against the latest stable version (currently
2026-04) - Test against the release candidate of the next version 30 days before release
- Never use an unstable version in production
- Set up version deprecation alerts — Shopify notifies developers 9 months before a version is removed
REST to GraphQL Migration
Shopify is actively migrating toward GraphQL as the primary API surface. While REST endpoints remain supported, new features increasingly launch GraphQL-only. If your app still uses REST for core operations, plan a GraphQL migration:
- Use the GraphQL Admin API for all new features
- Migrate high-traffic REST endpoints to GraphQL for rate limit benefits
- GraphQL mutations can batch multiple operations in a single request
- GraphQL queries return only the data you request — reducing payload size and improving performance
App Store Submission and Review Changes
If you are building for the Shopify App Store (public apps), the submission and review process has tightened significantly.
Current App Review Requirements
| Requirement | Details |
|---|---|
| Performance | App must not degrade storefront speed by more than 100ms |
| Security | OAuth best practices, no hardcoded secrets, HTTPS everywhere |
| Privacy | Clear data usage disclosure, GDPR compliance |
| Accessibility | Extension UIs must meet WCAG 2.1 Level AA |
| Extension use | Must use theme app extensions (no theme code modification) |
| Functions | Must use Functions for discount/payment/shipping logic (no Scripts) |
| Support | Documented support channel, response time commitment |
| Onboarding | Clear setup instructions, in-app guidance |
"Built for Shopify" Badge
The "Built for Shopify" badge is the highest trust signal an app can earn. Requirements include using the latest extension framework, passing performance benchmarks, maintaining high merchant satisfaction ratings, and providing responsive support. Apps with this badge receive preferential placement in App Store search results.
Common Mistakes in 2026 Shopify App Development

Still modifying theme code directly. Apps that inject Liquid snippets or modify theme files are rejected from the App Store and create maintenance nightmares for merchants. Use theme app extensions exclusively.
Building Functions in JavaScript for production apps. JavaScript Functions work but consume significantly more of the instruction budget than Rust equivalents. For App Store apps that run across thousands of stores with varying cart complexity, Rust provides the performance headroom that prevents timeout failures.
Ignoring the 5ms Function execution limit. Complex Functions with large input queries, nested loops, or excessive data processing will timeout silently — the discount simply does not apply, with no error shown to the customer. Profile your Functions locally before deploying.
Not testing checkout extensions on Plus stores. Checkout UI extensions render only on Plus stores. If you are building an app with checkout components, you need a Plus development store for testing — standard development stores will not render your extensions.
Building admin-only tools that Sidekick can replicate. Simple dashboards and data display apps are increasingly commoditized by Sidekick app generation. Focus your development effort on capabilities that require external integrations, storefront rendering, or complex business logic.
Neglecting API versioning. Shopify deprecates API versions after 12 months. Apps that hard-code a specific version and never update will break. Implement version-aware API calls and test against upcoming versions during their release candidate phase.
Not considering MCP compatibility. AI commerce is growing. Apps that expose MCP endpoints let AI agents interact with their functionality — creating new distribution and usage channels that traditional apps cannot access.
Build for Where Shopify Is Going
Shopify custom app development in 2026 rewards developers who build on the current extension framework while keeping an eye on AI-driven commerce. The platform's direction is clear: sandboxed extensions over theme modifications, server-side Functions over client-side scripts, structured MCP endpoints over scraping, and AI-generated tools for simple use cases while professional developers handle the complex ones.
The developers thriving in this ecosystem:
- Master the extension framework — theme, checkout, admin, and web pixel extensions
- Build production Functions in Rust — the performance advantage compounds at scale
- Explore MCP compatibility — early movers capture the AI commerce opportunity
- Focus on complexity — build apps that Sidekick cannot generate
- Stay current on APIs — quarterly version updates require ongoing attention
Connect with other developers navigating these changes in the Talk Shop dev community. What aspect of the 2026 platform changes has been the most challenging for your development workflow?

About Talk Shop
The Talk Shop team — insights from our community of Shopify developers, merchants, and experts.
Related Insights
The ecommerce newsletter that's actually useful.
Daily trends, teardowns, and tactics from the top 1% of ecommerce brands. Delivered every morning.
