This topic explains how to update SuiteCommerce themes and extensions that are part of a SuiteApp.
Before You Begin
Before releasing an updated SuiteCommerce theme or extension, be aware of the following best practices:
Business users can choose whether or not to activate an updated theme or extension. Therefore, always develop your theme and extension updates to be backwards compatible with previous versions.
For example: NetSuite records are maintained within a NetSuite account. If your extension update requires altering a custom record, you could break backwards compatibility with previous versions of the extension.
Always test theme and extension functionality and backwards compatibility on a development or sandbox account before releasing the bundle.
If you bundled a theme or extension prior to the 18.2 release of the SuiteCommerce Extensions Management SuiteApp, we recommend rebuilding the installation script using SuiteScript 2.0 the next time you update a theme or extension included in the bundle.
You must increment the version of at least one theme or extension when updating a SuiteApp. If the SuiteApp does not include a theme or extension with a later version, the update fails.
The SuiteApp version has no programmatic connection with the versioning system of themes and extensions.
If your theme or extension update requires customizing the installation script, you can edit the existing script. You do not need to build a new script.
These procedures only apply to themes and extensions that are being released as part of a bundled SuiteApp. Updates to custom themes or extensions (as developed by internal site developers) are made using the developer tools.
Update Themes and Extensions Within a SuiteApp
To update a theme or extension that is part of a SuiteApp:
Update your theme or extension as required. See Customization for more information.
Deploy your updated theme or extension to the NetSuite account used to create the original SuiteApp.
Increment each version using a three-digit SemVer notation (Major.Minor.Patch). Failure to use this results in failed SuiteApp updates. For more information on semantic versioning, see https://semver.org/.
Confirm that the manifest.json file associated with the updated theme or extension reflects the correct version.
In NetSuite, navigate to the location where you deployed your theme or extension update.
Open the associated manifest.json file and confirm the version.
The manifest.json file should reflect the latest version in SemVer notation. For example, if you deployed an update to MyCoolExtension 1.0.0 to version 2.0.0, your manifest.json file should look similar to the following example:
"fantasyName": "My Cool Extension!",
"description": "This is my cool update!",
If the manifest does not reflect the correct version, redploy or edit the manifest file in your file cabinet.
If your theme or extension update requires changes to the installation script, edit the installation script as needed.
See the help topic SuiteScript 2.0 Bundle Installation Script Type for details.
Edit the SuiteApp using SuiteBundler in NetSuite. See the help topic Creating a Bundle with the Bundle Builder for details.