SuiteCommerce
NetSuite 2017.2
2017-07-12

SuiteCommerce Advanced Kilimanjaro: 3D Secure, Auto-Apply Promotions, Sass Overhaul, and CCT Support

The Kilimanjaro release of SCA introduces 3D Secure payment authentication, auto-apply SuitePromotions, Custom Content Types for SMT, a breaking Sass variable refactor, and requires Node.js 6.11.x for developer tools.

Affects:SuiteCommerce AdvancedSuitePromotionsSite Management Tools (SMT v3)SuiteCommerce Configuration RecordCommerce APIsNode.js Developer Tools

SuiteCommerce Advanced (SCA) Kilimanjaro requires a NetSuite 2017.2 account. Multiple features depend on 2017.2 Commerce APIs, so installing this bundle on an earlier account version will break functionality.

Bundle IDs

  • SCA Kilimanjaro: 194217
  • Site Builder Extensions Kilimanjaro: 194218
  • Site Builder Extensions Premium Kilimanjaro: 194219
  • SuiteCommerce Configuration: 194222
  • Reference Product Lists Records: 53051 — required even if Product Lists are not used. Without it, navigating to the cart throws The record type [CUSTOMRECORD_NS_PL_PRODUCTLIST] is invalid.

What changed

3D Secure Payments

SCA now supports 3D Secure authentication via payment provider accounts (Cybersource, MerchantE). A new SuiteCommerce Configuration property isThreeDSecureEnabled (Checkout tab) controls the feature.

Change Email Address

Shoppers can change their registered email from My Account. The flow sends a confirmation email with a verification link. Available by default in Kilimanjaro; backport patches exist for earlier releases.

Custom Content Types (CCTs)

CCTs let you build custom modules rendered inside SMT-managed pages. Implementation requires creating a custom SCA module, registering the CCT in NetSuite, and placing it via Site Management Tools. Requires SMT Version 3.

VAT/GST/PST Display

Tax line-item display is now supported for Canadian, UK, and Australian NetSuite editions. The new configuration property showTaxDetailsPerLine (Shopping tab) controls whether detailed per-line taxes appear in the cart.

Field Set Setup Script — Matrix Child Items

A new configurable matrix child item search field set is available via the SuiteCommerce Configuration record. Two new properties:

  • matrixchilditems.enabled — toggle custom matrix child search in item lists
  • matrixchilditems.fieldset — specify the field set used for the search

The field set setup script now includes a default matrixchilditems_search field set.

SuitePromotions Enhancements

Three new capabilities, all dependent on 2017.2 Commerce APIs:

  • Auto-Apply Promotions — promotions apply automatically when criteria are met.
  • Best Offer — when auto-apply is enabled and multiple promotions (including exclusive ones) qualify, the system determines the optimal combination.
  • Audit & Visibility — the UI shows whether a promotion was user-applied or auto-applied, and displays reasons when a promotion is not applied.

Setup requires enabling the SuitePromotions feature, setting This Promotion Can Be Automatically Applied on each promotion record, and enabling Auto-Apply Promotions on the Shopping tab of the Web Site Setup record.

Sass Variable Breaking Changes

Color, typography, and spacing Sass variables have been completely renamed and restructured. This is a breaking change for any custom Sass that references old variable names.

  • Colors: Old variables like $sc-color-theme, $sc-color-theme-light are replaced by a numeric shading scale: $sc-neutral-shade-900, $sc-color-theme-400, etc.
  • Typography: Old fixed-pixel variables ($sc-h1-font-size, $sc-small-font-size) are replaced by t-shirt sizes using rem units: $sc-font-size-xs through $sc-font-size-xxxl, calculated from $sc-font-size-base.
  • Spacing: Old named variables ($sc-small-margin, $sc-medium-margin) are replaced by numeric levels: $sc-padding-lv1 through $sc-padding-lv8, each a multiplier of $sc-padding-base (5px).

Node.js Requirement

Developer tools now require Node.js 6.11.x. Earlier versions are no longer supported.

New SuiteCommerce Configuration Properties

  • addresses.isPhoneMandatory — My Account > Addresses subtab
  • isThreeDSecureEnabled — Checkout tab
  • showTaxDetailsPerLine — Shopping tab
  • matrixchilditems.enabled / matrixchilditems.fieldset — Shopping tab
  • faviconPath — Advanced > Favicon Path subtab

What to do

  1. Verify account version. Confirm your NetSuite account is on 2017.2 before installing the Kilimanjaro bundles.
  2. Install bundle 53051 (Reference Product Lists Records) even if you do not use Product Lists — the cart will error without it.
  3. Audit custom Sass. Search your theme and extension Sass files for any old variable names ($sc-color-theme, $sc-h1-font-size, $sc-base-padding, $sc-small-margin, etc.) and migrate them to the new naming conventions. This is the highest-effort migration task.
  4. Update Node.js to 6.11.x on all developer workstations and CI environments.
  5. Migrate custom code. Follow Oracle's Migrate SuiteCommerce Advanced guide to merge Kilimanjaro source changes into your existing customizations.
  6. Enable SuitePromotions if you want auto-apply behavior: toggle the feature, flag individual promotion records, and enable auto-apply on the Web Site Setup record.
  7. Upgrade SMT to v3 if you plan to use Custom Content Types.
  8. Review new configuration properties in the SuiteCommerce Configuration record and set values appropriate for your storefronts.