What Resources Do I Need?

The following topics describe the resources and skills you need to customize Commerce websites. Review the information to ensure you are aware of the requirements and supporting resources as you plan and implement your themes and extensions.

Note:

To build or customize a SuiteCommerce or SuiteCommerce Advanced (SCA) site, you must have a NetSuite account and have SuiteCommerce or SCA and associated bundles provisioned.

Required Skills

The following skills are needed to develop themes and extensions. The level of experience required depends on the complexity of the changes you want to make and the extent of the features you want to introduce.

Website Customization

Skill

Technologies

Theme

General web development technologies

HTML, Sass/CSS, and Handlebars.js

Extension

General web development technologies

HTML, Sass/CSS, JavaScript, Typescript, REST APIs, model-view libraries (Backbone.js), Node.js/node package manager (npm), and AJAX

NetSuite technologies

Records, SuiteScript 1.0 and 2.0, services, and searches

Note:

Commerce website setup and maintenance do not require technical skills and can be completed using NetSuite as described in the Store Front Getting Started topics. Some Commerce website design and layout can be customized using the Site Management Tools (SMT), which do not require programming skills. For more information, see Site Management Tools Overview. When deciding whether to customize your Commerce website, review Configure Instead of Customize to be sure you understand all capabilities that are built into SuiteCommerce.

Developer Tool Requirements

SuiteCommerce and SCA include the following tools to help you develop Commerce website customizations:

  • Theme developer tools

  • Extension developer tools

These tools are essential for several reasons, including:

  • They create the local workspace and file structure that are necessary to ensure your theme or extension is compatible with NetSuite.

  • They enable you to create, update, and maintain your theme or extension throughout the development lifecycle.

To use the theme and extension developer tools, you need to have the following resources installed in your local environment:

  • Node.js JavaScript runtime environment and all of its components, including the Node Package Manager (NPM)

  • Gulp.js JavaScript toolkit

For more information about these tools, see Choose a Tool.

Note:

If you are developing or customizing an SCA site, the SCA developer tools are also available and they require the same resources as the theme and extension developer tools. However, you should not need to use the SCA developer tools unless you are customizing a site that implements the Kilimanjaro release of SCA or earlier or you need to customize Javascript, SuiteScript, or Configuration objects that are not accessible via the Extensibility API. See Choose a Tool for more information.

Supported Scripts, Languages, and APIs

You can use standard web development scripts and languages when customizing SuiteCommerce sites, including HTML, CSS, Sass, Handlebars.js, JavaScript, TypeScript, and AJAX. In addition, you need to use NetSuite technologies, like the SuiteScript scripting language, when developing extensions for SuiteCommerce sites.

Note:

To ensure compatibility with SEO Page Generator, the JavaScript for your customizations must be valid ECMAScript 5.1. See the ECMAScript 5.1 Edition Language Specification for more information.

SuiteScript is NetSuite’s proprietary scripting language that provides custom objects and methods you can use with JavaScript. The SuiteScript API plays an important role in Commerce site cutomizations because it enables you to access data stored in NetSuite records. You can also use SuiteScript to store data in NetSuite. To learn more about SuiteScript, see the following topics:

See topic

To learn

SuiteScript Overview

About the differences between SuiteScript versions, including 1.0, 2.0, and 2.1, and to access topics that explain more about what you can do with SuiteScript like using SuiteScript with NetSuite records.

Note:

SuiteScript 2.1 is not currently supported for Commerce website development. SuiteScript 2.x, 2.0, and 1.0 are supported.

SuiteScript Developer Guide

How to set up your environment for SuiteScript, SuiteScript governance, best practices and more.

SuiteScript Records Guide

More about the NetSuite records available to you when using SuiteScript.

SuiteScript 2.x

More about all aspects of SuiteScript 2.0 and 2.1, including API introduction, script types, custom modules.

SuiteScript 2.x API Reference

Details about API objects and modules.

Commerce Migration to SuiteScript 2.0

More about the migration of Commerce website source code to SuiteScript 2.0.

In addition to the SuiteScript API, you can use the following APIs when developing extensions:

API

Description

Can be used with

For more information, see

Extensibility API

Provides classes and methods that enable you to access routers, models, and views in the SuiteCommerce/SCA applications so that you can customize behavior without making changes to the core application code. For example, the Extensibility API enables you to subscribe to events, create views, and add child views.

Using the Extensibility API ensures future updates to the SuiteCommerce/SuiteCommerce Advanced applications do not adversely affect your extensions.

  • SuiteCommerce

  • Aconcagua release of SCA and later

Commerce API

Exposes shopping objects and methods that you can use to develop Commerce website customizations. For example, with Commerce API methods, you can access customers and orders within your shopping sessions.

  • SuiteCommerce

  • All releases of SCA

Item Search API

If you have configured item search settings for your site, you can use the Items Search API to build facet filtering and keyword search on item data.

This API supports searching, sorting, faceting, and pagination of item data. Note that API response data can be affected by the search settings you have configured. For example, items returned by the API can be filtered by the facets you define in the search index of your search settings.

Note:

SuiteCommerce MyAccount solutions do not use Item Search API.

  • SuiteCommerce

  • All releases of SCA

The following image illustrates each layer of functionality included with Commerce websites.

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   

Supported Browsers for Commerce Websites

Important:

This topic only describes browser support for Commerce websites, which is different from the browser support in NetSuite. See Supported Browsers for NetSuite for details.

Commerce websites are supported in the following browsers and operating systems:

Browser

Platform

Google Chrome 95 and later

Windows 8.x

Windows 7

iOS 13 and later

Android

Mac OS 10.15 and later

Microsoft Edge (Chromium-based)

Windows 10

Windows 8.x

Windows 7

Mozilla Firefox 95 and later

Windows 10

Windows 8.x

Windows 7

Windows Vista

Mac OS 10.15 and later

Safari 13.1 and later

Mac OS 10.15 and later

iOS 13 and later

Note the following browser limitations:

  • Access to PayPal Payment Systems — PayPal requires Transport Security Layer (TLS) 1.2 for all HTTPS connections. If a site user attempts to access PayPal payment systems using a browser that does not have TLS 1.2 enabled, the requested PayPal page does not load. To fix this issue, users should use a browser that supports TLS 1.2 and has TLS 1.2 enabled in browser settings.

  • Internet Explorer 11 and Earlier Not Supported

    • SuiteCommerce — As of the 2022.1 release and later, SuiteCommerce website implementations no longer support the use of Internet Explorer 11 (IE 11) and earlier.

    • SuiteCommerce MyAccount — As of the 2022.1 release and later, SuiteCommerce MyAccount website implementations no longer support the use of Internet IE 11 and earlier.

    • SuiteCommerce Advanced (SCA) — Previous versions of SCA continue to support IE 11, but IE 11 is not supported for SCA version 2022.1 and later.

Additional Resources

Additional resources are available to support your efforts to customize Commerce websites, including:

Resource

Description

Developer Portal

The SuiteCommerce Developers Portal provides supplemental resources you can explore after setting up the developer tools and mastering the basics of theme and extension development.

Resources include sample customizations, new customization ideas, best practices, and design and coding tips to speed up your work.

Training

The following courses are available and should be beneficial to developers who are new to Commerce website configuration and development. Note that you may need to pay additional fees for training, depending on your agreement with NetSuite.

Related Topics

What Can I Customize?
Benefits of the Extension Framework
Commerce Migration to SuiteScript 2.0
What is the Development Life Cycle?
Choose a Tool

General Notices