Contact Us

What is an Extension?

It is helpful to distinguish extensions from two other kinds of customization in NetSuite: Scripts and Admin changes. Scripts are used for automation and customization within NetSuite’s backend, while Extensions are used for customization of the customer-facing webstore. Admin changes refer to modifications that can be made to either the backend or the webstore, primarily through Website Setup, Website Configuration, or fields on item records. Admin changes are limited to the options built into NetSuite, whereas extensions are nearly infinitely customizable. Now, when you use SuiteCommerce, you aren’t building a website from scratch, so there is a foundational architecture that leads to a few limitations. However, for the most part, SuiteCommerce Advanced offers considerable flexibility and can be adapted to suit nearly any company.

If you plan to use any extensions, you will want to be aware of the Extension Manager.

Extension Manager

To find the manager, navigate to Setup > SuiteCommerce Advanced > Extension Manager. If you have multiple websites connected to your NetSuite Account, then select the website you are interested in managing. Here is the manager, who you can see is not just about extensions but also themes:

Activate Themes and Extensions page.

The first subtab shows all the Active Themes & Extensions, while the next two subtabs (respectively titled Themes, and Extensions) also show inactive ones. This is the place to see which extensions you have and which ones are active.

To activate an extension, you check the Active box and then hit the Activate button.

Activate Themes and Extensions page.

Managing those activated extensions sometimes also requires heading over to Website Configuration (Setup > SuiteCommerce Advanced > Configuration). To open the configuration for the particular website you want to configure, select the appropriate website and domain:

SuiteCommerce Configuration page.

On the configuration page, the Extensions subtab enables you to quickly determine variables related to your extensions without requiring any code.

SuiteCommerce Extension Example

Take this extension we developed as an example of what this can look like:

For context, this extension creates a pop-up on the checkout page, initiated by the “Place Order” button. This pop-up suggests adding an item to the order. As you will surely recognize, this is essentially a tool for upselling, making it very convenient for customers to add one more item to their order. In particular, it can help to provide more visibility for a product of which your customers may not be aware. Alternatively, it could be a way to offload overstocked/excess inventory while incentivizing customers with a discount.  

A laptop with a store front screen shown.

This pop-up is a superb example of timing your upsell; it only displays after the customer has already committed to purchasing something and is in the buying mood. Trust has already been established, and now a pop-up appears to continue the dialogue between you and the customer.

As you can imagine, you will frequently want to change the item featured by this pop-up. Instead of hard-coding the item, image, title, subtitle, discount, and other details into the extension code, we used variables in the code. These variables are sourced from fields on the Configuration page under the Extensions tab:

A wider view of the SuiteCommerce Configuration page.

Now, an administrator, sales manager, or anyone else in charge of managing featured products on the webstore can quickly and easily alter the pop-up as needed, without needing to ask a developer to go through the process of editing and redeploying the code.

Not every extension offers this easy codeless mutability, nor does every extension require it; however, our hearty recommendation is to ask your SuiteCommerce consultants to provide it whenever possible. Doing so can require a little more thought and time during the initial SuiteCommerce extension development, but it will save you a significant amount of time in the long run.

Where to Find Extensions

Before you custom-build your extensions, it is worth spending an hour to peruse the available pre-built extensions, as they are typically much cheaper than custom-built ones and have already proven to work. There are two primary resources for discovering these pre-built extensions:

  1. SuiteApp.com, NetSuite’s own website, offers some SuiteCommerce extensions, but they recently (early 2021) decided not to add any more third-party SuiteCommerce extensions, so the selection is expected to remain limited. However, it is still worth browsing, as all extensions built by NetSuite are free as part of your SuiteCommerce license.
  2. Some of NetSuite’s Commerce Agency Partners offer pre-built extensions directly on their own company websites. One of the places where we list our pre-built extensions is on our SuiteCommerce App page!

In many cases, of course, there will be at least one or two things that you want to do with your website that are not possible via either native functionality or a pre-built extension, so you should expect to build at least a few custom extensions. This is especially true of large or highly unique businesses.

Extension Manager Can't Find Theme

  1. Navigate to the SC ExtMech Extension Custom Record.
  2. Edit the appropriate Theme record
  3. Remove the Target Version and save

Extension manager when you can't find the theme.

That's all for now, but we hope this article was helpful and informative!  If you have questions about SuiteCommerce extensions in general or about our SuiteCommerce extension development in particular, please don't hesitate to contact our team at any time.

Related Articles:

FREE SuiteCommerce Book

If you liked this article, you'll LOVE our book on SuiteCommerce.  How do we know?  Because the content in this article was reproduced from a section of our book!  So, what are you waiting for?

Order the free SuiteCommerce book today, and we'll cover the shipping cost.
 

Anchor Group NetSuite Ecommerce SuiteCommerce Book

Tagged with Training, Solutions