# Shopify Scripts are ending: Migrate to Function Junction

**Shopify Scripts is being retired on June 30, 2026.**

If you're a Shopify Plus merchant using Shopify Scripts to customize discounts, shipping, or payment logic, you'll need to migrate to Function Junction to maintain functionality.

**Function Junction** (also known as Shopify Functions) offers a more flexible and scalable way to customize your store’s checkout experience.

### **What is Function Junction?**

Function Junction is based on the [Functions API](https://shopify.dev/docs/api/functions) and makes it easy to migrate from Shopify Scripts. Instead of manually pasting Ruby scripts, you can install functions as part of an app. The app uses Shopify’s **WebAssembly platform**, which means:\
\
✔ **Faster performance** (under 5ms execution time)\
✔ **No timeout or CPU memory issues**\
✔ **Scalability for big sales events**

***

### **Migration deadline**

**The deadline to migrate away from Scripts is June 30, 2026.**\
\
After this date, Shopify Scripts will be retired. To avoid interruption, you need to migrate to Function Junction before then to avoid disruptions.

***

### **Scripts to migrate**

Shopify provides a **Scripts Customizations Report** that shows all your active scripts. To access it, do the following:

1. From your Shopify Admin, go to **Settings** > **Apps and sales channels**.
2. Click **Script Editor**.
3. In the banner, select **Replace Shopify Scripts**.
4. Review your report for customizations in:
   * Product Discounts
   * Shipping Rules
   * Payment Gateways

You can also export this report as a CSV.

***

### **4. Function Junction: Prebuilt apps vs. custom development**

Once you have your list of scripts, you have two migration options:

**1.** **Use prebuilt Function Junction templates**

* Function Junction has over 20 pre-built templates to help make the migration process easier.
* Install the app and configure it. There is no coding required!

**2.** **Build your own custom Function Junction solution**

* If no app meets your needs, developers can create custom functions.
* Unlike Scripts, Functions must be deployed via the Shopify Partner Dashboard.

***

### **What’s changing?**

Use this quick comparison table to understand what’s changing and how to plan your transition.

| Feature            | Shopify Scripts         | Function Junction          |
| ------------------ | ----------------------- | -------------------------- |
| **Execution Time** | Slower, Ruby-based      | Faster, WebAssembly-based  |
| **Customization**  | Manual Ruby scripts     | Apps & APIs                |
| **Performance**    | Can have timeouts       | Runs in <5ms               |
| **Scalability**    | Limited for flash sales | Supports large-scale sales |
| **Deployment**     | Copy-paste scripts      | Installed via apps         |

***

### **Current state: How Function Junction works with Shopify Scripts**

Until June 30, 2026, you can run Shopify Scripts and Function Junction together.&#x20;

However, they interact in specific ways:

* &#x20;**Line Item Scripts** run **before** Function Junction, meaning they **don’t see discounts** applied by Functions.
* **Shipping Scripts** run **after** Function Junction, but can only move or hide shipping options—not rename them.
* **Payment Scripts** run **after** Function Junction, and can’t modify renamed payment methods.

***

### **Next steps: Migrate to Function Junction**

Ready to migrate? Do the following:

1. Check your Shopify Scripts Customizations Report to see what needs to be replaced.
2. &#x20;Decide if you’ll use a Function Junction app or build a custom Function.
3. Test your Function Junction setup before deactivating old scripts.
4. Disable Shopify Scripts once everything is running smoothly.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://support.functionjunctionapp.com/getting-started/shopify-scripts-are-ending-migrate-to-function-junction.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
