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.
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 |
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.
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.
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 |
---|---|
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. |
|
How to set up your environment for SuiteScript, SuiteScript governance, best practices and more. |
|
More about the NetSuite records available to you when using SuiteScript. |
|
More about all aspects of SuiteScript 2.0 and 2.1, including API introduction, script types, custom modules. |
|
Details about API objects and modules. |
|
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. |
|
|
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. |
|
|
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. |
|
The following image illustrates each layer of functionality included with Commerce websites.
Supported Browsers for Commerce Websites
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. |