2020.1.0 Release of SuiteCommerce and SuiteCommerce Advanced

The 2020.1.0 major release of SuiteCommerce and SuiteCommerce Advanced (SCA) includes the following features and enhancements:

The following features will be available in the upcoming 2020.1 release of SuiteCommerce and SuiteCommerce Advanced:

These enhancements apply to all Commerce web stores; however, some might apply to SuiteCommerce Advanced only. Each of the following enhancements explains the implementations to which they apply.

Introducing SuiteCommerce MyAccount

SuiteCommerce MyAccount is a new self-service web portal where website users manage account information, view recent orders, and pay for invoices. SuiteCommerce MyAccount helps SuiteCommerce customers who desire an online, customer-facing account management dashboard, but do not require shopping or checkout applications.

SCMA includes various features and information in the My Account area of your site:

  • Purchases area, including information about current and past purchases and the ability to request returns or refunds

  • Request Quotes

  • Billing information, including account balances, invoices, transaction history, and printable statements

  • Account settings, such as email preferences, password management, and so on.

  • Support case management

SuiteCommerce MyAccount leverages the same architecture that drives SuiteCommerce implementations. This means that extensions and themes are available to help customize your experience. You can also use Site Management Tools (SMT) to customize your site.

SuiteCommerce MyAccount requires installing the following SuiteApps:

  • SuiteCommerce

  • SuiteCommerce Extensions Management

  • SuiteCommerce Base Theme

  • SuiteCommerce Configuration

For more information on SuiteCommerce MyAccount, see SuiteCommerce MyAccount Overview.

3D Secure 2.0 Support

With the 2020.1.0 release of SuiteCommerce and SuiteCommerce Advanced, 3D Secure 2.0 is supported in the checkout flow of Commerce websites. For a transaction to be processed using 3D Secure 2.0, the issuer of the credit card and the payment gateway must also support 3D Secure 2.0.

3D Secure 2.0 meets the requirements of Strong Customer Authentication per European directive PSD2.

JSON-LD Structured Data Markup

The 2020.1.0 release of SuiteCommerce and SuiteCommerce Advanced implements JSON-LD structured data markup to automatically add structured data to the HTML header sections of product detail pages (PDPs). Major search engines use structured data markup to provide detailed information about a page and enhance search results. Product list pages do not include the JSON-LD markup.

For more information about the properties included in the markup, see Structured Data Markup.

Internet Explorer 9 and 10 No Longer Supported

With the 2020.1.0 release of SuiteCommerce and SuiteCommerce Advanced, implementations no longer support Internet Explorer (IE) 10 and earlier. Since January 12, 2016, Microsoft no longer provides security updates or technical support for IE 10 and earlier.

Because IE 10 may cause breaking changes on SuiteCommerce and SuiteCommerce Advanced sites and users may be exposed to security vulnerabilities, do not use IE 10 and earlier. Install, and direct your customers to install, a currently supported browser version.

For more information, see Supported Browsers for Commerce Websites.

Extensibility API Updates

New Method in Visual Component to Modify JSON-LD of Views

With the 2020.1.0 release of SuiteCommerce and SuiteCommerce Advanced, the Visual component in the Extensibility API has been updated with a new method (modifyViewJsonLd()), which lets you modify the JSON-LD associated with a view. This method supports the JSON-LD Structured Data Markup feature.

If your extension modifies the data shown in a view, you should update the JSON-LD to ensure the view and the JSON-LD embedded on the page are consistent. Use modifyViewJsonLd() to add, remove, or change the JSON-LD data before the view is rendered.

More information about this method is available in the Extensibility API Reference.

SCModel and SCCollection Components

The 2020.1.0 release of SuiteCommerce and SuiteCommerce Advanced introduces two new components to work with models and collections: SCModel and SCCollection. These components extend their native equivalents in Backbone.js, specifically Backbone.Model and Backbone.Collection. Both components are written in TypeScript and inherit all their respective Backbone.js methods and properties. In extensions built on SuiteCommerce or SuiteCommerce Advanced 2020.1 and later, you should use these new components instead of Model and Collection in Backbone.js.

More information about these components is available in the Extensibility API Reference.

Extension Manager Support for SuiteScript 2.0 Services

