Skip to content
parallel

Shopify Scripts deprecation and the move to Functions

Shopify Scripts deprecation dates are set. Editing ends on the 15th of April and Scripts stop on the 30th of June 2026. How to move your logic to Functions.

Integrations

Matthew Collins, the 19th of March 2026

Most Plus stores we open have at least one Script nobody fully remembers. A tiered discount written for a launch three years ago. A rule that hides a delivery option for heavy items. A payment method that disappears for trade buyers. It works, so nobody touches it.

That comfort has an end date. Shopify has confirmed that Scripts can't be edited or published from the 15th of April 2026. Every Script stops running on the 30th of June 2026. Shopify Functions replaces the discount, shipping and payment logic Scripts used to handle. If your checkout relies on a Script, the time to move is now.

What did Shopify announce?

The changelog entry sets out two dates.

  • The 15th of April 2026. Editing and publishing Shopify Scripts is no longer possible.
  • The 30th of June 2026. All Shopify Scripts stop running.

Shopify recommends reviewing your customisations with the Shopify Scripts customisations report in the admin. The report shows what can move to Shopify Functions or to public apps. Shopify also links a Help Centre guide on transitioning to Functions.

The first date is the one to watch. After the 15th of April, you can't fix or adjust a Script, even if a promotion needs it. You're running on whatever is live that day.

Which stores does this affect?

Scripts are a Shopify Plus feature, so this is a Plus problem. But it touches almost every Plus store that has been live for a while.

On the stores we look after, Scripts usually do one of three jobs.

  • Discounts. Buy more, save more. Free gifts over a threshold. Bundle pricing. Staff or member pricing.
  • Shipping. Hiding, renaming or reordering delivery options based on the basket, the address or the customer.
  • Payments. Hiding a payment method for certain customers, basket values or countries.

B2B stores lean on these more than most. Trade buyers often see different payment options and delivery rules to retail customers. If a Script is quietly doing that work, replace it before the 30th of June. Otherwise trade orders start behaving like retail ones.

How do you move from Scripts to Functions?

We treat it as a small integration project. The code is rarely the hard part. Knowing exactly what each Script does is.

  1. Run the customisations report. It gives you the list of Scripts and what Shopify thinks can replace them.
  2. Write each Script down in plain English. "Trade customers don't see PayPal." "Orders over 20kg can't choose next day." If nobody can explain one, read the code before you decide it doesn't matter.
  3. Decide the right home for each rule. Some are now native Shopify settings. Some are well served by a public app. Some need a custom Function.
  4. Build and test the replacements away from the live checkout. Test the edge cases, such as mixed baskets, discount codes on top of automatic offers, and trade and retail customers.
  5. Plan the switch. Turn on the Function, turn off the Script, then check real orders for the first few days.

Leave space before the 30th of June. Once Scripts stop, any rule that hasn't been replaced simply stops applying. A customer won't see a warning. They'll just miss a discount or see a delivery option they shouldn't.

Custom Function or public app?

Shopify offers both routes, and both are sensible.

A public app is right when the rule is common. Tiered discounts, gift with purchase and simple shipping rules are well covered. You get a maintained product and a settings screen your team can use.

A custom Function is right when the rule is yours alone. Trade-specific payment logic, pricing tied to account data or unusual delivery rules often fall here. It's built for your store and doesn't depend on someone else's roadmap.

We wrote a longer guide on choosing between a custom Shopify app and a public app. The same thinking applies here.

Functions also open up logic Scripts never had. For B2B on Plus, the Payment Customisation Function can now send risky trade orders to review before they're confirmed. A Scripts migration is a good moment to ask whether rules like that belong in your checkout too.

Related changes worth knowing

This isn't the only platform change asking Plus stores to move. Since the 1st of January 2026, new custom apps can't be created in the Shopify admin. They're built in the Dev Dashboard instead. Our note on the legacy custom apps deadline explains what that means for existing apps.

If you're building Functions as custom apps, it helps to know where their activity is logged. Our guide to Shopify custom app logs covers what to monitor once they're running.

Where parallel helps

We scope, build and test Scripts replacements as part of our apps and integrations work. We read the existing Scripts and write down the rules. Then we choose between native settings, apps and custom Functions, and switch over without a gap in checkout logic.

If you'd rather keep this inside a monthly rhythm, our Shopify support packages cover exactly this kind of platform change. Releases on Accelerate are tested on staging first.

The 15th of April is close. Book a call and we'll go through your Scripts with you before the editing window closes.

Tell us where you are stuck.

The messier the commerce problem, the more useful we are. Book a call or send the brief.