Skip to the main content.

5 min read

Building Your SuiteScript 2.1 Migration Plan

Building Your SuiteScript 2.1 Migration Plan

A SuiteScript 2.1 migration plan documents every custom script in a NetSuite account, decides whether each one is migrated, retired, or replaced, and schedules the work before the 2028.2 release, when NetSuite’s published timeline calls for all new and existing scripts to use SuiteScript 2.1. A well-built plan spreads the work across several releases, gives the scripts behind order processing, pricing, and period close the most testing time, and prepares 2.0 and 2.x scripts before 2.1 becomes their default runtime in 2028.1.

Snapshot has worked as a NetSuite Alliance Partner for more than 12 years helping manufacturers and distributors build, maintain, and modernize NetSuite customizations.

 

Building Your NetSuite Script Inventory

NetSuite describes three ways to find affected scripts in its “Identifying Scripts That Are Not Using SuiteScript 2.1” help topic:

  • A quick review starts at Customization > Scripting > Scripts, filtered by each API version other than 2.1
  • A saved search that excludes scripts with an API Version of 2.1 and includes the API Version column gives your team a reusable list for the whole project
  • A SuiteAnalytics workbook can group scripts by API version, which helps separate SuiteScript 1.0 scripts from SuiteScript 2.0 scripts

Record the following for each script in your NetSuite script inventory, so every migration decision has appropriate business and technical context behind it:

  • Script type, such as user event, scheduled, map/reduce, client, or RESTlet
  • Deployments, and whether each one is active
  • Business process the script supports
  • Owner, by person or team
  • Connected systems that send or receive the script's data
  • Source, either custom-built or installed through a SuiteApp or bundle
  • Recent execution activity

Execution logs can show which scripts have run recently, but they only capture entries a script writes or errors it returns, and NetSuite keeps them for 30 days at most. A script that runs only at quarter-end, year-end, or during peak season, or a script that writes no log entries, won’t appear in the logs and can appear inactive. Confirm each script with its process owner before marking it for retirement.

 

Should You Migrate, Retire, or Replace Each Script?

NetSuite outlines three options for each legacy script:

  1. Test a 2.0 or 2.x script on the 2.1 runtime and update its annotation
  2. Convert the script to SuiteScript 2.1
  3. Retire it if it is inactive, obsolete, or duplicated

Every SuiteScript 1.0 script that stays in use must be converted to SuiteScript 2.1.

Some scripts can also be replaced with a SuiteFlow workflow. NetSuite’s “Know When to Use SuiteFlow and SuiteScript” topic lists actions both tools can perform, including field validation, default values, required fields, email notifications, record creation, and approval routing. It also describes SuiteScript capabilities such as custom interfaces, programmatically run saved searches, custom dashboard portlets, and batch processes. RESTlet integrations also require SuiteScript.

NetSuite recommends SuiteFlow if you don’t have any JavaScript developers on staff, and SuiteFlow does not require programming knowledge, so moving a script’s logic into a workflow lets your team maintain it without writing code. Scripts that depend on SuiteScript capabilities stay in code and follow the migration path for their version.

Evaluating inactive, obsolete, and duplicated scripts for retirement, and workflow-eligible scripts for replacement, before setting migration priorities shrinks the conversion workload, since only the scripts that stay in code need to move to SuiteScript 2.1. Workflow replacements still need to be built and tested before the original scripts are retired, so include them in your batch schedule.

 

Prioritizing Scripts by Business Risk and Effort

NetSuite's guidance points in two directions on where to start:

  • Its transition guide recommends starting with scripts that support critical business processes and giving higher priority to high-usage scripts, integrations, and scripts with complex dependencies.
  • Its migration path topic recommends starting with low-complexity scripts so your team learns the process before updating complex customizations.

A phased plan follows both recommendations: a small pilot batch of low-complexity scripts first, then business-critical scripts with the most testing time before their target releases. Your SuiteScript 2.1 migration plan can follow five phases:

Phase What It Includes Purpose Target Timing
Pilot batch
A few low-complexity scripts
Establish the conversion, testing, and deployment process on low-risk work
Start now
Business-critical scripts
Scripts tied to order processing, pricing, fulfillment, and period close
Give the highest-impact scripts the most testing cycles
1.0 scripts before 2027.1, when support narrows to critical issues; 2.0 and 2.x scripts before 2028.1, when they run as 2.1 by default
Integration scripts
RESTlets and scripts that exchange data with connected systems
Test changes together with the systems that send or receive the data
Same release window as the business processes they support

Remaining scripts

Lower-impact custom scripts
Complete the inventory once critical scripts are stable
2.0 and 2.x scripts tested before 2028.1, when they run as 2.1 by default; 1.0 scripts before 2028.2
SuiteApp and bundle scripts
Scripts installed through a SuiteApp or bundle
Ask each vendor for its SuiteScript 2.1 plan and test vendor updates in a sandbox
2.0 and 2.x scripts tested before 2028.1, when they run as 2.1 by default; all vendor scripts on 2.1 before 2028.2

Sequencing and Staffing the Migration

Group scripts into batches by business process, such as order-to-cash or procure-to-pay, so your team knows which process to check when a test fails. Schedule batches around peak seasons, period close, and NetSuite’s release dates, and test each batch in a sandbox before deployment. Our post on NetSuite sandbox strategy covers refresh timing and test environments.

Assign administrators to inventory and test coordination, developers to conversion and code changes, and process owners to user acceptance testing against real transactions.

Overall effort depends on how many scripts require conversion to SuiteScript 2.1. Some SuiteScript 1.0 functions have no direct SuiteScript 2.1 equivalent and might require a different implementation, and client scripts need separate testing time because the account-level 2.1 preferences apply only to server scripts. Plan extra testing and discovery time for integration scripts and undocumented scripts.

NetSuite’s SuiteScript Upgrade skill, part of NetSuite’s SuiteCloud Agent Skills, can accelerate migration. It analyzes, converts, explains, and validates SuiteScript 1.0, 2.0, and 2.x scripts for 2.1, and developers run it in an AI coding assistant against their script files. NetSuite requires reviewing all generated code before production use and still calls for functional testing in a sandbox before deployment, so plan testing time for converted scripts.

 

Starting Your SuiteScript 2.1 Migration Plan

Starting a SuiteScript 2.1 migration plan now gives your team several releases before 2028.1 to inventory, decide, and test, and time to finish remaining changes ahead of 2028.2.

With more than 12 years as a NetSuite Alliance Partner, Snapshot helps manufacturers and distributors inventory, migrate, and test their NetSuite customizations. Our SuiteScript 2.1 migration services page covers how we support each phase. You can get started today with a free NetSuite assessment.

Talk to a NetSuite Expert About Your Script Migration
 

Frequently Asked Questions: SuiteScript 2.1 Migration Planning

 

NetSuite Sandbox Strategy for Administrators

NetSuite Sandbox Strategy for Administrators

A poorly managed sandbox creates production risk. Here is how to build a NetSuite sandbox strategy that keeps deployments clean. Talk to an expert.

Read More
NetSuite Data Migration Preparation and Best Practices

NetSuite Data Migration Preparation and Best Practices

Poor data preparation is one of the leading causes of NetSuite migration failure. Here is what to audit, clean, and map before you go live.

Read More
NetSuite Migration Checklist: From Planning to Go-Live

NetSuite Migration Checklist: From Planning to Go-Live

Use this NetSuite migration checklist to track progress across every phase of your implementation. See what needs to happen before you go live.

Read More