With the 2020.1.0 release of SuiteCommerce and SuiteCommerce Advanced, the Extension Manager has been modified to support extensions that include SuiteScript 2.0 services. These updates include the addition of SuiteScript 2.0 as a supported file type when creating a baseline extension and additional modules using the extension developer tools.

For more information, see Create a Baseline Extension and Create Additional Modules for an Extension.

Conditional Display of Configuration Record Groups and Subtabs

With the 2020.1.0 release of SuiteCommerce and SuiteCommerce Advanced, developers can add additional metadata to module and extension JSON configuration files to control the display of SuiteCommerce Configuration groups (tabs) and subtabs. For more information, see Conditional Display of Groups and Subtabs.

Commerce Module Migration to SuiteScript 2.0

The 2020.1.0 release of SuiteCommerce and SuiteCommerce Advanced includes progress made in ongoing efforts to migrate source code to SuiteScript 2.0. The effort to leverage the benefits of SuiteScript 2.0 spans multiple releases and will ultimately enable Commerce application developers to interact with core NetSuite records in a unified way. In this release, the following My Account modules have been refactored to use SuiteScript 2.0:

  • OrderHistory

  • ReturnAuthorization

  • StoreItem

  • Transaction

  • TransactionHistory

All other modules remain compatible with SuiteScript 1.0 and the Commerce API at this time.

For more information, see Commerce Migration to SuiteScript 2.0.

Commerce Module Migration to TypeScript

The 2020.1.0 release of SuiteCommerce and SuiteCommerce Advanced continued code migration from JavaScript to TypeScript. In this release, two new bases classes were implemented using TypeScript:

  • Collection

  • Models

In addition, the following code was migrated to TypeScript:

  • Utils.ts

  • Case.Model

  • Case.Collection

For more information, see TypeScript.

Important:

This migration applies to core SuiteCommerce and SuiteCommerce Advanced source code only and does not apply to Commerce theme and extension development.

Configuration Changes

The following configuration properties have been added with the 2020.1.0 release of SuiteCommerce and SuiteCommerce Advanced. Refer to the appropriate section for more information.

Property Label (SuiteCommerce Configuration Record)

Property ID

More Information

Property Location (SuiteCommerce Configuration Record Tab > Subtab)

Markup Type

structureddatamarkup.type

Markup Type

Shopping Catalog > Structured Data Markup

Out of Stock Behavior (When Item Back Orders Are Allowed)

structureddatamarkup.availabilityonbackorder

Out of Stock Behavior (When Item Back Orders are Allowed)

Shopping Catalog > Structured Data Markup

Subscription Line Status Change

subscriptions.lineStatusChange

Subscription Line Status Change

My Account > Subscriptions

Allow The User to Cancel/Suspend Required Lines

subscriptions.allowToCancelSuspendRequiredLines

Allow the User to Cancel/Suspend Required Lines

My Account > Subscriptions

Subscription General Status Change

subscriptions.generalStatusChange

Subscription General Status Change

My Account > Subscriptions

Disallow The User to Upgrade Quantity

subscriptions.disallowUpgradeQuantity

Disallow the User to Upgrade Quantity

My Account > Subscriptions

Disallow The User to Downgrade Quantity

subscriptions.disallowDowngradeQuantity

Disallow the User to Downgrade Quantity

My Account > Subscriptions

Node.js Requirement Change

With the 2020.1.0 release of SuiteCommerce, the developer tools have been modified to support Node.js version 12.14.x, where x equals the most current minor release. To use the theme, extension, or core SCA 2020.1 developer tools, you must update Node.js to this version. See Install Node.js for more information.

Third-Party Library Updates

With the 2020.1.0 release of SuiteCommerce, the third-party libraries shown in the table below have been updated. Library version information in also shown in the distro.json file. Ensure that any themes and extensions using these libraries are compatible with the update and make any appropriate changes. If you are migrating SCA to this release, ensure that no deprecated methods exist in your implementation before migrating.

Library

Old Version

New Version

Backbone.js

1.3.3*

1.4.0*

Bignumber

7.2.1

9.0.0

Font Awesome

4.2.1

4.7.0*

Handlebars

4.0.12

4.5.3

JQuery

3.3.1

3.4.1*

Require.js

2.3.5

2.3.6

*customized version

Related Topics

General Notices