Shopify’s latest developer update introduces shopify/Discount app intents, a powerful way for discount apps that use Shopify Functions to surface their own create and edit experiences directly within the admin. This change means merchants can launch a custom discount flow without ever leaving the Shopify UI, and developers gain tighter integration with Sidekick and the disambiguation picker. Below we break down what’s new, who needs to pay attention, and the exact steps to take advantage of this capability.
What Changed: New Discount App Intents
The shopify/Discount intent now supports both create and edit actions for discount apps built with Shopify Functions. Apps register an intent via the shopify-intent.json meta‑schema, referencing the shopify/discount.json baseline schema. A matchValue on functionId ties each intent to a specific Function implementation, allowing a single app to expose multiple discount types. When a merchant clicks a discount link, Shopify either launches the app’s custom UI (via admin.app.intent.link or admin.app.intent.render) or falls back to a disambiguation picker if multiple intents match.
Who Is Affected: Developers vs. Merchants
The update targets apps that create new discount types using Shopify Functions. Existing discount apps that rely on Shopify’s default UI continue to work unchanged—no migration is required. For merchants, the change is transparent unless they install a Function‑backed discount app; in that case they’ll notice a smoother flow when creating or editing those discounts, staying within the app’s dedicated UI instead of the generic discount screen.
Why It Matters: Better Discount Creation & Editing
Merchants gain a consistent experience: whether they’re creating a new “Buy X Get Y” discount or editing an existing one, the app’s own UI can guide them through the specific fields and validation logic required by that Function. This reduces friction, eliminates the need to switch back to the generic discount UI, and lets developers showcase the unique value of their discount logic.
How to Implement: Registering App Intents
admin.app.intent.link – points to an existing React Router page in your admin app.admin.app.intent.render – renders a focused inline UI extension (requires API version 2026-04 or later).matchValue that matches the functionId of the Shopify Function handling the discount type.gid://shopify/Discount/...) so Shopify can open the correct discount record.Here’s a minimal shopify-intent.json example for a create flow using a React Router page:
{ "intent": "shopify/Discount", "target": "admin.app.intent.link", "matchValue": { "functionId": "gid://shopify/Function/123456" }, "url": "/discounts/custom-create" }
And an example for an inline edit flow (API 2026-04+):
{ "intent": "shopify/Discount", "target": "admin.app.intent.render", "matchValue": { "functionId": "gid://shopify/Function/123456" }, "schema": { "type": "object", "properties": { "discount_gid": { "type": "string" } } } }
Remember that each intent counts toward the per‑app intent limit, so register only the flows you truly need.
Action Checklist for Developers
admin.app.intent.link) or an inline extension (admin.app.intent.render).Conclusion & Next Steps
Shopify’s new discount app intents give developers a direct line to merchants’ discount workflows, reducing friction and increasing the perceived value of Function‑backed discounts. While existing apps need no immediate changes, taking advantage of intents positions your app for deeper Sidekick integration and a more polished merchant experience. Start by adding the intent registration to your next release, test in the web admin, and watch merchants enjoy a seamless, app‑driven discount journey.
Ready to boost your discount app’s visibility? Register your intent today and let Shopify’s Sidekick guide merchants straight to your custom flow.

