NetSuite ReleaseNotes - 2021.16

Download as pdf or txt
Download as pdf or txt
You are on page 1of 178

NetSuite 2020.

1 Release Notes 1

NetSuite 2020.1 Release Notes

Revision Date: October 7, 2020


PDF File Version: v32

Important: This document summarizes the changes to NetSuite between 2020.1 and the
previous release.

These release notes are subject to change every week.

Ensure you review the release notes section of the Help Center Weekly Updates for a list of the
changes made in this build of the release notes.

The 2020.1 enhancements and changes listed in this document are not available to customers until they
are upgraded to NetSuite 2020.1. Please check the version number at the bottom of your Home page if
you are unsure which NetSuite version you are using. The features and SuiteApps described here may not
be available in your NetSuite account. Your access to these features and SuiteApps is subject to the terms
of service in your NetSuite contract. Some features may require extra purchase.

Click the following links for details about product changes:

NetSuite

NetSuite · Accounting

■ New Feature to Balance Transactions by Segments


■ Advanced Revenue Management Enhancements
■ Entity Merge User Interface Enhancements
■ SuiteAnalytics for Accounting Enhancements
■ Transaction Email Enhancements
■ Budgets for Secondary Subsidiaries
■ Fixed Assets Management Enhancements
■ SuiteApprovals Enhancements
■ Contra Account Sheets Now Generally Available
■ China Localization Enhancements to Compliance and Reporting Requirements
■ Country-Specific Reports (Beta)
■ France Localization
■ Germany Central Bank Reports (Beta)
■ Germany Localization (Beta)
■ Germany Localization (Beta) Enhancements
■ GL Matching
■ Japan Localization Enhancements
■ Japan Localization Enhancements 2020.2
■ Japanese Balance Sheet Enhancement

ReleaseNotes_2020.1.0.pdf — Subject to Change


NetSuite 2020.1 Release Notes 2

■ New Japan Trial Balance and Enhancements to Financial Statements


■ Sequential Liability Enhancements and General Availability
■ Sequential Liability (Limited Release) Now Available
■ Sales Return Accounting Now Generally Available
■ Sales Return Accounting (Beta)
■ United Kingdom Localization Enhancements
■ EMEA Localization Enhancements

NetSuite · Administration

■ Account Setup and Maintenance


□ Deprecation Plan for the Full Access Role
□ See Differences in Employee Access Permissions on the Role Permission Differences Page
□ New File Cabinet Default for Hide Attachments Folder Preference
□ Antivirus Scanning on File Cabinet Files in All Accounts
■ Internationalization
□ Introducing Localization Context – User Event and Client Script Association
□ Subsidiary Hierarchy Modification
□ Automated Intercompany Management Preferences Relocated
□ Internal Tags Displayed in Translated Record and Transaction Names
■ Authentication
□ OAuth 2.0 Delegated Access for REST Web Services and RESTlets
□ Deprecation of Google OpenID SSO and NetSuite Inbound SSO Features
□ TBA Authorization Flow Enhancements
□ Inbound SSO Access to Commerce Websites Through OpenID Connect (OIDC)
□ Service Provider-Initiated Flow Support for SAML Single Sign-on Access to Commerce Websites
□ Session Invalidation on Commerce Websites Can Result from Changes to User Credentials
□ Password Policy Changes for Commerce Websites
□ Embedding Sensitive Website Pages in an iFrame is Prohibited
■ Cloud Infrastructure
□ Data Center-Specific NetSuite Domains for Integrations are Targeted for Deprecation
□ Automated Conversion of Data Center-Specific Domains in NetSuite
□ New Content Delivery Network Available for Secure Commerce Websites
□ Incorrect HTTP Status Code 206 is Changing to 500
■ SuiteApps
□ Operation ID Field Added on Page Time Details
□ Deprecation of Script Queue Monitor (Beta)

NetSuite · Banking

■ Bank Feeds
■ Financial Institution Connectivity API
■ Bank Data Matching Improvements

ReleaseNotes_2020.1.0.pdf — Subject to Change


NetSuite 2020.1 Release Notes 3

■ Automatic Import of Bank Statement Files Through Enhanced SFTP Connectivity


■ Bank Feeds SuiteApp
■ Bank Statement Parsers Enhancements

NetSuite · Employee Management

■ Manager Self-Service Enhancements for Employee Change Requests


■ CSV Import for Effective Dating
■ Advanced Employee Permissions Customizable Restrictions
■ Advanced Employee Permissions Exclusion of Employees Permission
■ Bonuses in Compensation Tracking
■ Expense Account Override
■ Employee-Specific Expense Report Attachments in File Cabinet
■ Time Modification Enhancements
■ Vendor Time Thresholds
■ Onboarding Checklist Enhancements
■ Onboarding and Offboarding Plans Enhancements
■ Deprecation of TribeHR Payroll Integration

NetSuite · Item Record Management

■ Inventory Costing Preferences

NetSuite · Inventory Management

■ Supply Allocation Exceptions Management


■ Partially Receive Transfer Order Fulfillment Quantities when Transfer is at Cost
■ Warehouse Management System Enhancements
□ Support for GS1 Bar Code Types
□ Inbound Shipment Management Integration
□ Multi-App Support
□ Export and Import of Custom Mobile Processes
□ SuiteScript Exposure of Warehouse Management Records
□ Mobile Printing
■ Supply Chain Control Tower Enhancements
■ Quality Management – High Volume Sampling
■ Shelf-to-Sheet Inventory Count
■ Warranty and Repairs Management Enhancements
■ Support for Printing Shelf-to-Sheet Count Records
■ Auto Assign UPC SuiteApp General Availability and Enhancements
■ Auto Assign UPC (Beta)
■ Actual vs. Theoretical Variance Reports

NetSuite · Manufacturing

■ Outsourced Manufacturing

ReleaseNotes_2020.1.0.pdf — Subject to Change


NetSuite 2020.1 Release Notes 4

■ Actual Production Dates


■ Manufacturing Mobile

NetSuite · Mobile

■ iOS Push Notification Changes


■ My Approvals Enhancements

NetSuite · Order Management

■ SuiteBilling Must Be Provisioned


■ Subscription Revisions
□ Changes to Change Orders for Subscription Revisions
■ New Accounting Preference Related to Advanced Revenue Management
■ Automatically Extend Estimated Revenue Recognition End Date
■ Multi-Subsidiary Customer Integration with Billing Accounts
■ Set Subscription Charge Periods to Align with the Subscription Start Date
■ Enhancements to Standard Roles and Permissions
■ Search Enhancements
■ Enhanced Visibility into Automatic Fulfillment Request Creation
■ Create Automatic Fulfillment Requests on Expected Ship Date
■ Improved Handling of Rejected Payments
■ The Error Message after a Failed Credit Card Payment Has Been Adjusted
■ Enabling Payment Instruments Ensures Compliance with Visa Cards on File Mandate
■ View Automation Usage Figures on the Billing Information Page
■ Dunning Letter Notifications for Grouped Invoices
■ Electronic Bank Payments Enhancements
■ Grid Order Management Enhancements
■ Subscription Billing Bulk Operations
■ Pricing Interval UI Enhancements
■ Add Interval to Multiple Subscription Lines
■ Route Delivery
■ Philippine Invoicing
■ Auto Close Back Orders
■ Static Route Management Enhancements
■ Multi-Language Support for Return Authorization from Case
■ Order Guides Enhancements
■ Norway Tax Reports
■ EMEA Localization
■ EMEA Localization Enhancements
■ Germany Localization (Beta) Enhancements
■ United Kingdom Localization
■ United Kingdom Localization Enhancements

ReleaseNotes_2020.1.0.pdf — Subject to Change


NetSuite 2020.1 Release Notes 5

■ India Localization Enhancements


■ Ireland Localization
■ Bill of Lading
■ Lot and Serial Number Trace
■ Enhanced Validations and Defaulting Enhancement

NetSuite · Projects

■ Advanced Project Budgets Enhancements


■ Advanced Project Profitability Enhancements
■ Project Revenue Recognition Enhancements
■ Preferred First Day of a Week Available for RACG Calendar
■ NetSuite-Oracle Content and Experience Integration Renamed to Oracle NetSuite Content Cloud
Service
■ NetSuite-Oracle Content and Experience Integration General Availability and Enhancements
■ NetSuite-Oracle Content and Experience Integration (Limited Release) Now Available
■ Project Risk Forecast Now Available

NetSuite · Vendors, Purchasing, and Receiving

■ Associate Vendor Prepayments with a Purchase Order


■ Automatic Application of Vendor Prepayments
■ Vendor Prepayments Enhancements
■ Vendor Bill Approvals in the Employee Center
■ SuiteApprovals Support for Vendor Bills

NetSuite · Taxation

■ SuiteTax
□ SuiteTax Support for Non-Claimable Reverse Charge Tax Types
□ U.S. Sales Tax and Canada GST Now Generally Available
□ SuiteTax Support for Tax Groups
□ SuiteTax Support for Tax Groups for Canada and the United States
□ Canada Data Provisioning Enhancements
□ Automatic Tax Calculation for Shipping in VAT Countries
□ SuiteTax Reports Enhancements
▬ Tax Point Date Support for SuiteTax Reports
▬ Tax Reporting Category for Country Tax Reports
▬ Expense Transactions in VAT/GST Reporting
□ EMEA Tax Audit Files Support for SuiteTax Reports
□ SuiteTax Country Tax Reports APAC Enhancements
▬ JAPAC Support for SuiteTax Reports
▬ Tax Reporting Category Support for Australia and Philippines Tax Reports
▬ Expense Transaction Support for APAC Tax Reports
□ SuiteTax Reports is now Tax Reporting Framework

ReleaseNotes_2020.1.0.pdf — Subject to Change


NetSuite 2020.1 Release Notes 6

□ Belgium Localization
□ EMEA Localization
□ EMEA Localization Enhancements
□ France Localization
□ Germany Localization (Beta) Enhancements
□ Ireland Localization
□ India Localization SuiteTax Engine SuiteApp Enhancements
□ Netherlands Localization
□ New Simplified India GST Tax Return Reports
□ Norway Tax Reports
□ Sweden Tax Reports
□ United Kingdom Localization
□ United Kingdom Localization Enhancements
■ Legacy Tax
□ Legacy Tax Support in Tax Reporting Framework
□ Tax Audit Files Enhancements
▬ Portugal Tax Audit Files Field Mapping Page Update
▬ France Tax Audit Files Support for Period End Journal Entries
▬ Portugal Standard Audit File for Tax Purposes (SAF-T PT) Grouping Code Mapping Update
▬ Tax Audit Files Generation Update for Enhanced Trial Balance
▬ Support for Norway Standard Audit File for Tax (SAF-T) Financial Report
□ Philippines Certificate of Creditable Tax Withheld at Source (Form 2307) Update
□ International Tax Reports Enhancements
▬ Austria VAT Rate Update
▬ Ireland VAT Rate Update
▬ Saudi Arabia VAT Rate Update
▬ Germany VAT Rate Update
▬ Cyprus VAT Return Enhancement
▬ Singapore Goods and Services (GST) F5 Return Update
▬ Germany VAT Return Update
▬ Belgium VAT Return Enhancement
▬ Slovenia VAT Return Update
□ ANZ Localization

NetSuite · User Interface

■ Help Center Available in Chinese


■ Advance Notice: Microsoft Internet Explorer 11 End of Support

Commerce

Commerce · Commerce Applications

■ 3D Secure 2.0 Support

ReleaseNotes_2020.1.0.pdf — Subject to Change


NetSuite 2020.1 Release Notes 7

■ JSON-LD Structured Data Markup


■ Internet Explorer 9 and 10 No Longer Supported
■ Extensibility API Updates
■ Extension Manager Support for SuiteScript 2.0 Services
■ Conditional Display of Configuration Record Groups and Subtabs
■ Commerce Module Migration to SuiteScript 2.0
■ Commerce Module Migration to TypeScript
■ Configuration Changes
■ Node.js Requirement Change
■ Third-Party Library Updates

Note: For a comprehensive list of 2020.1 releases of SuiteCommerce and SuiteCommerce


Advanced (including minor releases), see Commerce Applications.

Commerce · Site Management Tools

■ SMT UX Sustainability
■ Sass Pre-Processor Enhancements

Commerce · Commerce Merchandising

■ Improved Process for Applying Merchandise Hierarchy Attributes to Items


■ Merchandise Hierarchy Visual Layout Enhancements
■ Standard Merchandise Hierarchy SuiteAnalytics Workbook

Commerce · Commerce Platform

■ New Domains Setup Procedure


■ Redirect URL Domain Enhancements
■ Creating and Editing Web Sites by Type
■ Adding Items to Item Collections using Saved Searches
■ Creating Item Collections using CSV Import
■ Introducing Web Store Order Workbook Template
■ Update to Commerce Elevated Permission Framework
■ Account-Specific Domains for Marketing Campaigns and Online Forms
■ System Email Template Customization
■ Commerce Category Customer Segment Assignment
■ Commerce Category Multi-Language Support
■ Enable CDN Caching for Hosted Web Pages

Commerce · SuiteCommerce InStore

■ Payment Result Preview Processing


■ New APM Sensors

SuiteCloud Platform

SuiteCloud Platform · SuiteApp Distribution

ReleaseNotes_2020.1.0.pdf — Subject to Change


NetSuite 2020.1 Release Notes 8

■ Bundle Support During Release Phasing


■ SuiteApp Control Center Now Generally Available
■ New SuiteApp Marketplace Available for Distributing SuiteApps
■ Localization Context Filtering Supported for Scripts in Bundles
■ Translatable Field References to Terms in Translation Collections Supported in Bundles
■ SuiteBundler Support Updates

SuiteCloud Platform · SuiteBuilder - Customization

■ Sales and Purchase Custom Transactions Available


■ System Notes v2 Page Available for Custom Transaction Configuration and Roles and Permissions
■ Account–Specific Domains Supported in Custom Fields and Custom Center Links
■ New Languages Supported in Advanced Printing Templates
■ Updates to Third-Party Libraries Used in Advanced Printing
■ Improvements to Error Messages and Handling of Corrupted Custom Segments

SuiteCloud Platform · SuiteAnalytics

■ Dataset Separation in SuiteAnalytics Workbook


■ New Date Filters for SuiteAnalytics Workbook Pivot Tables and Charts
■ New Table View Tab in SuiteAnalytics Workbook
■ Analytics Data Source Browser Now Available
■ Idle Session Timeout for SuiteAnalytics Connect
■ 2020.1 Connect Browser
■ SuiteQL Available for SuiteScript and REST Web Services
■ Advance Notice: Upcoming Restriction for Search Formulas
■ New HTML Restrictions for Search Formulas Preference

SuiteCloud Platform · CSV Import

■ Newly Supported Record Types for CSV Import


■ Enhanced Size of the Name and Translation Fields in CSV Import Map Translation
■ Sales and Purchase Custom Transactions Available for CSV Import
■ Commerce Category Translation Sublist Import
■ Effective Dating for Employee Record Changes Available with CSV Import

SuiteCloud Platform · SuiteFlow (Workflow Manager)

■ Support for Expenses Sublists in Workflows


■ Change to Default Behavior of Context Selection in Workflows and Actions

SuiteCloud Platform · SuiteScript

■ Introducing SuiteQL API


■ SuiteScript 2.1 Now Generally Available for Server Scripts
■ Enhancements to Execution Contexts for Scripts and Workflows
■ Localization Context Filtering for SuiteScript 2.0

ReleaseNotes_2020.1.0.pdf — Subject to Change


NetSuite 2020.1 Release Notes 9

■ Sales and Purchase Custom Transactions Available in SuiteScript


■ Map/Reduce Concurrency Limit Is Adjusted to Target Account Limit for SDF Projects
■ Change to Scripts on the Subsidiary Record Currency Field
■ Deprecation of Script Queue Monitor (Beta)
■ Method Added to N/redirect Module
■ Advance Notice: Upcoming Deprecation of RESTlet Authentication Through User Credentials
■ Support for Relative File Paths in the N/file Module
■ 2020.1 SuiteScript Record Exposures
■ 2020.1 SuiteScript Records Browser

SuiteCloud Platform · SuiteTalk Web Services Integration

■ Changes in the URL Structure of REST Web Services


■ REST Web Services Support for CRUD Operations on Custom Records
■ Fully Supported Record Types for REST Web Services in 2020.1
■ New REST API Browser
■ Record Action Execution Through REST Web Services
■ Support for Record Transformation Through REST Web Services
■ SuiteQL Query Execution Through REST Web Services
■ Changes in SuiteAnalytics Workbook Execution Through REST Web Services
■ SuiteScript Execution Context for REST Web Services
■ REST Web Services Requests and Responses Tracked in the Execution Log
■ Sales and Purchase Custom Transactions Available in SOAP Web Services
■ New GetConcurrencyGovernance Operation in SOAP Web Services
■ Operations Removed in 2020.1 SOAP Web Services Endpoint
■ Governance Enabled for All Accounts
■ Integration Record Enhancements Related to OAuth 2.0
■ Field Type Change in the Project Task Record
■ Advance Notice: Upcoming Deprecation of SOAP Web Services Authentication Through User
Credentials
■ SOAP Web Services Version 2020.1
■ Araxis Merge Diff File for the 2020.1 Endpoint
■ 2020.1 SOAP Schema Browser

SuiteCloud Platform · SuiteCloud SDK

■ 2020.1 SuiteCloud CLI for Java Is Now Available


■ 2020.1 SuiteCloud IDE Plug-in for WebStorm Is Now Available
■ 2020.1 SuiteCloud IDE Plug-in for Eclipse Is Now Available
■ SuiteCloud CLI for Node.js Is Now Available
■ Basic Authentication Is Deprecated in 2020.1
■ New Commands for SuiteCloud CLI for Java
■ SuiteScript Files Are Automatically Imported in SuiteCloud SDK

ReleaseNotes_2020.1.0.pdf — Subject to Change


Accounting 10

■ Update Custom Objects in SuiteCloud IDE Plug-in for WebStorm


■ Account-Specific Values Management in SuiteCloud IDE Plug-in for WebStorm Is Now Available

SuiteCloud Platform · SuiteCloud Development Framework

■ Localization Context Filtering Support


■ Custom Code and Action Tabs in Custom Forms Support
■ Sales and Purchase Custom Transactions Support
■ Additional Transaction Form Types Can Be Customized
■ Translatable Fields Support
■ Map/Reduce Concurrency Limit Adjusts to Target Account Limit
■ Financial Institution Connectivity Plug-in Support
■ Parser Plug-in Support
■ Minor Updates to Custom Objects

SuiteApps

SuiteApps · SuiteApps (Bundles) Released by NetSuite

■ Accounting SuiteApps
■ Administration SuiteApps
■ Banking SuiteApps
■ SuitePeople SuiteApps
■ Order Management SuiteApps
■ Inventory Management SuiteApps
■ Localization SuiteApps
■ Manufacturing SuiteApps
■ Projects SuiteApps
■ Integration SuiteApps
■ Non-Profit SuiteApps
■ Food and Beverage SuiteApps
■ Wholesale Distribution SuiteApps
■ Vendors, Purchasing, and Receiving SuiteApps
■ Taxation SuiteApps

Accounting
NetSuite 2020.1 includes the following enhancements to accounting features:

■ New Feature to Balance Transactions by Segments


■ Advanced Revenue Management Enhancements
■ Entity Merge User Interface Enhancements
■ SuiteAnalytics for Accounting Enhancements
■ Transaction Email Enhancements
■ Budgets for Secondary Subsidiaries

ReleaseNotes_2020.1.0.pdf — Subject to Change


Accounting 11

■ Fixed Assets Management Enhancements


■ SuiteApprovals Enhancements
■ Contra Account Sheets Now Generally Available
■ China Localization Enhancements to Compliance and Reporting Requirements
■ Country-Specific Reports (Beta)
■ EMEA Localization
■ EMEA Localization Enhancements
■ France Localization
■ Germany Central Bank Reports (Beta)
■ Germany Localization (Beta)
■ Germany Localization (Beta) Enhancements
■ GL Matching
■ Japan Localization Enhancements
■ Japan Localization Enhancements 2020.2
■ Japanese Balance Sheet Enhancement
■ New Japan Trial Balance and Enhancements to Financial Statements
■ Sequential Liability Enhancements and General Availability
■ Sequential Liability (Limited Release) Now Available
■ Sales Return Accounting Now Generally Available
■ Sales Return Accounting (Beta)
■ United Kingdom Localization
■ United Kingdom Localization Enhancements

New Feature to Balance Transactions by Segments


With the new Balancing Segments feature you can now balance transactions by segments. In NetSuite,
the general ledger always balances for the company or, in OneWorld accounts, for the subsidiary.
Now you can identify custom segments to balance for other dimensions. For example, you can create
balancing segments for product lines or business units. When you run the new Balancing by Segments
process, NetSuite automatically balances your transactions by their balancing segments.

For instructions to set up the Balancing Segments feature, see the help topic Setup for Balancing
Segments. The setup includes the following basic steps:

■ Feature enablement – The Balancing Segments feature depends on the Custom Segments feature.
When you check the Balancing Segments box, you receive a message that lets you also enable the
Custom Segments feature if it is not currently enabled.
■ Intersegment account configuration – Intersegment accounts enable you to balance by segment
without general ledger impact to your regular transaction posting accounts. After you enable the
feature, the Accounting Preferences page includes a Balancing Segments subtab. On this subtab, you
must select default intersegment due-to and due-from accounts. You can select the same account
for both the due-to and the due-from accounts. If you want, you can also select due-to and due-from
accounts for specific transaction types.
■ Balancing segment creation – Balancing segments are custom segments. To create balancing
segments, check the GL Impact and Balancing boxes on new or existing custom segments. For
information about custom segments, see the help topic Custom Segments.

ReleaseNotes_2020.1.0.pdf — Subject to Change


Accounting 12

After setup, you can add values for your balancing segments to your transactions. Depending on your
custom segment configuration, you can select a value in the transaction header, the transaction lines,
or both. The transactions do not balance by segment until you run the process, usually at the end of the
period.

The Balancing by Segments Process is one of the tasks on your Period Close Checklist. You can, however,
run the process at any time from Transactions > Financial > Balance Transactions by Segments. Posting
Period is a required field, which is set automatically in the period close task. In NetSuite OneWorld
accounts, you must also select one or more subsidiaries. When Multi-Book Accounting features are
enabled, you must also select one or more accounting books. The process automatically includes all
balancing segments. You can have a maximum of two balancing segments.

The process creates a balancing journal, a new transaction type. The balancing journal includes lines for
all balancing segment values. Each line has a Details link to a page with lines for the related transactions.
From the detail page, you can click through to the individual transactions. These transactions display
the status Balanced by Segments, and their GL Impact subtabs include a Balancing by Segments Details
subtab. In this subtab you can see that the transaction header segment value (debit or credit) balances
with the line segment values.

You can rerun the balancing by segments process for a specified period and subsidiary combination.
When you rerun the process, the system deletes the previous balancing journal and a creates a new one.
A warning at the top of the Balance Transactions by Segments page alerts you when you select a period
and subsidiary for which the process has already run.

On reports, you can select your balancing segment as a Column filter or add the column when you
customize a report. Some major financial reports that support custom segments as Column filters or in
customization are the Balance Sheet, Income Statement, and Cash Flow Statement.

For detailed information about the Balancing Segments feature, see the help topic Balancing Segments
and Journals.

Advanced Revenue Management Enhancements


NetSuite 2020.1 delivers some significant enhancements to the Advanced Revenue Management feature.
The following sections provide a brief summary of the enhancements for this feature:

■ New Revenue Summary Popup Window for Revenue Arrangements


■ Enhanced Revenue Allocation Support for SuiteBilling Change Orders
■ Return of Element Renamed to Linked Element
■ Documentation Enhancements

For more information about Advanced Revenue Management, see the help topic Advanced Revenue
Management.

New Revenue Summary Popup Window for Revenue


Arrangements
The new Revenue Summary button at the top of the revenue arrangement page displays key information
from the Revenue Element subtab combined with recognized revenue from the general ledger
and amounts actually invoiced. In addition, when revenue arrangements are created from merged
arrangements, linked elements are consolidated in the Revenue Summary window. You can view the
summary with consolidated linked elements collapsed or expanded to show each linked element.

In the popup window, use the Expand All and Collapse All buttons, or click the plus and minus signs to
expand and collapse individual lines.

ReleaseNotes_2020.1.0.pdf — Subject to Change


Accounting 13

The columns in the revenue summary are as follows:

Column Description

Element Link to the revenue element in both consolidated and expanded views.

Linked Element Visible in expanded view only. This is a link to the revenue element for a related source, such
as transaction line or subscription line.

Source Link to the source for the line in both consolidated and expanded views.

When the source is a subscription change order, the link is to the subscription change
order. The text for the link indicates the type of change order. For more information about
subscription change orders, see the help topic SuiteBilling Change Orders.

Item Link to the item record in both consolidated and expanded views.

Quantity Quantity associated with the element.

In consolidated view, the quantity equals the total of the quantities in the detail lines.

Discounted Sales Quantity associated with the element.


Amount
In consolidated view, the quantity equals the total of the quantities in the detail lines.

Revenue Amount Total revenue amount associated with the element.

In consolidated view, the amount equals the total of the revenue amounts in the detail lines.

Recognized (Base The revenue recognized from revenue recognition journal entries in the base currency.
Currency)

Carve In/Out The projected carve-in or carve-out amount for the element. For more information, see the
help topic Fair Value and Allocation.

Billed The amount invoiced.

Enhanced Revenue Allocation Support for SuiteBilling Change


Orders
Prior to 2020.1, subscription change orders updated the original revenue elements for the subscription.
The update sometimes overrode the dates or allocation of existing elements. A new accounting
preference, Create Revenue Elements for Subscription Revisions, lets you chose whether to keep the
current behavior or create new revenue elements for subscription change orders. When you check
the box for Create Revenue Elements for Subscription Revisions, you can use either retrospective or
prospective merge to combine revenue arrangements for subscriptions. When the preference box is
clear, you can only merge revenue arrangements for subscriptions retrospectively. For more information
about retrospective and prospective merges, see the help topic Combination and Modification of
Performance Obligations.

For more information about the accounting preference Create Revenue Elements for Subscription
Revisions, see New Accounting Preference Related to Advanced Revenue Management.

Return of Element Renamed to Linked Element


Previously, the Return of Element field only linked revenue elements from a return (negative elements)
with their associated positive element (sales element). Now you can also link the revenue element from
a subscription revision with the original element for the subscription line or other associated revenue
element. The new name for the field is Linked Element to indicate the expanded function.

ReleaseNotes_2020.1.0.pdf — Subject to Change


Accounting 14

Documentation Enhancements
The 2020.1 Help Center for Advanced Revenue Management reflects these 2020.1 enhancements.

To avoid confusion between subscription change orders and prospective merges, the documentation
no longer uses the term “prospective change orders.” Beginning in 2020.1, contract modifications are
referred to as either retrospective or prospective merges.

Entity Merge User Interface Enhancements


NetSuite 2020.1 includes the following changes to the Entity Merge user interface:

■ The Merge From field is now the Duplicate field. This field indicates which records NetSuite regards
as duplicates and merges into a master record.
■ The Merge Into field is now the Master field. This field indicates which record NetSuite merges
duplicates into.
■ The Entity Merge page now includes a Duplicate/Master Summary with a summary of the entities
NetSuite will merge. You can select which entity-specific information appears in the Duplicate/Master
Summary.

These changes appear on the Manual Merge page. To access this page, click Merge in a duplicate entity’s
record.

For more information, see the help topic Merging Different Types of Records.

SuiteAnalytics for Accounting Enhancements


SuiteAnalytics now includes the following accounting enhancements:

■ Links to the previous and next transactions in your workflow. The Related Transactions – Next and
Related Transactions – Previous fields are available in your SuiteAnalytics reports and pivot tables.
■ The Transaction Detail standard workbook includes the following enhancements:
□ If you use Multi-Book Accounting, the workbook includes a Primary Accounting Book filter by
default.
□ A Transaction Overview pivot table is now available. The default definition includes a row for
account type, a Transaction Count measure, and a grand total of all accounts.
□ OneWorld accoutns include an Account Turnover pivot table. The default definition includes a row
for Account, a Subsidiary column, and Amount (Sum) measures.
■ The Do Not Display Line field, which includes information which was usually hidden in Global Search,
has been renamed to Technical Line.

For more information, see the help topics Analytics Data Source Overview and Transaction Detail
Workbook.

Transaction Email Enhancements


In NetSuite 2020.1, you can use the Standard Transaction Email Template at Documents > Templates >
Email Templates and build customized email templates. You can also set custom templates as the default
for standard transactions with a new Default Email Template preference at Setup > Company > Email >
Email Preferences > Transactions subtab.

For more information, see the help topics Working with Email Templates and Setting Email Preferences.

ReleaseNotes_2020.1.0.pdf — Subject to Change


Accounting 15

Budgets for Secondary Subsidiaries


If you use the Multi-Subsidiary Customer feature, in 2020.1 you can create a budget for any of the
customers’ assigned secondary subsidiaries. For information about creating budgets, see the help topic
Setting Up a Budget.

Administration
This release note was updated April 29, 2020.

NetSuite 2020.1 includes the following enhancements to Administration features:

■ Account Setup and Maintenance


□ Deprecation Plan for the Full Access Role
□ See Differences in Employee Access Permissions on the Role Permission Differences Page
□ New File Cabinet Default for Hide Attachments Folder Preference
□ Antivirus Scanning on File Cabinet Files in All Accounts
■ Internationalization
□ Introducing Localization Context – User Event and Client Script Association
□ Subsidiary Hierarchy Modification
□ Automated Intercompany Management Preferences Relocated
□ Internal Tags Displayed in Translated Record and Transaction Names
■ Authentication
□ OAuth 2.0 Delegated Access for REST Web Services and RESTlets
□ Deprecation of Google OpenID SSO and NetSuite Inbound SSO Features
□ Smooth NetSuite Login Experience with SAML SSO or OIDC SSO
□ TBA Authorization Flow Enhancements
□ Inbound SSO Access to Commerce Websites Through OpenID Connect (OIDC)
□ Service Provider-Initiated Flow Support for SAML Single Sign-on Access to Commerce Websites
□ Session Invalidation on Commerce Websites Can Result from Changes to User Credentials
□ Password Policy Changes for Commerce Websites
□ Embedding Sensitive Website Pages in an iFrame is Prohibited
□ Advance Notice: Upcoming Deprecation of RESTlet Authentication Through User Credentials
□ Advance Notice: Upcoming Deprecation of SOAP Web Services Authentication Through User
Credentials
■ Cloud Infrastructure
□ Data Center-Specific NetSuite Domains for Integrations are Targeted for Deprecation
□ Automated Conversion of Data Center-Specific Domains in NetSuite
□ New Content Delivery Network Available for Secure Commerce Websites
□ Incorrect HTTP Status Code 206 is Changing to 500
■ SuiteApps
□ Operation ID Field Added on Page Time Details
□ Deprecation of Script Queue Monitor (Beta)

ReleaseNotes_2020.1.0.pdf — Subject to Change


Administration 16

Account Setup and Maintenance

Deprecation Plan for the Full Access Role


The Full Access role has been deprecated since NetSuite 2019.1 and is targeted to be disabled as
of 2021.1. As an interim step in this process, as of January 2020, this role will be set to inactive. The Full
Access role will no longer appear in the list of roles available for users who have this role assigned.

Before your account is upgraded to 2021.1, make sure that any customizations in your account that are
running under the Full Access role work under another role without causing any errors.

The following changes were made to the Full Access role as of 2019.1:

■ The Full Access role was renamed to Full Access (deprecated).


■ You cannot assign the Full Access role to new users.
■ When users log in with the Full Access role, they see a notification indicating that the Full Access role is
being deprecated.
■ A permission called Core Administration Permissions became available. This permission provides
access to some of the same functions that are currently available to users with the Full Access role.
You may be able to use Core Administration Permissions as an alternative to the Full Access role.

For more information, see the help topics Full Access Role, Customizing or Creating NetSuite Roles and
Core Administration Permissions.

See Differences in Employee Access Permissions on the Role


Permission Differences Page
You can use the Role Permission Differences feature to quickly compare permissions between roles.
As of NetSuite 2020.1, it is possible to see differences in Employee Access permissions and restrictions
between different roles. Differences in Employee Access permissions are shown in their own category
called Employee Access. This is useful when you want to compare Employee Access permissions between
a customized role and the role on which it is based.

To compare permission differences between two or more roles, go to Setup > Users/Roles > User
Management > Show Role Differences.

Employee Access permissions are part of the Advanced Employee Permissions feature. This feature gives
Administrators more flexibility and control over the fields and sublists on the employee record that are
available to the role.

To enable the feature, go to Setup > Company > Enable Features. On the Employees subtab, in the
Permissions section, check the Advanced Employee Permissions box.

For more information, see the help topics Advanced Employee Permissions Overview and Showing Role
Permission Differences.

New File Cabinet Default for Hide Attachments Folder


Preference
To ensure that only users with adequate permissions can access confidential records and associated files
in the File Cabinet, the attachments folder is now hidden by default. As of 2020.1, the Hide Attachments
Folder box on the General Preferences page is checked for all new customers.

ReleaseNotes_2020.1.0.pdf — Subject to Change


Administration 17

When the Hide Attachments Folder box is checked, the following folders in the File Cabinet are visible to
Administrators only:

■ Attachments Received
■ Attachments Sent
■ Mail Merge

To manage this preference, Administrators can check or clear the Hide Attachments Folder box at Setup >
Company > Preferences > General Preferences. 

For more information, see the help topic Restricting Access to File Cabinet Folders.

Antivirus Scanning on File Cabinet Files in All Accounts


As of 2020.1, all NetSuite accounts are protected against viruses and malware to provide increased
security. An embedded antivirus scanner automatically scans all new and updated files as they are
uploaded to the File Cabinet. Files are uploaded only if they pass the scan. Files attached to email
messages are also scanned for viruses.

All scanning is done automatically. No configuration or setup is required.

For more information, see the help topic Antivirus Scanning on File Cabinet Files.

Internationalization

Introducing Localization Context – User Event and Client Script


Association
NetSuite 2020.1 introduces support for record localization context and the ability to filter script execution
according to localization context. Developers can use these features to tailor scripts for certain countries,
and to prevent these scripts from deploying unnecessarily on records associated with other countries.
Limiting script execution in this manner can improve record performance.

For more information about these features, see the following:

■ Determining the Localization Context


■ Records That Support Localization Context
■ Localization Context–Aware Scripts

For more information about setting up localization context filtering for user event and client script
execution, see Localization Context Filtering for SuiteScript 2.0.

Localization context filtering is supported for scripts in bundles. For information, see Localization Context
Filtering Supported for Scripts in Bundles.

Determining the Localization Context


The localization context of a record represents the country or countries associated with that record. The
system automatically determines the localization context of a record on the basis of the values in specific
country fields, such as subsidiary and tax nexus fields. These values represent individual countries, such
as France, United Kingdom, or Germany.

The system follows a defined process to determine the localization context for a record, based on a
variety of factors. The following diagram illustrates this process:

ReleaseNotes_2020.1.0.pdf — Subject to Change


Administration 18

The process progresses through the decision tree from the “START” to one of the results in dark–gray
rectangles.
The results of the process list the field on which the specific localization context is based. For example, if
the result is “Subsidiary (Country),” the localization context is based on the value of the country field of the
respective subsidiary.
The localization context of a record can contain multiple countries; it is not limited to a single option.
When scripts are filtered based on localization context, a script is run if its context association rule is set
to at least one of the countries of the localization context.
For localization context filtering in client scripts, the determination of localization context is dynamic:

1. A user changes a field which is used to determine the localization context of a record.
2. Context determination is immediately triggered again to make sure that the localization context is
correctly set.
3. Based on the new localization context, the relevant scripts are loaded from the server and
attached to the record and the scripts that are no longer applicable are detached.

ReleaseNotes_2020.1.0.pdf — Subject to Change


Administration 19

For more information about determination of localization context, see the help topic Record Localization
Context.

Records That Support Localization Context


Use of the localization context feature is currently limited to standard records of the following types:

■ Item
■ Transaction
■ Entity

For more details about supported records, see the help topic Records that Support Localization Context.

Localization Context–Aware Scripts


As of NetSuite 2020.1, administrators and other users with access to scripts can set up a localization
context association rule for a SuiteScript 2.x user event or client scripts. You can set a localization context
association rule on the script deployment record by selecting the country or countries for which a script is
relevant. Script deployments with a localization context association rule result in context–aware scripts.

Localization context–aware scripts only run on records associated with a defined country or countries.
The execution of context–aware scripts is filtered by comparing the localization context of the record
to the country values selected on the script deployment record. This filtering is useful for users with
subsidiaries in multiple countries, because it causes the script deployment to run faster.

For more details on how to set up a localization context association rule that filters script execution based
on records’ associated countries, see Localization Context Filtering for SuiteScript 2.0.

During script deployment, the localization contexts of records are verified against the countries selected
on the script deployment record before these scripts load and run. The context–aware scripts skip other
records. Script maintenance is easier, because you can be sure that scripts only run on relevant records.

Note: Any and all scripts created before NetSuite 2020.1 are not localization context-aware to
guarantee backward compatibility.

Example: If the record localization context is determined as “France” and the context association rule is
employed, the scripts deploy in the following way:

■ The context–aware scripts deploy only on the records with localization context “France.”
■ Any other scripts deploy on all the records.

Subsidiary Hierarchy Modification


As of 2020.1, NetSuite enables users with appropriate permission to modify their subsidiary hierarchy
structure, if required. Businesses may need to modify their subsidiary hierarchy when they change the
headquarter subsidiary, or to elevate a subsidiary in the hierarchy.

For details about the subsidiary hierarchy modification functionality, see the help topic Subsidiary
Hierarchy Structure Modification.

Contact Customer Support for assistance with subsidiary hierarchy modification.

Automated Intercompany Management Preferences Relocated


As of 2020.1, the Automated Intercompany Management feature preferences have been removed from
the Items/Transactions subtab on the Accounting Preferences page. These preferences are now located

ReleaseNotes_2020.1.0.pdf — Subject to Change


Administration 20

at Setup > Accounting > Preferences > Intercompany Preferences. You must have the Setup Accounting
permission to access the Intercompany Preferences page. For more information about the Automated
Intercompany Management preferences, see the help topic Intercompany Preferences.

Internal Tags Displayed in Translated Record and Transaction


Names
You may see internal tags in translated record and transaction names in the user interface. For example,
instead of Record, you may see {#Record#}. These tags may be related to record renaming. If you find
these tags displayed in the user interface, please contact NetSuite Customer Support so that we can make
a correction in a future release.

For more information about contacting NetSuite Customer Support, see the help topic NetSuite Support.

For more information about renaming records, see the help topic Renaming Records and Transactions.

Authentication

OAuth 2.0 Delegated Access for REST Web Services and


RESTlets
A new approach to access REST Web Services and RESTlets is now available. OAuth 2.0 provides an
alternative to Token-based Authentication. OAuth 2.0 is more straightforward to implement, because
request signing is not required. OAuth 2.0 has a standard authorization code grant flow at the end of
which an application gets a pair of tokens – an access token and a refresh token. The access token is
valid for 60 minutes and is used to access the protected resource. After the access token expires, the
application uses the refresh token to request a new access token, without the requirement to initiate the
flow from the very beginning.

Note: The refresh token expires after 7 days. After it has expired, an application initiates the flow
from the first step.

The authorization code grant flow for OAuth 2.0 consists of the following steps:

1. An authorization request is sent to the authorization endpoint URI.


2. If there is no active session, the user logs in to NetSuite. When the authorization request is
received, a consent screen displays where the user can allow or deny authorization for an
application to access protected NetSuite resources. If the user grants access to the application on
the consent screen, the redirect follows to redirect URI with the authorization code received.
3. The application exchanges the authorization code for the access and refresh tokens on the Token
Endpoint URI.

To enable OAuth 2.0 feature, go to Setup > Company > Enable Features. On the SuiteCloud tab, in the
Manage Authentication section, check the OAuth 2.0 box. When this feature is enabled, the user must
configure the use of OAuth 2.0 on the integration record.

Defining OAuth 2.0 on Integration Records


To define OAuth 2.0 on integration records, go to Setup > Integration > Manage Integrations. To edit a
record, click the name of the record. To create a new record, click New.

On the Integration setup page, you should set values for the following fields:

ReleaseNotes_2020.1.0.pdf — Subject to Change


Administration 21

■ Scope – You must choose the type of protected resources for which a user can use OAuth 2.0 for
access. You can enable RESTlets, REST web services, or both.
■ Redirect URI – You must enter a Uniform Resource Identifier (URI) that uses the HTTPS protocol
(recommended) or a custom URL schemes.

Important: The transport-layer security is mandatory on the Redirect URI.

■ Authorization Code Grant – You must check this box for OAuth 2.0 to work.
■ For the following optional fields, select files that have been uploaded to your File Cabinet:
□ Application Logo
□ Application Terms of Use
□ Application Privacy Policy

After you save the page, the system displays the client ID and client secret. You should save the client ID
and client secret, as they are required for client authentication in OAuth 2.0 authorization code grant flow
when the access and refresh tokens are generated.

Warning: The client ID and client secret are only displayed after you save a new integration
record. If you lose or forget the client ID and client secret, you must reset them to obtain new
values. Treat these values as you would a password.

New OAuth 2.0 Permissions


The OAuth 2.0 feature introduces two new permissions:

■ OAuth 2.0 Authorized Applications Management:


□ Is primarily for Administrators or roles with Core Administration Permissions.
□ Requires two-factor authentication (2FA).
□ Enables users to view or revoke any OAuth 2.0 authorized applications in the account.
■ Log in using OAuth 2.0 Access Tokens – enables users to:
□ Access REST Web Services and RESTlets using OAuth 2.0 access tokens.
□ View their OAuth 2.0 authorized applications.
□ Revoke OAuth 2.0 authorized applications they authorized previously.

For more information, see the help topic OAuth 2.0.

Deprecation of Google OpenID SSO and NetSuite Inbound SSO


Features
Google OpenID Single Sign-on (SSO) and the NetSuite proprietary Inbound Single Sign-on (SSO) features
are targeted for deprecation. Partners and customers with solutions based on these features must
update these solutions to use an alternative inbound single sign-on feature.

OpenID Connect (OIDC) SSO and SAML SSO provide alternatives for inbound SSO access to NetSuite and
Commerce websites.

■ To use OpenID Connect (OIDC) SSO, see the help topics OpenID Connect (OIDC) Single Sign-on and
OpenID Connect (OIDC) Access to Web Store.
■ To use SAML SSO, see the help topics SAML Single Sign-on and SAML Single Sign-on Access to Web
Store.

ReleaseNotes_2020.1.0.pdf — Subject to Change


Administration 22

The deprecation schedule is as follows:

■ As of the 2020.1 upgrade, partners and customers will no longer be permitted to use the NetSuite
proprietary Inbound SSO feature or the OpenID SSO feature to create new solutions.
■ Before the 2020.2 release, partners and customers must migrate existing solutions using OpenID SSO
to use OpenID Connect (OIDC) or SAML SSO.
■ Before the 2021.1 release, partners and customers must migrate existing solutions using NetSuite
Inbound SSO to use OpenID Connect (OIDC) or SAML SSO.

In addition to the deprecation of the NetSuite and Google OpenID inbound SSO features, requests using
the ssoLogin operation to access SOAP web services must transition to use Token-based Authentication
(TBA). For more information, see Operations Removed in 2020.1 SOAP Web Services Endpoint, Token-
based Authentication (TBA), and Token-based Authentication and Web Services.

Smooth NetSuite Login Experience with SAML SSO or OIDC SSO


You can configure SAML SSO or OpenID Connect (OIDC) SSO for inbound SSO access to your NetSuite
account. When a user requests https://<accountID>.app.netsuite.com their previous login history is taken
into account.

This review of login history results in an automatic redirect of the user to their identity provider login page
if one or more of the following conditions are met:

■ The previous session was associated with an SSO role with any of the following permissions assigned:
□ SAML Single Sign-on
□ OpenID Connect (OIDC) Single Sign-on
■ Primary Authentication Method box is checked in user’s account SAML configuration and previous
session was not authenticated through the NetSuite login form. This condition applies to a fresh
browser, too.

If none of the conditions above is met, the user is redirected to the NetSuite login form.

TBA Authorization Flow Enhancements


The Token-based Authentication (TBA) Authorization Flow has been enhanced to improve the experience
for application developers. Enhancements include:

■ The realm parameter (also called the Company ID and the Account ID) is no longer required. For
the first two steps of the flow, the developer should use the account-specific domain. However, if the
account ID is not known, requests can be sent to the system.netsuite.com domain.
■ The callback URL now supports multiple ports on a localhost (http://localhost:*). This is the only
case where use of the asterisk (*) character is permitted.
■ A new tokeninfo endpoint returns information about a user based on the access token. The endpoint
is https://<accountID>.restlets.api.netsuite.com/rest/tokeninfo, where <accountID> is a variable
for the company’s account ID. A response to a GET request contains data in JSON format, including
information such as:
□ Company Name
□ Company ID (account ID)
□ Role Name
□ Role ID
□ Entity ID

ReleaseNotes_2020.1.0.pdf — Subject to Change


Administration 23

For more information, see the help topic The Three-Step TBA Authorization Flow.

Inbound SSO Access to Commerce Websites Through OpenID


Connect (OIDC)
As of 2020.1, OpenID Connect (OIDC) can be used to access Commerce websites as an alternative to
SAML Single-Sign on. With OIDC, users have autonomy over security administration because an OpenID
Connect Provider (OP) manages security administration.

The following restrictions apply to the use of OIDC for Commerce websites:

■ OIDC access is supported only for websites on custom domains, not on netsuite.com.
■ You cannot use both SAML Single Sign-on and OIDC Single Sign-on for the same website. You must
choose one single sign-on method.
■ All users must use the same type of credentials, either logging in using the website login form or OP
login form.
■ A website must be fully protected to support the OIDC Single Sign-on feature. To provide this
protection for the website, you must do the following:
□ On the Set Up Web Site page, on the Web Presence subtab, in the Web Site section, check the
Advanced Site Customization box.
□ Go to Setup > Site Builder > Set Up Web Site. On the Shopping subtab, in the Registration Page
section, check the Password-Protect Entire Site box.

To enable OpenID Connect (OIDC) feature, go to Setup > Company > Enable Features. On the SuiteCloud
tab, in the Authentication section, check the OpenID Connect (OIDC) Single Sign-on box.

An Administrator must configure an application's OIDC access to NetSuite. The first step is to choose an
OP. To find a certified OP vendor, go to https://openid.net/certification. To register a client application
(website), use the OP administration tools with the client_secret_basic authentication method. Use the
client ID and client secret to configure the inbound single sign-on for websites in NetSuite.

Important: The OIDC configuration is not shared between the NetSuite application and
Commerce websites. An Administrator must configure OIDC on the SSO tab of the website’s setup
page. Website users must be assigned the OpenID Connect (OIDC) Single Sign-on permission to
log in to the website successfully.

If a valid configuration of OIDC is present for a website:

■ If there is no active session, users are redirected to the OP login form for authentication. After
successful authentication, users are returned to the requested protected resource.
■ If there is an active session, the requested protected resource is displayed.

Note: Single logout (SLO) is not supported at this time.

For more information, see the help topic OpenID Connect (OIDC) Access to Web Store.

Service Provider-Initiated Flow Support for SAML Single Sign-


on Access to Commerce Websites
Users can now access Commerce websites using the Service Provider-Initiated Flow for SAML Single
Sign-on. If you have a valid configuration of SAML Single Sign-on for a website, the Service Provider-
Initiated flow starts with a SAML request from the Service Provider. Users authenticate themselves with
the Identity Provider (IdP). After authentication, users are redirected to the requested protected resource.

ReleaseNotes_2020.1.0.pdf — Subject to Change


Administration 24

Support for this feature is available only in accounts where the SAML Single Sign-on feature is enabled.

The following restrictions apply to the Service Provider-Initiated Flow:

■ The SAML Single Sign-On Service Provider-Initiated Flow is supported only for websites on custom
domains, not on netsuite.com.
■ You cannot use both SAML Single Sign-on and OIDC Single Sign-on for the same website. You must
choose one single sign-on method.
■ All users must use the same type of credentials, either logging in using the website login form or IdP
login form.
■ A website must be fully protected to use the SAML Single Sign-On Service Provider-Initiated Flow. To
protect your website, you must do the following:
□ On the Set Up Web Site page, on the Web Presence subtab, in the Web Site section, check the
Advanced Site Customization box.
□ Go to Setup > Site Builder > Set Up Web Site. On the Shopping subtab, in the Registration Page
section, check the Password-Protect Entire Site box.

Important: For SAML SSO configuration, follow the SAML 2.0 specification.

For more information, see the help topic SAML Single Sign-on Access to Web Store.

Session Invalidation on Commerce Websites Can Result from


Changes to User Credentials
For enhanced security, a change in behavior has been introduced for Commerce websites – explicit
session invalidation. Changes to a user’s credentials during an active session can result in session
invalidation for that user. User credentials include a user’s password, whether the assigned role exists,
and whether a user is active. If the user’s credentials are changed, explicit session invalidation occurs.

Note: If a user has multiple concurrent sessions, and the user changes the password in one
session, that session remains active. However, the other active sessions will be invalidated.

Explicit session invalidation applies to all SuiteCommerce Advanced, SuiteCommerce, and Site Builder
websites. For more information, see the help topic Web Store Sessions.

Password Policy Changes for Commerce Websites


As of 2020.1, a stronger password policy is now enforced for Commerce websites. The stronger policy
applies to any newly created or changed password for users who register on Commerce websites and to
users logging in with the Customer Center role. The stronger policy is not enforced for existing users with
passwords that do not match the new criteria, unless the existing users change their passwords.

Changes to the password policy include:

■ The minimum password length has changed from six characters to eight characters.
■ Easy to guess or potentially compromised passwords are now prohibited.

Embedding Sensitive Website Pages in an iFrame is Prohibited


Oracle NetSuite prohibits the presentation of sensitive pages in an iFrame (an inline frame, using the
HTML tag <iframe>) on Commerce website pages. In January 2015, using an iFrame to present NetSuite

ReleaseNotes_2020.1.0.pdf — Subject to Change


Administration 25

login pages was prohibited. Browsers would no longer render the NetSuite login pages on a Commerce
website. This prohibition against presenting NetSuite pages in an iFrame has been extended to apply to
Change Password and Change Email Address pages.

If you have a Site Builder website, review your authentication logic to ensure your account complies with
the security policy described in Secure Login Access to Your NetSuite Account. See also Displaying Login
Fields on Your Web Page. If you are presenting sensitive pages in an iFrame, you must make changes to
comply with this prohibition before 2020.2.

Cloud Infrastructure

Data Center-Specific NetSuite Domains for Integrations are


Targeted for Deprecation
You should transition your integrations to use account-specific domains as soon as possible. Using
account-specific domains removes dependencies on the data center where your account is hosted. The
schedule for the deprecation of data center-specific domains is as follows:

■ As of 2020.1, integration requests sent to data center-specific domains will no longer be processed
in sandbox, special purpose, and Release Preview accounts. In most cases, requests to the following
domains will be affected by this deprecation:
□ webservices.na0.netsuite.com
□ webservices.eu1.netsuite.com
□ rest.na0.netsuite.com
□ rest.eu1.netsuite.com

Note: Special purpose accounts include test drive, development, demo, and student
accounts. A few special purpose accounts use the webservices.na2.netsuite.com and
rest.na2.netsuite.com data center-specific domains. Special purpose accounts sending
requests using these domains will also be affected by the deprecation.

■ Targeted for 2020.2, integration requests sent to data center-specific domains will no longer be
processed in production accounts.

In cases where an application accesses more than one NetSuite account, you can use dynamic discovery
methods to obtain the correct URLs. For information about the available discovery methods, see the help
topic Dynamic Discovery of URLs for SOAP Web Services and RESTlet Clients.

All NetSuite account types can still access the following domains for dynamic discovery purposes:

■ webservices.netsuite.com: To dynamically discover the URL for SuiteTalk SOAP web services
requests.
■ rest.netsuite.com: To dynamically discover URLs for NetSuite services in RESTlets, or the URL for
SuiteTalk REST web services.

Automated Conversion of Data Center-Specific Domains in


NetSuite
Before 2016.2, all NetSuite domains contained a data center identifier as part of the domain name.
This data center identifier made it difficult to move an account to a different data center. To take full

ReleaseNotes_2020.1.0.pdf — Subject to Change


Administration 26

advantage of NetSuite’s cloud architecture, you should not use data center-specific URLs to access
NetSuite resources.

Account-specific domains were introduced beginning in 2016.2. An account-specific domain includes your
NetSuite account ID as part of the domain name. Account-specific domains are available for access to the
NetSuite UI, and for external (Online) forms, External Suitelets, RESTlets, SuiteTalk SOAP and REST web
services, SuiteAnalytics Connect, and external catalog sites (WSDK). For more information, see the help
topic URLs for Account-Specific Domains.

You should transition to use account-specific domains as soon as possible. The NetSuite application can
help you and your users during this transition.

Automated Assistance with the Transition to Account-Specific Domains


The NetSuite application offers the following automated methods to assist you during the transition to
account-specific domains:

■ Automatic Redirection
■ Automatic On-Read Translation of Data Center-Specific URLs

See Additional Assistance with the Transition to Account-Specific Domains for other features that can help
you with the transition to account-specific domains.

Note: You should transition your integrations to use account-specific domains as soon
as possible. See Data Center-Specific NetSuite Domains for Integrations are Targeted for
Deprecation.

Automatic Redirection

When users access the NetSuite UI, the browser automatically redirects them from the
system.netsuite.com domain to an account-specific domain. This redirection is transparent for users.

Automatic On-Read Translation of Data Center-Specific URLs

You should transition from using data center-specific URLs in your account. However, it is not always
possible to quickly change all of your embedded links to use account-specific domains. Data center-
specific links may be embedded in the Shortcuts portlet, in custom fields and custom center links, and in
marketing campaign email and online forms. When the NetSuite application encounters a data center-
specific URL during an active session, it automatically translates the URLs in the request to an account-
specific domain. This automatic translation is transparent for users.

For custom center links and custom fields, data center-specific URLs are translated on-read to the
account-specific domain. (That is, as the URL is read, the system translates a data-center specific URL
to the appropriate account-specific domain URL.) The on-read translation of the URL has the benefit of
making an extra HTTPS request unnecessary. An extra HTTPS request would normally result in an HTTP
response status 301 Moved Permanently for a permanent redirect, but this error does not occur. The
correct URL using the account-specific domain URL is already part of the rendered data or page in the
browser.

Important: Be aware that on-read translation does not change the hard-coded data center-
specific URLs in your account. This feature translates these URLs to account-specific domains
during active sessions. You should make a plan to update the data center-specific links in your
account and replace them with links containing your account-specific domain.

For more information, see the following release notes:

ReleaseNotes_2020.1.0.pdf — Subject to Change


Administration 27

■ Account–Specific Domains Supported in Custom Fields and Custom Center Links


■ Account-Specific Domains for Marketing Campaigns and Online Forms

Additional Assistance with the Transition to Account-Specific Domains

There are two features available in NetSuite that can help you ensure that your integrations are using
account-specific domains. For more information, see:

■ Traffic Health
■ Enforce Account-Specific URLs for RESTlets and SuiteTalk SOAP Web Services

Traffic Health

The Traffic Health page is available in the NetSuite UI. The Traffic Health page can help you find URLs for
SOAP web services and RESTlet requests in your account that are using data center-specific domains.
Administrators and other users with the Set Up Company permission can go to Setup > Company >
Company Management > Traffic Health to access this page. For more information, see the help topic
Traffic Health. See also How to Transition from Data Center-Specific Domains.

Note: Requests that are automatically redirected by the HTTP protocol are shown in Traffic
Health reports. For example, the extra HTTPS request necessitated by an automatic redirect is
shown on a Traffic Health report.

Enforce Account-Specific URLs for RESTlets and SuiteTalk SOAP Web Services

Data center-specific domains for integration requests in sandbox and special purpose accounts will
be deprecated when these accounts are upgraded to 2020.1. Special purpose NetSuite account
types include test drive, development, demo, and student accounts. Data center-specific domains for
integration requests are also deprecated in 2020.1 Release Preview accounts. Data center-specific
domains for RESTlets and SuiteTalk SOAP web services will be deprecated in production accounts in
NetSuite 2020.2.

Before your production account is upgraded to 2020.2, you can verify whether integrations in your
account are using account-specific domains. You can determine whether your integrations meet the
requirement to use account-specific domains when the Enforce Account-Specific URLs for RESTlets
and SuiteTalk SOAP Web Services feature is enabled. Enabling this feature lets you create your own
test window in your account. If your integrations execute as desired while the feature is enabled, you can
expect that your integrations will run smoothly when your account is upgraded to NetSuite 2020.2. To
enable this feature, go to Setup > Company > Enable Features and click the SuiteCloud subtab.

For more information, see the help topic Create Your Own Test Window in the topic Traffic Health.

New Content Delivery Network Available for Secure Commerce


Websites
A new Content Delivery Network (CDN) is available for secure Commerce websites. The new CDN, a new
hosting infrastructure, and a new type of SSL certificate work together to increase the security of your
Commerce website. When you change over to a different CDN, it is a good practice to change the keys
used by the SSL certificate. Changes to the SSL certificate renewal process support this practice.

After May 31, 2020, you will not be able to use your existing SSL certificate together with CDN caching.
Before the deadline, you will have to obtain a new certificate where Oracle NetSuite manages the
certificate key pair for CDN functionality to remain enabled. Oracle NetSuite now offers you two options
for certificate deployment.

ReleaseNotes_2020.1.0.pdf — Subject to Change


Administration 28

■ Automatic Certificate option: Oracle NetSuite offers the Automatic Certificate option, at no additional
cost to you, to simplify the process of retrieving a new certificate.
□ In 2020.1, Oracle NetSuite can obtain a Domain Validated (DV) certificate dedicated exclusively to
your NetSuite-hosted website. This process is completely transparent to you and your account.
Oracle NetSuite will also handle renewal of these certificates.
□ You can enable the Automatic Certificate option on the Domain page in the NetSuite UI. (Go to
Setup > SuiteCommerce Advanced /Site Builder > Domains.) The Automatic Certificate option lets
you seamlessly migrate to a new DV certificate. Selecting the Automatic Certification option permits
Oracle NetSuite to obtain and manage your certificate.
□ This NetSuite-managed certificate is exclusively for your NetSuite-hosted website. This exclusivity
prevents potential malicious misuse of your website certificate. It is not possible to export the
private key of the certificate from NetSuite.
■ Manual Certificate option: If you prefer to use a certificate issued by a Certificate Authority (CA) of
your choice, you will be able to download a CSR (Certificate Signing Request) for your domain in the
NetSuite UI. Your CA must process this CSR. When you receive the certificate from your CA, you must
upload it through the NetSuite UI so that the certificate can be deployed to your NetSuite-hosted
website. You cannot deploy this certificate outside of NetSuite.

If you wish to manage the SSL certificate yourself, you must act well in advance of May 31, 2020. You
must download the CSR from NetSuite, obtain a certificate from a CA of your choice, and upload the
certificate to NetSuite.

Important: If you cannot replace your certificate by May 31, 2020 (using either the Automatic
Certificate or the Manual Certificate option) Oracle NetSuite will temporarily switch off the CDN
caching for your website. Without caching, your website performance may be slower. Switching
off the CDN gives you more time to replace your certificate. You can enable CDN caching again
after you use either of the two available options to replace your certificate.

The new CDN will be a front-end domain, hosting websites even for domains that are not configured for
caching. After the upgrade to 2020.1, you must use the new certificate deployment options to renew
expiring certificates for Commerce websites. Oracle NetSuite will generate the CSR. You will no longer be
able to generate the CSR yourself with OpenSSL as you may have done in the past.

For more information, see the help topic Manual Certificates.

Incorrect HTTP Status Code 206 is Changing to 500


In the past, some browsers inappropriately processed the HTTP status code 500 (Internal Server Error).
As a work-around for such situations, NetSuite began using the HTTP status code 206 (Partial Content).
The problem that caused some browsers to inappropriately process the 500 error code has long been
resolved. However, this work-around (returning the 206 status code) continued to be used in NetSuite.
In 2020.1, NetSuite will start returning the correct HTTP status code 500 instead of returning status code
206.

Important: Attention NetSuite customers, partners, the Software Development Network


(SDN), and NetSuite Professional Services (PSG): You may have created customizations (for
example, RESTlets or Suitelets) where the way the error is handled depends on the HTTP status
code 206 (Partial Content). If so, these customizations should be modified so that they also
support the correct status code 500 (Internal Server Error). HTTP status code 500 corresponds to
the actual error situation that may occur in NetSuite.

This work-around (incorrectly returning the 206 status code) is targeted to be removed from NetSuite in
June 2020.

ReleaseNotes_2020.1.0.pdf — Subject to Change


Banking 29

Banking
This release note was updated April 15, 2020.

NetSuite 2020.1 includes the following enhancements to banking features:

■ Bank Feeds
■ Financial Institution Connectivity API
■ Bank Data Matching Improvements
■ Automatic Import of Bank Statement Files Through Enhanced SFTP Connectivity
■ Bank Feeds SuiteApp
■ Bank Statement Parsers Enhancements

Bank Feeds
Administrators who have online banking set up with their financial institution can now set up bank feeds
directly from their financial institution accounts. This feature enables you to monitor and manage your
cash flow needs with better accuracy and predictability.

To set up bank feeds, you can use the new Bank Feeds SuiteApp, which uses a third-party data
aggregation service to securely connect to financial institutions. To use the SuiteApp, your NetSuite role
must have the Financial Institution Records permission with a full access level. For more information
about the SuiteApp, see the help topic Bank Feeds SuiteApp.

When you set up bank feeds with the Bank Feeds SuiteApp, you can:

■ Directly connect to supported financial institutions in the United States and Canada
■ Automatically import bank data and account balances on a daily basis directly from your financial
institution into NetSuite, which eliminates the need for manual import
■ Receive daily updated cash balances

Note: The Bank Feeds SuiteApp is only available for financial institutions in the United States or
Canada. However, another way you can set up bank feeds is to develop a custom plug-in and use it
in a format profile record. For details, see Financial Institution Connectivity API.

Whether you use the SuiteApp or develop your own plug-in, you need to configure a connection to your
financial institution. You do this on the new Connectivity Configuration subtab on the format profile
record. For details, see the help topic Configuring a Connection to a Financial Institution. To configure a
connection using the plug-in and transaction parser available through the Bank Feeds SuiteApp, see the
help topic Setting Up Bank Feeds Integration.

After configuration, the Account Mapping subtab is populated with information according to the financial
institution accounts for which you have a configured connection. The following illustration displays a
populated Account Mapping subtab:

ReleaseNotes_2020.1.0.pdf — Subject to Change


Banking 30

For more information, see the help topic Mapping Accounts for Financial Institution Connectivity.

After you save the format profile, NetSuite securely downloads the last 60 calendar days of available bank
data, by default. NetSuite also schedules daily updates of your financial data.

Note: This schedule is generated by the system and cannot be modified.

Updated bank balances and imported bank data appear on the Match Bank Data page (previously called
Confirm Transaction Matches). In addition to daily updates, there is also a manual update function on the
Match Bank Data page. For details, see the help topic Updating Imported Bank Data.

As soon as you log in to NetSuite, you can view the status of your accounts through the Account
Reconciliation Summary portlet on the Home dashboard.

To go to the Match Bank Data page, click the value in the Items to Match column next to an account.

Financial Institution Connectivity API


Note: The Financial Institution Connectivity API replaces the Bank Connectivity API, which is
deprecated as of 2020.1.

In 2019.2, you could only import a bank statement file manually on the Statement File Import page. In
2020.1, you can use the new Financial Institution Connectivity API to develop a SuiteScript plug-in that
can automate the import process. A Financial Institution Connectivity Plug-in, in conjunction with a Bank
Statement Parser Plug-in, provides an alternative way to set up daily bank feeds, if you cannot use the
Bank Feeds SuiteApp.

The API enables you to develop custom SuiteScript plug-ins built for specific financial institutions. You can
use these plug-ins for financial institutions both inside and outside of the United States and Canada.

Note: The SuiteApp includes a single non-configurable plug-in that you can only use for financial
institutions in the United States or Canada.

The API also enables you to develop your own connectivity applications that provide more options for the
way that your system connects to financial institutions.

For more information on the Financial Institution Connectivity Plug-in and its benefits, see the help topic
Financial Institution Connectivity Plug-in Interface Overview. For details on the Bank Statement Parser
Plug-in, see the help topic Bank Statement Parser Plug-in Overview.

You can also use the Financial Institution Connectivity API to develop plug-ins in the SuiteCloud
Development Framework (SDF). For details, see the help topic Financial Institution Connectivity Plug-ins as
XML Definitions. For an overview of SDF, see the help topic SuiteCloud Development Framework Overview.

ReleaseNotes_2020.1.0.pdf — Subject to Change


Banking 31

In NetSuite 2020.1, to use a custom Financial Institution Connectivity plug-in, you must always create and
configure a financial institution and format profile record.

Note: You can only use standard plug-ins in the format profile provisioned by the Bank Feeds
SuiteApp. For details, see the help topic Bank Feeds SuiteApp.

To configure a direct connection to your financial institution, select a plug-in from the new Connectivity
Method dropdown list on the Format Profile page. For details on direct financial institution connectivity,
see Bank Feeds.

Note: After you save a format profile with a custom Financial Institution Connectivity Plug-in, you
cannot modify the selected plug-in.

To import manually, select the Manual Import option from the Connectivity Method list.

Note: Existing format profile records use the manual import method, which you cannot change.

For information on configuring format profiles in general, see the help topic Creating Format Profiles.

For information on configuring financial institution connectivity, see the help topic Configuring a
Connection to a Financial Institution. For information on mapping accounts in a format profile that uses
the Financial Institution Connectivity Plug-in, see the help topic Mapping Accounts for Financial Institution
Connectivity.

Bank Data Matching Improvements


NetSuite 2020.1 includes the following enhancements to the matching process:

■ Exclude Imported Bank Data


■ Bank Feeds with a Manual Update Function
■ Resize Column Width and Reorder Grid Columns
■ Workflow and Label Improvements

View the Bank Data Matching Improvements video.

Exclude Imported Bank Data


On the Match Bank Data page, you can now review and exclude imported bank data from the matching
process on the To Be Matched subtab (previously called Unmatched). You may want to exclude a
transaction if it is old or a duplicate.

To exclude data, see the help topic Excluding Imported Bank Data from the Matching Process.

Bank Feeds with a Manual Update Function


Previously, financial institution account data on the Confirm Transaction Matches page was static. You had
to manually import new data for reconciliation.

In 2020.1, if the administrator configures a format profile for direct connectivity to a financial institution,
NetSuite automatically updates bank data each day. On the Match Bank Data page, you receive newly

ReleaseNotes_2020.1.0.pdf — Subject to Change


Banking 32

imported bank data, as well as daily bank balances of the account and the bank balance date. For more
details, see Bank Feeds.

If your account in NetSuite does not contain the latest data, or if there was an import error, you can
initiate a manual update on the Match Bank Data page. The Intelligent Transaction Matching feature
automatically matches any data that NetSuite creates after the last successful import.

For details, see the help topic Updating Imported Bank Data. For details on custom matching rules and
manual transaction matching, see the help topics Creating Custom Transaction Matching Rules and
Creating Account Transactions During the Matching Process.

Resize Column Width and Reorder Grid Columns


The process to view unmatched and matched data includes the following improvements:

■ Resize column widths – Text in a field is sometimes too long to fit in the column. Resize the column
width to view the full information. See the help topic Viewing Details of Account Transactions.
■ Reorder columns – Adjust the order of columns to suit your needs. For example, you can move the
Amount columns next to each other for comparison. See the help topic Filtering Imported Bank Data
and Account Transactions.

Workflow and Label Improvements


The bank data matching workflow includes the following improvements:

■ Label changes – For a more intuitive user experience, the following label updates appear on the
Match Bank Data page for 2020.1:
□ To indicate that the data requires manual matching, the Unmatched subtab is now To Be
Matched.
□ To indicate that the matches are ready to submit and be cleared in the system, the Review Matches
subtab is now Matches to Submit.
□ To avoid any confusion around the difference between transaction confirmation and reconciliation,
the Confirm Transaction Matches button is now Submit. After you match transactions, submit your
matches.

Note: A banner message appears that says NetSuite is confirming and clearing
transactions.

To reconcile your matches, click the new Reconcile Account Statement link at the top of the page.
■ New links – The top of the Match Bank Data page now includes a horizontal list of links that let you
do other tasks, such as import or reconcile data. The links that appear are role-dependent and can
include the following:
□ Import Statement
□ Reconciliation Matching Rules
□ Go To Register
□ Reconcile Account Statement
The Reconcile Account Statement page also contains a horizontal list of links (role-dependent), which
includes the following:
□ Reconciliation History Report
□ Reconciled Statements List Page
□ Go To Register

ReleaseNotes_2020.1.0.pdf — Subject to Change


Employee Management 33

Employee Management
NetSuite 2020.1 includes the following enhancements to Employee Management features:

■ Manager Self-Service Enhancements for Employee Change Requests


■ CSV Import for Effective Dating
■ Advanced Employee Permissions Customizable Restrictions
■ Advanced Employee Permissions Exclusion of Employees Permission
■ New Permission for Advanced Employee Permissions
■ Bonuses in Compensation Tracking
■ Expense Account Override
■ Employee-Specific Expense Report Attachments in File Cabinet
■ Time Modification Enhancements
■ Vendor Time Thresholds
■ Onboarding Checklist Enhancements
■ Onboarding and Offboarding Plans Enhancements
■ Deprecation of TribeHR Payroll Integration

Manager Self-Service Enhancements for Employee Change


Requests
In NetSuite 2020.1, the Employee Change Request feature has been enhanced with two improvements:

■ Guidelines and relevant links


■ Salary and job duration insights

If you are an HR Administrator, you can enter guidelines and relevant links on the Employee Change
Request Type page to assist managers in initiating employee change requests (ECRs).

The insights for employee change requests show the range of employees’ salary increases and job
duration based on two years of organizational data. These insights provide context for the potential
change and help managers and approvers make an informed decision when approving or declining
change requests. To enable and select insights, go to Setup > HR Information System > Employee Change
Request Types and click the Insights tab on the change request type. For more information, see the help
topic Setting Up Employee Change Request Types.

CSV Import for Effective Dating


In NetSuite 2020.1, customers can use CSV Import to perform bulk updates to the employee record for a
past, current, or future date. This feature supports all effective-dated fields in the employee record.

To use CSV Import for Effective Dating, you must have:

■ Full permissions for Import CSV Records


■ Full Employee permissions
■ Full Employee Record permissions
■ Edit permissions for Employee Effective Dating

ReleaseNotes_2020.1.0.pdf — Subject to Change


Employee Management 34

■ Edit permissions for Employee Change Reason

To perform a CSV Import with Effective Dating, include the following columns

■ Internal ID
■ Effective Date
■ Change Reason
■ Change Reason Details

Order the rows in the CSV from past to future-dated changes. When dealing with effective-dated conflicts,
the system will automatically apply future-dated changes as they come up. For details, see the help topic
CSV Imports Overview.

The imported changes can be viewed in the Effective Date Log.

Advanced Employee Permissions Customizable Restrictions


In NetSuite 2020.1, you can now customize restrictions for Advanced Employee Permissions to restrict a
role’s access to employee records by location and subsidiary.

Previously, you could only select from the following restrictions:

■ Active & Non-Terminated


■ Subordinates
■ Own Only
■ Inherit From Role

To customize restrictions for Advanced Employee Permissions, you must have the Manage Custom
Restrictions permission. For details, see the help topic Custom Restrictions for Advanced Employee
Permissions.

Advanced Employee Permissions Exclusion of Employees


Permission
In NetSuite 2020.1, the Lists > Employees permission takes precedence over any of the employee
permissions that are part of the Advanced Employee Permissions feature. This change is a step in
separating the legacy permission model from the Advanced Employee Permissions feature. The Lists >
Employees permission gives full-record access to employee records. The Advanced Employee Permissions
feature makes it possible to give access to only specific fields and sublists on employee records.

You should review the standard and custom roles in your account that include the Lists > Employees
permission. Make sure that all users with these roles should continue to have full access to employee
records. For any users who should not have full access to employee records, you can assign them to a
different role that does not include the Lists > Employees permission. If you have the Administrator role,
you can create alternate custom roles for these users. For details, see the help topic Advanced Employee
Permissions Overview.

New Permission for Advanced Employee Permissions


In NetSuite 2020.1, the Advanced Employee Permissions feature now includes the Employee Record Full
permission. A role with this permission can access all the information on the employee record, except for

ReleaseNotes_2020.1.0.pdf — Subject to Change


Employee Management 35

the fields and sublists that the Employee System Access permission exposes. For more information, see
the help topic Employee Record Full Permission Overview.

Bonuses in Compensation Tracking


The Compensation Tracking feature now supports employee bonuses. You can create multiple bonus
types, such as annual bonus, sign-on bonus, and so on. You can also track bonus targets and bonus
awards for your employees. If you use SuitePeople U.S. Payroll, you can pay bonuses to your employees.
For more information, see the help topic Compensation Tracking.

Pay Employee Bonuses with SuitePeople U.S. Payroll


When you use the Compensation Tracking feature and SuitePeople U.S. Payroll together, you can pay
bonuses to your employees. On a payroll batch, to include bonuses for the pay period, you can check the
new Pay Bonuses box. You can also set a preference to check the Pay Bonuses box by default. For more
information, see the help topic Integrating Bonuses with Payroll.

Workbook Template – Employee Bonus History and Current


Compensation
The Compensation Tracking feature includes a SuiteAnalytics workbook template, Employee Bonus
History and Current Compensation. This workbook template provides a summary of employees' current
base compensation and a history of employees' bonuses, if applicable. For more information, see the help
topic Employee Bonus History and Current Compensation Workbook.

Expense Account Override


In NetSuite 2020.1, you can now select an expense account for individual expense items on an expense
report. Previously, expense accounts on line items were only determined by the selected expense
category. The Account field is automatically hidden on expense report forms for line items. You must
customize your expense report forms to enable expense account override.

You can now remove the Category field from expense reports and the field is no longer required. When
added to a custom form, the Account field is now required. It is populated automatically by the Category
field. However, you can update the Account field to select a different account.

Note: You cannot use personal corporate card expenses if you hide the Category field on
expense line items.

For more information, see the help topics Understanding Expense Categories and Creating Custom Entry
and Transaction Forms.

Employee-Specific Expense Report Attachments in File


Cabinet
NetSuite 2020.1 introduces two features to support a new expense report file structure in the File
Cabinet. The new structure is required in NetSuite 2020.2. To enable the employee-specific attachments,
go to > Setup > Company > Enable Features. Under Data Management, check the Enhanced File Security

ReleaseNotes_2020.1.0.pdf — Subject to Change


Employee Management 36

– Use Employee Specific Expense Folders box. When you enable this feature, expense file attachments
automatically submit to a dedicated employee expenses folder, predefined by the system.

If you have the Administrator role, you can see the contents of these folders, but employees can no
longer locate or access these attachments from the File Cabinet. Employees must instead access their
expense attachments from the expense report record.

Also under Data Management, you can enable Enhanced File Security – Migrate Files to migrate legacy
expense file attachments to their new employee-specific folders.

New accounts provisioned in NetSuite 2020.1 automatically adopt the new folder structure. Existing
customers can test the new file structure in the sandbox or release preview accounts.

Time Modification Enhancements


NetSuite 2020.1 introduces the following enhancements to bulk update time entries:

■ If you use Charge-Based Billing, you can now update unbilled or non-posted time entries with
generated charges. When you update time entries with generated charges, NetSuite deletes all
charges associated with the modified time and generates new charges at the next scheduled charge
generation.
■ When you filter time entries on the Update Time Entries page, only time entries you have permission
to edit appear in the list for selection.
■ You can bulk edit all time entries submitted for assigned projects. You must be assigned the
project manager role on the project record and have full access to the Bulk Time Entry Modification
permission in your assigned NetSuite role. This also enables you to edit individual time entry records
and timesheets submitted for your projects.
■ The time modification request record is now available to use with workbooks. You can use a workbook
to audit all time entry updates and actions. For more information, see the help topic Custom
Workbooks and Datasets.
■ When you enable the Override Rates on Time Records preference, you can now see the Rate and
Price Level field for each time entry available for selection.
■ When you bulk update the approval status of time entries to Rejected, you can now add a rejection
note.

For more information on these enhancements, see the help topic Updating Time Entries.

Vendor Time Thresholds


In NetSuite 2020.1, you can now disable time thresholds on vendor time. Previously, time thresholds
applied to both employee and vendor time. A new preference is available at Setup > Accounting >
Accounting Preferences > Time & Expenses > Time Tracking. NetSuite sets this preference by default. To
disable time thresholds for vendor time, clear the Apply Time Threshold to Vendor Time box.

For more information, see the help topic Time Thresholds.

Item Record Management


NetSuite 2020.1 includes the following enhancement to item record management features:

■ Inventory Costing Preferences

ReleaseNotes_2020.1.0.pdf — Subject to Change


Item Record Management 37

Inventory Costing Preferences


To ensure an optimal customer experience, new NetSuite accounts created after NetSuite 2020.1 do not
allow you to access run costing after creating a transaction entry. NetSuite Administrators can still set the
run costing frequency to Every Hour or Based on a Custom Schedule.

Inventory Management
This release note was updated July 1, 2020.

NetSuite 2020.1 includes the following enhancements to Inventory Management features:

■ Supply Allocation Exceptions Management


■ Partially Receive Transfer Order Fulfillment Quantities when Transfer is at Cost
■ Warehouse Management System Enhancements
□ Support for GS1 Bar Code Types
□ Inbound Shipment Management Integration
□ Multi-App Support
□ Export and Import of Custom Mobile Processes
□ SuiteScript Exposure of Warehouse Management Records
□ Mobile Printing
■ Supply Chain Control Tower Enhancements
■ Quality Management – High Volume Sampling
■ Shelf-to-Sheet Inventory Count
■ Warranty and Repairs Management Enhancements
■ Support for Printing Shelf-to-Sheet Count Records
■ Auto Assign UPC SuiteApp General Availability and Enhancements
■ Auto Assign UPC (Beta)
■ Actual vs. Theoretical Variance Reports

Supply Allocation Exceptions Management


In NetSuite 2020.1, Supply Allocation Exceptions Management is designed to help you make informed
reallocation choices. To respond to supply shortages, you can review all sources of supply and order
allocations to ensure that high priority sales orders ship complete and on time.

NetSuite now generates intelligent supply reallocation recommendations. To minimize the effect on
all orders, these recommendations are designed to take the resources from multiple unallocated
orders. System generated reallocation recommendations reduce the time to find, review, and execute
reallocations. After you accept a recommendation, the system automatically re-aligns the supplies to the
affected orders.

After you review allocation exceptions, you can assess all your sources of supply and existing orders.
You may need to select one or more order lines from less urgent customer orders to meet the target
sales order line requested date and quantity. After the reallocation is approved, NetSuite automatically
executes the re-allocations across the selected orders.

ReleaseNotes_2020.1.0.pdf — Subject to Change


Inventory Management 38

However, if the generated recommendations are not suitable, you can generate a new set of allocation
recommendations. You can then review reallocation scenarios until you define a solution. After you
approve an allocation, the system returns you to the order.

The following functionality is new to Supply Allocation Exceptions Management in NetSuite 2020.1.

Exceptions on Demand Orders


The Reallocate Order Items column has been added to the sales order page in the items subtab. This
column displays a Reallocate link. When a supply order has allocated demand, a link is displayed in the
Allocated Demand column. Clicking this link opens the Allocated Demand window.

In the Allocated Demand window Reallocate Order Item column, clicking the Reallocate link opens the
Reallocate Order Item page where you can reallocate items.

Exceptions on Supply Orders


When a supply order has allocated demand, the Allocated Demand column displays a link to the Allocated
Demand window. You can click this link to open the Reallocate Order Item page where you can reallocate
items.

Reallocate Order Item


The new Reallocate Order Item window is available in NetSuite 2020.1.

ReleaseNotes_2020.1.0.pdf — Subject to Change


Inventory Management 39

The new Reallocate Order Item window provides the following functionality:

■ You can Generate Recommendations.


■ Accept Recommendation and Reallocate to allocate the resources.
■ The targeted Sales Order # is displayed in the Reallocate Orders Item page header.
■ The Select Orders for Reallocation subtab displays possible source orders resources.
■ The Affected Orders subtab displays a system recommended list of orders, resources, and order
impact.
■ The Allocated Supply subtab displays the available supplies to target and candidate orders after you
allocate supplies.

The Order Page


After you allocate resources, the original order page reopens to display the following:

■ The updated Expected Ship Date.


■ Empty Days Late and Reallocate Order Item fields.
■ Updated Allocated Supply and Quantity fields.

Partially Receive Transfer Order Fulfillment Quantities


when Transfer is at Cost
NetSuite 2020.1 Supply Chain Management enables you to receive a quantity that is less than the quantity
on the fulfillment of a transfer order.

You now can create multiple partial receipts against specific fulfillments for a transfer order. In the Enter
Transfer Orders form, select the Use Item Cost as Transfer Cost box to ship and receive against transfer

ReleaseNotes_2020.1.0.pdf — Subject to Change


Inventory Management 40

orders when the system uses item cost as the transfer price. To learn more, see the help topic Entering a
Transfer Order.

To use this functionality, enable the Multi–Location Inventory. To learn more, see the help topic Enabling
the Multi-Location Inventory Feature.

When you check the Use Item Cost as Transfer Cost box, you can record the actual number of received
items instead of the total expected quantity.

Supply chain management supports the following costing methods:

■ Standard
■ Average
■ Group Average
■ FIFO

Note: Accounts with multi-book cannot partially fulfill a transfer order receipt when the transfer
order is at cost.

Warehouse Management System Enhancements


Note: Use of the Warehouse Management System (WMS) feature requires that you install the
SCM Mobile and Oracle NetSuite WMS SuiteApps. See the help topic NetSuite WMS SuiteApps.

NetSuite WMS 2020.1 includes the following enhancements to existing functionality:

■ Inventory Status Filter for Bin Lists - If you use the Inventory Status feature, you can show the
Inventory Status column in the bin table of specific mobile pages. This enhancement applies to the
list of bins in the putaway process, in the inbound shipment receiving process, and for single or multi-
order picking. By default, these mobile pages display the list of bins by status. You can filter and sort
bin lists by inventory status or available quantity.
■ Real-time Display of Recommended Bins List - Work order picking and single or multi-order picking
now displays up-to-date lists of recommended bins on your mobile device. If you use pick strategies,
they also display filtered and sorted bins based on your pick strategy definition.
For more information about recommended bins, see the help topic Recommended Bin Sorting.
■ New Pick Strategy Filter Options - On pick strategy records, the Transaction Type filter now
includes the Work Order and Replenishment options. You can apply pick strategies to either of these
transaction types. For more information, see the help topic Defining Pick Strategies.
■ Updates to the Wave Transaction - Wave transactions now set the default status to Released,
instead of Pending Release. To assign pickers to pick tasks, before you save a new wave, you must set
the status to Pending Release.
You can delete a released wave, if all of its associated pick tasks are in a Ready or Failed status and
cannot be retried.
■ Packing Enhancements
□ Packing now supports non-inventory for sale and for resale item types that have the Can Be
Fulfilled/Received box checked on the item record. It does not support other charge items.
□ For the supported non-inventory item types, you can pack only the full ordered quantity in a carton
and not any partial quantities.
□ When you manually pack orders, you can enter pack carton details, including the carton name,
weight, and dimensions. NetSuite WMS automatically updates the associated item fulfillment
records on which you can view the pack carton details.

ReleaseNotes_2020.1.0.pdf — Subject to Change


Inventory Management 41

□ If you manually pack orders, you can activate the Use custom packing lists? system rule that
enables you to set up custom PDF packing lists. NetSuite WMS provides the default packing list in
the wms_sl_CustomPrintpacklist.js script. You can copy this script and customize the PDF packing
list according your business requirements.
For more information about packing enhancements, see the help topic Packing Orders or Manually
Packing Orders and Printing Packing Lists.
■ Handling Wave Issues
On wave transactions, NetSuite WMS displays a warning message for any detected discrepancy issues
regarding its orders. Waves with discrepancy issues may contain pick tasks in In Progress status that
do not reflect the current status of the orders. Additionally, the orders in a wave may be associated
with other waves that also have pick tasks in the same state. The warning message includes a link that
enables you to resolve these issues for all affected waves. For more information, see the help topic
Updating Waves and Handling Wave Issues.

NetSuite WMS 2019.2 enhancements that are now generally available in WMS 2020.1 include the
following:

■ Bulk Processing Jobs for Fulfillments of Released Orders - NetSuite WMS uses bulk processing jobs
to create fulfillments for released orders. You can monitor the status of multiple bulk processing jobs
in real time and view any fulfillment errors.
NetSuite WMS submits bulk processing jobs for completed pick tasks, based on your Per Order or Per
Order Line fulfillment preference. The processing time to generate fulfillments varies, depending on
the number of transactions and other jobs in your queue. For more information about the fulfillment
preference, see the help topic Setting Warehouse Management Preferences.
■ Workbook Support for Warehouse Management Records - Workbook support is available for the
following records and transactions:
□ Wave transaction
□ Pick task record
□ Pick task strategy record
□ Zone record
□ Item family group record
□ Item process group record
Workbook support enables you to create SuiteAnalytics workbooks with any of these records and
perform record or transaction searches.

NetSuite WMS 2020.1 introduces the following new functionality:

■ Support for GS1 Bar Code Types


■ Inbound Shipment Management Integration
■ Multi-App Support
■ Export and Import of Custom Mobile Processes
■ SuiteScript Exposure of Warehouse Management Records
■ Mobile Printing

Support for GS1 Bar Code Types


NetSuite WMS 2020.1 supports the following GS1 bar code types for scanning:

■ GS1-128 (1D)
■ GS1 DataMatrix (2D)

ReleaseNotes_2020.1.0.pdf — Subject to Change


Inventory Management 42

You can scan the supported GS1 bar code types to enter items for inbound, inventory, or outbound
processing.
To set up GS1 bar codes, you must activate the Enable Advanced Bar Code Scanning system rule and map
bar code data to NetSuite fields.
For more information about setting up GS1 bar codes, see the help topic Bar Code Scanning Setup.

Inbound Shipment Management Integration


Inbound Shipment Management Integration enables you to process inbound shipments for your
warehouse. On a mobile device, you can receive items from inbound shipments, which updates the
associated order and inbound shipment transactions. You can post item receipts manually or configure
NetSuite to automatically generate item receipts for received orders.
This integration introduces the Enable Receive All system rule for inbound shipments. You can receive all
lots and serial numbers for items on which NetSuite populates the inventory detail on inbound shipment
lines.
For more information, see the help topic Receiving Inbound Shipment Orders.

Multi-App Support
Multi-app support enables you to register and configure multiple mobile applications in your account
with the latest SCM Mobile SuiteApp version. On a mobile device, you can switch from the NetSuite WMS
application to another NetSuite mobile application.

Export and Import of Custom Mobile Processes


NetSuite WMS 2020.1 supports the export and import of custom mobile processes. You can export a
mobile process that you customize. Then, you can also import the custom mobile process to another
NetSuite account. When you configure an imported process, you can specify the roles that can access it
on a mobile device.

SuiteScript Exposure of Warehouse Management Records


In NetSuite WMS 2020.1, the following records and transactions are exposed to SuiteScript 2.0:

■ Wave transaction
■ Pick task record
■ Pick task strategy record
■ Zone record
■ Item family group record
■ Item process group record
■ Order type record

You can create or update these records through CSV import, with the exceptions of wave transactions
and pick task records.

Mobile Printing
NetSuite WMS Version 2020.1 integrates with PrintNode, a hosted printing service, to provide mobile
printing capabilities. You can send print requests for item labels, pallet labels, and other shipping
documents from a mobile device to your warehouse printer.

ReleaseNotes_2020.1.0.pdf — Subject to Change


Inventory Management 43

Prior to setting up mobile printing, you must acquire and configure a PrintNode account with your
warehouse printers. When you set up mobile printing, you can specify the print sequence, enable
automatic printing, and set the default mode to raw printing using ZPL commands.

For more information about setting up mobile printing, see the help topic Mobile Printing Setup.

You can reprint documents printed originally from a mobile device. The new version of NetSuite WMS
provides a log of mobile print requests. From your mobile device or NetSuite WMS user interface, you can
access this log and select a document to reprint.

For more information about mobile printing, see the help topic Mobile Printing for NetSuite WMS.

Supply Chain Control Tower Enhancements


NetSuite 2020.1 provides the following enhancements to the Supply Chain Control Tower.

Location Records
Location records now include a User Entry Predicted Risks section that enables you to avoid inventory
shortages for particular locations. The Days Late fields can define a number of days past the expected
date that an item is likely to be received. The Confidence fields record the percentage of confidence you
have that the Days Late prediction is accurate. The values in the Predicted Risks portlet are sourced from
these location fields. For new location records, these fields default to 0 Days Late and 100% Confidence.
These values will be used if the Supply Chain Predicted Risks feature is not enabled or if intelligent
predictions are not available.

Preferences
On the Control Tower Preferences page, you can define the default values for the following fields on
location records:

■ Vendor Predicted Days Late/Early – default value is 0 days


■ Vendor Predicted Risk Confidence – default value is 100%
■ Sales Order Predicted Days Late/Early – default value is 0 days
■ Sales Order Predicted Risk Confidence – default value is 100%
■ Transfer Order Predicted Days Late/Early – default value is 0 days
■ Transfer Order Predicted Risk Confidence – default value is 100%

Supply Chain Predicted Risks


NetSuite 2020.1 provides a Supply Chain Predicted Risks feature that leverages NetSuite’s IntelligentSuite
capabilities to make predictions for purchase orders and transfer orders. The predictions appear in the
Predicted Risks portlet of the Supply Chain Control Tower. If there is no existing data, the feature uses the
values specified in the location record.

This feature requires a history of data to create a trained model from which predictions can be made.
When the Supply Chain Predicted Risks feature is enabled, the feature does the following:

■ The feature checks if you meet the history thresholds.


□ For purchase orders, this threshold is 500 purchase orders per vendor over the past two years.
□ For transfer orders, this threshold is 500 transfer orders per location pair in the past two years.
■ The feature begins training the model.

ReleaseNotes_2020.1.0.pdf — Subject to Change


Inventory Management 44

■ When complete, the trained model is used to generate predictions.


■ Predictions are available in the Predicted Risk portlet the day after a purchase order is created.
■ The model is retrained every three months or when the feature is enabled.

Supply Chain SuiteAnalytics Workbook


NetSuite 2020.1 provides a Supply Chain Control Tower workbook that gives you access to key supply
chain metrics and analytics. You can use the standard pivot tables and charts, or customize them
according to your business requirements. This workbook uses Past Due Transactions as the source, and
includes the following data columns:

■ Date
■ Days Past Due
■ Item
■ Location
■ Transaction
■ Supply Quantity
■ Demand Quantity

The workbook uses Supply Chain Snapshot, Item, and Supply Chain Snapshot Details as the three
formula.

Manufacturing
NetSuite 2020.1 includes the following enhancements to Manufacturing features:

■ Outsourced Manufacturing
■ Actual Production Dates
■ Manufacturing Mobile

Outsourced Manufacturing
The release of NetSuite 2020.1 Outsourced Manufacturing enables you to purchase outsourced assembly
production from vendors. This helps you better manage your subcontracted manufacturing processes.
This upgrade enables NetSuite to automatically consume (use items or products) production components
and then transfer them to a specified location. Outsourced manufacturing automatically synchronizes
NetSuite procurement and production transactions.

NetSuite 2020.1 enables you to outsource your manufacturing efforts either from a purchase order or
from a work order.

Outsourced Manufacturing includes the following functionality:

■ After you edit an outsourced purchase order, the system checks for any constraints between
transactions (lowering quantities or charges) to keep them synchronized.
■ After receiving an outsourced item on a purchase order, NetSuite builds assemblies for the
outsourced work order. The system uses components from your stock to contract manufacturers.
■ Receive assemblies at any location within a subsidiary. The system automatically transfers finished
products to the designated location.
■ NetSuite can handle serialized or lot–numbered assemblies and components.

ReleaseNotes_2020.1.0.pdf — Subject to Change


Manufacturing 45

■ The cost of the production charge is the actual charge. Each production run uses the charge on the
purchase order.
■ Outsourced Manufacturing is compatible with NetSuite Supply Planning and Distribution Network.

Purchase Order
The new Standard Outsourced Purchase Order custom form enables you to create a purchase order for
outsourced assemblies that contains specific attributes for outsourced production. For example, you can
define the following outsourcing details:

■ Assemblies
■ Outsourcing Location
■ Production Start Date
■ Production End Date
■ Bill of Materials
■ Bill of Materials Revision

The outsourcing form also displays the new Create WO column. When you check the Create WO box on
an order line and then save the order, the system automatically creates a work order for this line and
purchase order.

After you save a purchase order, the Create WO column displays a link to the new work order. However, if
you did not check the Create WO box, a Create WO link appears in the Create WO column. Click this link to
prompt the system to create a work order for this order line.

After you save a purchase order, a Receive button appears in the purchase order. Click this button to
open the Item Receipt window where you can receive production items from the purchase order.

Work Orders
Generally, if you use supply planning and create outsourced items from work orders, you can enter
outsourcing-related information in the work order Outsourcing subtab. Similar to the Create WO box
on outsourced purchase orders, the outsourced work order displays a Create PO link to create related
purchase order. If the purchase order is not created automatically, NetSuite creates outsourced purchase
orders for Firmed Work Orders for vendors and subsidiaries.

Manufacturing Locations
To improve inventory tracking, the Manufacturing Locations field appears in the Vendor window,
Outsourced Manufacturing subtab.

Click the double arrow icon to assign one or more physical locations to the vendor.

ReleaseNotes_2020.1.0.pdf — Subject to Change


Manufacturing 46

Bill of Materials
Create a Bill of Materials to capture final assembly costs that include outsourced production charges.

For example, your organization outsources bicycle manufacturing. However, you provide seats and
wheels from stock to the outsourced vendor. A single seat is priced at $20 while two wheels cost $70. The
vendor provides the other components, assembly location, and assembly labor. The vendor outsourcing
charge is $350.

Combine the inventory outsourcing charges, 20 + 70 + 350, for a total assembly cost of $440. Standard
Non-Inventory/Service/Other Charge items outsourcing charge item costs are taken from the related
purchase order.

Item Receipt
The Item Receipt Items subtab displays a link to the assembly column. You can also select a different
destination location within the same subsidiary. The production location is selected by default . If this
location changes, the Inventory Transfer transaction moves inventory from the production location to
the destination location. You can also click the link to open the Assembly Build Helper. Save the assembly
build helper to display a link to the created assembly build and automatically create a transfer order.

Assembly Build Helper


The new Assembly Build Helper enables you to override existing production data, such as component
quantity, lot and serial numbers, or bin–related information.

For example, you provide 20 bicycle seats for a production run. During assembly your vendor broke five
seats. As a result, you need to provide an additional five seats from your inventory. Use the Assembly
Build Helper to update the original number of seats you provided from 20 to the correct figure of 25. This
means you do not have to edit the related assembly build transaction after it is created.

Actual Production Dates


In NetSuite 2020.1, Actual Production Dates are automatically calculated by default for related work
order transactions. Actual production dates are available in Assembly Builds for Standard Work Orders,
Issue Components, and Work Order Completions for WIP Work Orders. This functionality is automatically
available when you upgrade to 2020.1.

This new feature enables you to track actual production dates to better assess your production plans,
identify problems, optimize production runs, and make data–driven decisions.

NetSuite calculates production after the first build transaction starts. If you are using WIP, the calculation
starts when components are issued. The system end date records when the work order is closed. The end
date must occur on the same day or some time after the start date. You cannot record an end date until
you entered a start date.

For example, you start to a red mountain bike assembly build. You create a work order on January 16,
2020. The system records this as the production start and end dates. The work order instructions calls for
10 bicycles be built. Two bicycles were built on January 16, 2020. This is recorded as the Actual Start Date.
You already eight bicycles in inventory that were built on January 10. This is the assembly transaction date.
After you update the assembly build, NetSuite automatically adjusts the work order Actual Start Date to
January 10. The Actual End Date is recorded as January 16.

NetSuite automation logic always uses the transaction dates. In this example, the system uses the
assembly builds for the non-WIP work order dates.

ReleaseNotes_2020.1.0.pdf — Subject to Change


Manufacturing 47

If you prefer to control actual production dates manually, and do not want NetSuite to calculate actual
production dates, you can disable this feature. However, you need to enter actual production dates
manually on each work order.

Mobile
NetSuite 2020.1 includes the following enhancements to NetSuite for Mobile features:

■ iOS Push Notification Changes


■ My Approvals Enhancements

iOS Push Notification Changes


In 2020.1, server-side updates have been made to the push notifications feature in NetSuite for iOS. To
continue receiving push notifications to your devices, after your account has been updated to 2020.1,
log in to your NetSuite for iOS app. This one-time action automatically applies the updated server
configuration. No further action is required to continue receiving push notifications.

My Approvals Enhancements
NetSuite for iOS 9.4 released in June 2020 includes the following enhancements to the My Approvals
feature. Managers can:

■ Approve or reject weekly Timesheets


■ Reorder records on the My Approvals portlet
■ Reject multiple items in a list of items pending approval when working with Timesheets and Time
Entries
■ Search through a list of items pending approval by using the new context search field at the top of the
list

For more information, see the help topic My Approvals.

Order Management
NetSuite 2020.1 includes the following enhancements to order management features:

■ SuiteBilling Must Be Provisioned


■ Subscription Revisions
□ Changes to Change Orders for Subscription Revisions
■ New Accounting Preference Related to Advanced Revenue Management
■ Automatically Extend Estimated Revenue Recognition End Date
■ Multi-Subsidiary Customer Integration with Billing Accounts
■ Set Subscription Charge Periods to Align with the Subscription Start Date
■ Enhancements to Standard Roles and Permissions
■ Search Enhancements
■ Enhanced Visibility into Automatic Fulfillment Request Creation

ReleaseNotes_2020.1.0.pdf — Subject to Change


Order Management 48

■ Create Automatic Fulfillment Requests on Expected Ship Date


■ Improved Handling of Rejected Payments
■ Enabling Payment Instruments Ensures Compliance with Visa Cards on File Mandate
■ The Error Message after a Failed Credit Card Payment Has Been Adjusted
■ View Automation Usage Figures on the Billing Information Page
■ Dunning Letter Notifications for Grouped Invoices
■ Electronic Bank Payments Enhancements
■ Grid Order Management Enhancements
■ Subscription Billing Bulk Operations
■ Pricing Interval UI Enhancements
■ Add Interval to Multiple Subscription Lines
■ Route Delivery
■ Philippine Invoicing
■ Auto Close Back Orders
■ Static Route Management Enhancements
■ Multi-Language Support for Return Authorization from Case
■ Order Guides Enhancements
■ United Kingdom Localization Enhancements
■ EMEA Localization Enhancements
■ India Localization Enhancements
■ Ireland Localization
■ Germany Localization (Beta) Enhancements
■ Bill of Lading
■ Lot and Serial Number Trace
■ Enhanced Validations and Defaulting Enhancement

SuiteBilling Must Be Provisioned


Before you can enable the SuiteBilling feature, you must contact your NetSuite sales or account
representative to provision this feature for your NetSuite account.

Instructions for enabling the SuiteBilling feature are described in the help topic Setting the SuiteBilling
Preferences.

Subscription Revisions
When you create, edit, or void a subscription change order, NetSuite generates a subscription revision
with the individual contract modifications and the associated revenue impacts. When you save a
subscription change order, NetSuite stores all changes associated with the change order in the
subscription revision.

You can see a subscription revision in the following records:

■ The Subscription Line record, on the Revisions subtab, in the Subscription Revision column, as shown
in the following figure:

ReleaseNotes_2020.1.0.pdf — Subject to Change


Order Management 49

■ The Subscription Change Order record, on the Line subtab, in the Subscription Line Revisions column,
as shown in the following figure:

Any edits or deletions to subscriptions activated before 2020.1 are not tracked in a subscription revision.
Subscriptions that are activated before 2020.1 create a new subscription revision only when you next save
a subscription change order.

For more information, see the help topic, SuiteBilling Subscription Revisions.

For more information on the additional functions for this feature, see Changes to Change Orders for
Subscription Revisions.

Changes to Change Orders for Subscription Revisions


A subscription revision saves the history of changes to subscriptions made using change orders. You can
track contract and revenue changes made after activation to a specific change order. You also can track
changed values over an entire contract term.

You can no longer delete a subscription change order, but you can void it. Voided change orders are
visible but do not impact charge amounts, so you can track the revenue change history after change
orders have been removed.

Using SuiteScript, you can can void a subscription change order and search and view voided change
orders.

You cannot edit a voided change order.

To revert a subscription line to Pending Activation status, you must void all its change orders.

New Accounting Preference Related to Advanced Revenue


Management
You can use the new Create Revenue Elements for Subscription Revisions accounting preference
to determine whether to create individual revenue elements for each subscription change order. When

ReleaseNotes_2020.1.0.pdf — Subject to Change


Order Management 50

you create a subscription and set the preference, all subscription revisions generate a separate revenue
arrangement and corresponding revenue elements.
When you set the Create Revenue Elements for Subscription Revisions preference, all subscription
revisions generate modification elements that account for the impact on revenue. You can set this
preference to generate the modification element according to the ASC-606 accounting policies for
subscription modifications when you have allocated revenue. This new feature gives you the ability to
prospectively merge the modification elements; you also can still retrospectively merge the modification
element if that is the required accounting practice. For instructions, see the help topic, Merging to
Combine Revenue Arrangements. The Revenue Summary subtab of revenue arrangements shows
merged elements. For more information, see New Revenue Summary Popup Window for Revenue
Arrangements.

To set the optional accounting preference for Advanced Revenue Management:

Warning: After you set the Create Revenue Elements for Subscription Revisions preference,
you cannot change it.

1. Go to Setup > Accounting > Accounting Preferences.


2. Click the General subtab.
3. On the Subscription Management section, check the Create Revenue Elements for
Subscription Revisions box.
4. Click Save.

For more information, see the help topic Revenue Recognition for SuiteBilling.

Revenue Recognition for SuiteBilling Help Topics Moved


The following topics have moved from the Advance Revenue Management section of Accounting to
the SuiteBilling section. These topics have detailed information about configuring advanced revenue
recognition for SuiteBilling:

■ Revenue Recognition Rules for SuiteBilling


■ Calculations for Revenue Plans Created on Subscription Events
■ Revenue Allocation for One-Time and Recurring Subscription Lines

Automatically Extend Estimated Revenue Recognition End


Date
You can now automatically extend the estimated revenue recognition end date when you create a new
evergreen subscription. This improvement means that you can ensure an uninterrupted revenue stream
from the subscription. You never need to manually extend the end date.
To automatically extend the estimated revenue recognition end date for evergreen subscriptions, go to
Setup > Accounting > Invoicing Preferences. On the Subscription Management subtab, locate the new
invoicing preferences:

■ Months To Extend Estimated Revenue Recognition End Date


■ Months Prior To Estimated Revenue Recognition End Date To Initiate Auto-Extend

Set each preference to an integer value of 1 to 120. To ensure an uninterrupted revenue stream,
choose values that are longer than the longest billing cycle that you use. You can edit or turn off the
preferences at any time. For more information, see the help topic Setting Optional Invoicing Preferences
for Subscription Management.

ReleaseNotes_2020.1.0.pdf — Subject to Change


Order Management 51

After you set these preferences, NetSuite assigns those values to every new evergreen subscription
you create. If you do not set the preferences, NetSuite assigns the default values for the preferences to
new evergreen subscriptions. To assign the preferences to an existing evergreen subscription, edit the
Invoicing Preferences for the subscription.

Multi-Subsidiary Customer Integration with Billing


Accounts
The Multi-Subsidiary Customer feature is now available for SuiteBilling. If you have billing accounts across
subsidiaries, you can take advantage of all Multi-Subsidiary Customer features. For more information
about this feature, see the help topic Multi-Subsidiary Customer Hierarchy.

You can add secondary subsidiaries to customers after you complete these steps, in the following order:

1. Enable SuiteTax. See Subscription Billing Bulk Operations.


2. Enable Multi-Subsidiary Customer. See the help topic Enable the Multi-Subsidiary Customer
Feature.

Then, when you are creating billing accounts, and you select a customer with multiple subsidiaries, you
can select the subsidiary. For more information, see the help topic Creating Billing Accounts.

Set Subscription Charge Periods to Align with the


Subscription Start Date
The Align Charge Amounts with Subscription preference separates charge generation and the
recurring charge pattern from the bill dates. You can now generate charges that align with the
subscription start date rather than its bill dates. With prior NetSuite versions, the recurring pattern of a
subscription line was always aligned with the next bill date, resulting in prorated charges and misaligned
recurring charges across subscription lines. With the NetSuite 2020.1 release, all lines within a single
subscription also now have a charge pattern aligned with the subscription start date instead of its bill
dates. Multiple-year subscriptions with multiple charge frequencies (for example, monthly, quarterly, and
annual) can now recur based on the subscription start date for better alignment of invoices.

To set subscription charge periods to align with the subscription start date:
1. Go to Setup > Accounting > Invoicing Preferences.
2. On the Subscription Management subtab:

Tip: The Subscription Management subtab does not appear until after you enable
SuiteBilling.

a. Check the Align Charge Amounts with Subscription box.


When you set this preference, any activated subscription's recurring charge period aligns
with the subscription header start date instead of the bill dates.
A subscription that is activated before you set this preference may display the original
recurrence pattern.
You can set or clear the Align Charge Amounts with Subscription preference at any time.
However, subscriptions have the recurrence pattern defined by the preference setting at the
time of activation.
3. Click Save.

ReleaseNotes_2020.1.0.pdf — Subject to Change


Order Management 52

Enhancements to Standard Roles and Permissions


All roles have the following new viewing or editing permissions for the following records:

■ Price book
■ Price plan
■ Subscription change order

The default permission level is View. There are optional permissions for Create and Edit. Roles with Full
access permission can do the following actions:

■ View
■ Edit
■ Create
■ Except where noted in the help, delete

For all of the SuiteBilling permissions and changes to standard roles, see the help topic SuiteBilling Roles
and Permissions.

The Sales Vice President role can now view subscriptions and usage. The Marketing Administrator,
Marketing Assistant, Marketing Manager, Resource Manager, and Store Manager roles can now view
subscription plans. Customized roles with subscriptions and subscription plan permissions are not
changed by the new permissions.

Only the System Administrator role can grant access to SuiteBilling subscription processes. Subscription
processes include actions on subscription plans, subscriptions, price books, price plans, subscription
change orders, and usage.

The following roles have default permissions to access and perform subscription processes:

■ Advanced Partner Center


■ CEO
■ CFO
■ System Administrator

The System Administrator role provides full access to the subscription record. For instructions, see the
help topic Default Permissions for Subscription Records.

The System Administrator role can set up standard pricing that cannot be modified through the following
actions:

■ Limit the number of users who can edit the subscription pricing


■ Reduce the permissions to edit a specific price plan, subscription change order, or price book

In addition, usage no longer requires the accounting list permission. The Billing Specialist role without the
accounting list permission can create usage through a usage record. For instructions, see the help topic
Creating Usage Records.

The Billing Specialist role can preview the price plan and price book of a renewed subscription before its
renewal. For instructions, see Viewing Pricing Before Subscription Renewal.

Search Enhancements
Subscription and Subscription Change Order searches now have Default Renewal Subscription Plan and
Default Renewal Price Book columns.

ReleaseNotes_2020.1.0.pdf — Subject to Change


Order Management 53

Enhanced Visibility into Automatic Fulfillment Request


Creation
A new log is available in NetSuite 2020.1 that provides information on the creation of fulfillment requests.
This log enables you to audit the automation process. You can view the log directly in Business Events
Processing History, under the System Information subtab of a sales order. In addition, you can use the log
data to create a saved search or a SuiteAnalytics workbook.

For more information, see the help topic Fulfillment Request Creation.

Create Automatic Fulfillment Requests on Expected Ship


Date
In 2020.1, NetSuite can automatically create a fulfillment request when an expected ship date is reached.
This new option is on the Advanced Order Management Setup page.

When the expected ship date is a future date, this option enables the automatic creation of fulfillment
requests on that date.

For more information, see the help topic Fulfillment Request Creation.

Improved Handling of Rejected Payments


Previously, a rejected customer payment prevented an invoice from being paid and if the payment was
unapplied, the payment was presented as usable credit. Rejected payments needed to be unlinked
manually. In NetSuite 20.1, rejected payments no longer require individual attention. Also, rejected
payments no longer appear as usable credit.

Enabling Payment Instruments Ensures Compliance with


Visa Cards on File Mandate
All merchants that process credit cards must comply with the new Visa Stored Credential Transaction
framework. The framework includes mandates to identify the initial storage and subsequent use of
payment credentials. The mandates apply to either a Visa card or a gateway token that represents a Visa
card.

If you enable Payment Instruments, your Visa card processing through NetSuite becomes automatically
compliant with the new Card on File mandate from Visa. For you to become compliant, your gateway
provider must support this feature. Note that failing to comply with the Card on File mandate may result
in penalties.

For instructions on how to enable Payment Instruments and information on the benefits of using this
feature, see the help topic Payment Instruments.

The Error Message after a Failed Credit Card Payment Has


Been Adjusted
Previously, after a failed credit card payment, the following error message was displayed on a new page:

ReleaseNotes_2020.1.0.pdf — Subject to Change


Order Management 54

To continue, you had to go back to the original transaction form.

In NetSuite 20.1, the error message after a failed credit card payment is displayed at the top of the
transaction form. The error message contains information from the Payment Gateway. Further details are
available in the created payment event on the transaction form.

The described GUI change does not affect any scripts or integrations, and you do not need to take any
action.

View Automation Usage Figures on the Billing Information


Page
You can now view automation usage figures on the Billing Information page in your NetSuite account.
Go to Setup > Company > NetSuite Account Information > View Billing Information to view the Billing
Information page. Usage figures are based on the number of automated sales orders created in your
account with any of the following Advanced Order Management (AOM) processes:

■ Automatic location assignment


■ Automatic fulfillment request creation

The system updates usage figures on a daily basis. You can view the last daily increment quantity, as well
as the total cumulative quantity since the anniversary date of your NetSuite account. Additional methods
to view usage figures with saved searches or SuiteAnalytics workbooks are described in the Automation
Capacity and Usage Fees help topic.

Projects
NetSuite 2020.1 includes the following enhancements to Projects features:

■ Advanced Project Budgets Enhancements


■ Advanced Project Profitability Enhancements
■ Project Revenue Recognition Enhancements
■ Preferred First Day of a Week Available for RACG Calendar
■ NetSuite-Oracle Content and Experience Integration Renamed to Oracle NetSuite Content Cloud
Service
■ NetSuite-Oracle Content and Experience Integration General Availability and Enhancements
■ NetSuite-Oracle Content and Experience Integration (Limited Release) Now Available
■ Project Risk Forecast Now Available

ReleaseNotes_2020.1.0.pdf — Subject to Change


Projects 55

Advanced Project Budgets Enhancements


The Advanced Project Budgets feature now enables you to track costs and revenue and lets you define
a fully customizable work breakdown structure within each budget. Advanced Project Budgets feature
offers a better understanding of how to consume project budgets within individual projects and across
projects.

With Advanced Project Budgets, you can now:

■ Generate budget vs. actual reports across multiple projects.


■ Estimate costs based on items.
■ Estimate costs based on project resources.
■ Display actual costs which the work breakdown structure or budget does not include.
■ Generate a budget cost burn chart.
■ Display a progress bar for the forecasted margin in relation to the current budget.
■ Display the total amounts of the budget in the total row.
■ Edit a new version of the budget.

NetSuite 2020.1 brings the following report updates:

■ Budget by Activity Codes – You can now use activity codes instead of item sets. NetSuite
automatically creates reports which define the activity code dimension for cross-customer and cross-
project reporting. The following Budget vs. Actual reports are new for 2020.1:
□ Budget vs. Actual by Activity Codes
□ Budget vs. Actual by Activity Codes Detail
□ Budget vs. Actual by Activity Codes by Month
□ Budget vs. Actual by Activity Codes by Month Detail.

■ Budget by Budget Lines – NetSuite automatically creates reports that define the work breakdown
structure dimension for project reporting. The following reports are new for 2020.1:
□ Budget vs. Actual by Budget Line
□ Budget vs. Actual by Budget Line Detail
□ Budget vs. Actual by Budget Line by Month
□ Budget vs. Actual by Budget Line by Month Detail.

■ Budget by Items – NetSuite does not create the Budget by Items report for new customers of
advanced project budgeting. The existing reports are maintained as they are. You can create the item
report manually.

For more information, see the help topic Advanced Project Budgeting. See also Activity Codes.

Advanced Project Profitability Enhancements


NetSuite 2020.1 includes enhancements to the Advanced Project Profitability feature. If you have the
Administrator role, you can now select whether to recalculate financial data once or periodically. Go to
Setup > Accounting > Project Profitability > Performance to set preferences for cache, recalculation, and
pre-filter of financial data.

The following additional enhancements include:

ReleaseNotes_2020.1.0.pdf — Subject to Change


Projects 56

■ Recalculate Financial Data – You can now initiate a recalculation of financial data and select the
Recalculate Financial Data in the Actions menu on project, work breakdown structure, and budget
records.
■ Display Approved Time as Actual – You can now select an approved time as an actual cost without
posting the time. You can also display tracked and approved time as an actual cost on the P&L subtab.
The estimate at completion and an estimate to complete calculations are more accurate.
■ Inclusion of Forecast and Actual Charges – You can now include forecast and actual charges in
project profitability configurations. All forecast and actual charges appear as committed revenue. If
you invoice an actual charge, the system ignores the charge. If you use a project charge on a sales
order, the calculation of the remaining billable amount follows the charges and not the unbilled
quantity on the sales order. Previously, there was a risk of errors when one sales order line calculation
referred to multiple projects. In NetSuite 2020.1, you can see the impact on revenue from billable time,
forecasted milestone and fixed date billings on a project.

For more information, see the help topic Advanced Project Profitability.

Project Revenue Recognition Enhancements


In NetSuite 2020.1, a new warning appears to indicate incorrect combinations of charge-based billing and
project revenue recognition rules.

For accounts using project percent complete revenue rules, a temporary preference is available on the
Accounting Preferences page. You can choose to recognize revenue for percent complete rules the
event submission date or the event source date. 

For more information, see the help topic Project Revenue Recognition. See also Revenue Recognition
Rules.

Vendors, Purchasing, and Receiving


NetSuite 2020.1 includes the following enhancements to the vendors, purchasing, and receiving features:

■ Associate Vendor Prepayments with a Purchase Order


■ Automatic Application of Vendor Prepayments
■ Vendor Prepayments Enhancements
■ Vendor Bill Approvals in the Employee Center
■ SuiteApprovals Support for Vendor Bills

Associate Vendor Prepayments with a Purchase Order


As of NetSuite 2020.1, you can associate one or more vendor prepayments with a purchase order. You
can associate a purchase order and a vendor prepayment in one of two ways:

■ After you enter a transaction on the Purchase Order page, you can click the new Enter Prepayment
button.
■ From the Vendor Prepayment page, using the new Purchase Order dropdown list.

You can associate multiple vendor prepayment transactions to the same purchase order. The Related
Records subtab on the Purchase Order page provides an overview of the vendor prepayments.

Associating the vendor prepayment to the purchase order is optional. You still can enter and apply your
vendor prepayments without linking them to a purchase order (stand-alone vendor prepayments).

ReleaseNotes_2020.1.0.pdf — Subject to Change


Vendors, Purchasing, and Receiving 57

For more information on this new NetSuite functionality, read Vendor Prepayment Associated with a
Purchase Order.

Automatic Application of Vendor Prepayments


When you associate a vendor prepayment with the corresponding purchase order, you can configure
NetSuite to automatically apply the vendor prepayment to the vendor bills using the new Auto-Apply
Vendor Prepayments accounting preference. When you set this new preference, you do not need to
manually apply vendor prepayments to bills. The Auto-Apply accounting preference records the vendor
prepayment application automatically in the background.
For stand-alone prepayments with no associated purchase order, you must complete the application
manually. The following diagram shows the different options when applying vendor prepayments:

To streamline this automatic application process, the Auto-Apply accounting preference works using the
NetSuite system account. The employee entering or approving the vendor bills does not need to have
permission to work with vendor prepayments. 
The Auto-Apply Vendor Prepayments preference is set by default, affecting all prepayments that meet
the Auto-Apply conditions. If the vendor prepayment does not meet the Auto-Apply conditions, you
must apply the prepayment manually (for more information about Auto-Apply conditions, see the help
topic Auto-Apply Conditions.) If you want to apply prepayments manually, you must clear the Auto-Apply
Vendor Prepayments box. To set the Auto-Apply preference, go to Setup > Accounting > Preferences
> Accounting Preferences. Under the Accounts Payable section, check or clear the Auto-Apply Vendor
Prepayments box.
For more information about the new Auto-Apply setting, read Applying Vendor Prepayments with Auto-
Apply.

Vendor Prepayments Enhancements


The core Vendor Prepayments functionality is improved and extended in NetSuite 2020.1. You can now
use the NetSuite Advanced PDF and HTML feature to print and customize vendor prepayment vouchers.
You can create custom vouchers using the NetSuite Template Editor, print vouchers in PDF format, or
attach vouchers in your communications using the Communication subtab.
Additionally, Vendor Prepayments in NetSuite 2020.1 includes:

■ Overall usability improvements.


■ Support for Custom GL Lines. For more information, see the help topic Custom GL Lines Plug-in
Overview.
■ Improved validations to minimize errors when multiple users work with vendor prepayments
concurrently.

ReleaseNotes_2020.1.0.pdf — Subject to Change


Vendors, Purchasing, and Receiving 58

■ Exposure of Vendor Prepayment records in SuiteScript. For more information, see the help topic
Transactions in the SuiteScript Records Guide.

Vendor Bill Approvals in the Employee Center


Previously, users with the Employee Center role could not approve vendor bills. As of NetSuite 2020.1, the
Employee Center role includes the necessary permissions to review and approve vendor bills.

These permissions are:

■ Bills – Grants users the permission to view vendor bills.


■ Vendor Bill Approval - Grants users the permission to approve or reject vendor bills.

These new permissions in the Employee Center role are not enabled by default. To approve vendor bills in
the Employee Center, you must enable the permissions in the role first.

You can complete the approval process using the standard vendor bill approval, or a custom vendor bill
approval workflow in SuiteFlow. For information about the different approval options, read the help topic
Vendor Bill Approvals.

For more information about this new NetSuite feature, read the help topic Vendor Bill Approvals in the
Employee Center.

Taxation
This release note was updated April 15, 2020.

NetSuite 2020.1 includes the following enhancements to taxation features:

■ SuiteTax
□ SuiteTax Support for Non-Claimable Reverse Charge Tax Types
□ U.S. Sales Tax and Canada GST Now Generally Available
□ SuiteTax Support for Tax Groups
□ SuiteTax Support for Tax Groups for Canada and the United States
□ Canada Data Provisioning Enhancements
□ Automatic Tax Calculation for Shipping in VAT Countries
□ SuiteTax Reports Enhancements
▬ Tax Point Date Support for SuiteTax Reports
▬ Tax Reporting Category for Country Tax Reports
▬ Expense Transactions in VAT/GST Reporting
□ EMEA Tax Audit Files Support for SuiteTax Reports
□ SuiteTax Country Tax Reports APAC Enhancements
▬ JAPAC Support for SuiteTax Reports
▬ Tax Reporting Category Support for Australia and Philippines Tax Reports
▬ Expense Transaction Support for APAC Tax Reports
□ SuiteTax Reports is now Tax Reporting Framework
□ Belgium Localization
□ EMEA Localization

ReleaseNotes_2020.1.0.pdf — Subject to Change


Taxation 59

□ EMEA Localization Enhancements


□ France Localization
□ Germany Localization (Beta) Enhancements
□ India Localization SuiteTax Engine SuiteApp Enhancements
□ Ireland Localization
□ Netherlands Localization
□ New Simplified India GST Tax Return Reports
□ Norway Tax Reports
□ Sweden Tax Reports
□ United Kingdom Localization
□ United Kingdom Localization Enhancements
■ Legacy Tax
□ Legacy Tax Support in Tax Reporting Framework
□ Tax Audit Files Enhancements
▬ Portugal Tax Audit Files Field Mapping Page Update
▬ France Tax Audit Files Support for Period End Journal Entries
▬ Portugal Standard Audit File for Tax Purposes (SAF-T PT) Grouping Code Mapping Update
▬ Tax Audit Files Generation Update for Enhanced Trial Balance
▬ Support for Norway Standard Audit File for Tax (SAF-T) Financial Report
□ Philippines Certificate of Creditable Tax Withheld at Source (Form 2307) Update
□ International Tax Reports Enhancements
▬ Austria VAT Rate Update
▬ Ireland VAT Rate Update
▬ Saudi Arabia VAT Rate Update
▬ Germany VAT Rate Update
▬ Cyprus VAT Return Enhancement
▬ Singapore Goods and Services (GST) F5 Return Update
▬ Germany VAT Return Update
▬ Belgium VAT Return Enhancement
▬ Slovenia VAT Return Update
□ ANZ Localization

SuiteTax Support for Non-Claimable Reverse Charge Tax


Types
In NetSuite 2020.1, a new non-claimable reverse charge tax type is available to ensure that both reverse
charge and post to item cost can be selected on the same tax type.

Non-claimable reverse charge tax type supports non-claimable tax deductions on reverse charge tax
types. For example, you can apply this tax type when you buy products from a different country and must
pay VAT to your domestic tax authority, but cannot claim the reverse charge tax from your tax authority.

This enhancement also supports existing customers and partner requirements based on local tax rules.

ReleaseNotes_2020.1.0.pdf — Subject to Change


Taxation 60

Note: The combination of both properties is allowed only when you create the tax type for the
first time. These settings cannot be edited later.

For further information, see the help topic Non-claimable Reverse Charge Tax Type.

User Interface
NetSuite 2020.1 includes the following enhancements to the NetSuite User Interface:

■ Help Center Available in Chinese


■ Advance Notice: Microsoft Internet Explorer 11 End of Support

Help Center Available in Chinese


In addition to German, English (U.S.), Japanese, and Spanish (Latinoamérica), the Help Center is now also
available in Chinese.
To change the Help Center language, click the current language in the upper-right corner of the Help
Center page and select a language from the list of available languages.

Note: The language preference for the Help Center is independent of the language preference
specified for the NetSuite user interface.

Advance Notice: Microsoft Internet Explorer 11 End of


Support
As of 2020.2, the NetSuite application will no longer support Microsoft Internet Explorer 11 or its
rendering engine embedded in other browsers. Users will still be able to log in to NetSuite using Internet
Explorer 11. However, support will not be offered for defects specific to this browser or its rendering
engine.
If you are using Microsoft Internet Explorer 11, you should switch to another supported browser. Users
relying on enterprise features of the browser are encouraged to discuss options with their respective
vendors.
For more information, see the help topic Supported Browsers for NetSuite.

Commerce Applications
Important: SuiteCommerce Advanced releases are available as unmanaged bundles. Accounts
are not automatically upgraded to the latest version during the standard NetSuite phased
release process. For existing implementations, taking advantage of enhancements in a given
SuiteCommerce Advanced release requires you to migrate changes into your existing code base.
For details, see the help topic Update SuiteCommerce Advanced.

2020.1.0 Release Notes


The latest version of SuiteCommerce and SuiteCommerce Advanced includes the following
enhancements. Complete release notes are available here: 2020.1 Release of SuiteCommerce and
SuiteCommerce Advanced.

ReleaseNotes_2020.1.0.pdf — Subject to Change


Commerce Applications 61

■ 3D Secure 2.0 Support


■ JSON-LD Structured Data Markup
■ Internet Explorer 9 and 10 No Longer Supported
■ Extensibility API Updates
■ Extension Manager Support for SuiteScript 2.0 Services
■ Conditional Display of Configuration Record Groups and Subtabs
■ Commerce Module Migration to SuiteScript 2.0
■ Commerce Module Migration to TypeScript
■ Configuration Changes
■ Node.js Requirement Change
■ Third-Party Library Updates

2020.1.10 Minor Release Notes


■ 2020.1.10 Release of SuiteCommerce and SuiteCommerce Advanced

2020.1.9 Minor Release Notes


■ 2020.1.9 Release of SuiteCommerce and SuiteCommerce Advanced

2020.1.8 Minor Release Notes


■ 2020.1.8 Release of SuiteCommerce and SuiteCommerce Advanced

2020.1.7 Minor Release Notes


■ 2020.1.7 Release of SuiteCommerce and SuiteCommerce Advanced

2020.1.6 Minor Release Notes


■ 2020.1.6 Release of SuiteCommerce and SuiteCommerce Advanced

2020.1.5 Minor Release Notes


■ 2020.1.5 Release of SuiteCommerce and SuiteCommerce Advanced

2020.1.4 Minor Release Notes


■ 2020.1.4 Release of SuiteCommerce and SuiteCommerce Advanced

ReleaseNotes_2020.1.0.pdf — Subject to Change


Commerce Applications 62

2020.1.3 Minor Release Notes


■ 2020.1.3 Release of SuiteCommerce and SuiteCommerce Advanced

2020.1.2 Minor Release Notes


■ 2020.1.2 Release of SuiteCommerce and SuiteCommerce Advanced

2020.1.1 Minor Release Notes


■ 2020.1.1.1 Release of SuiteCommerce and SuiteCommerce Advanced
■ 2020.1.1 Release of SuiteCommerce and SuiteCommerce Advanced

Commerce Extensions
Commerce Extensions provide additional functionality to your Commerce web store.

Complete release notes are available here: Commerce Extensions Release Notes.

Important: Commerce Extensions are only available if they are provisioned and set up in your
account. For more information, see the help topic Commerce Extensions.

Site Management Tools


This version of SuiteCommerce Site Management Tools includes the following enhancements:

■ SMT UX Sustainability
■ Sass Pre-Processor Enhancements

SMT UX Sustainability
This release enables browser bar navigation when you are logged in to Site Management Tools. This lets
the forward and backward buttons of the browser function properly so you can browse your own history
in the SMT screens. The SMT admin URL is always visible and editable.

With the switch to route-based screens, you can now share URLs to direct screens in SMT instead of
being taken to the home page immediately after you log in. The base markup for the frame, sidebar, and
toolbar are updated to reduce the overall amount of code used.

Sass Pre-Processor Enhancements


The Sass precompiler enables server-side Sass compiling for extension activation. This lets
SuiteCommerce display previews of the theme skin variables while you are logged in to Site Management
Tools. You can view the changes to the theme skin variables as you make the changes. The edits you see
are a preview only and a full rebuild is done to the site when requested or after an idle timeout.

ReleaseNotes_2020.1.0.pdf — Subject to Change


Commerce Merchandising 63

Commerce Merchandising
NetSuite 2020.1 includes the following enhancements to commerce merchandising features:

■ Improved Process for Applying Merchandise Hierarchy Attributes to Items


■ Merchandise Hierarchy Visual Layout Enhancements
■ Standard Merchandise Hierarchy SuiteAnalytics Workbook

Improved Process for Applying Merchandise Hierarchy


Attributes to Items
In NetSuite 2020.1 we have improved the process for applying attributes to items in a merchandise
hierarchy. Now users can apply attributes directly to a selected item in the Hierarchy Manager without
using a mass update.

For more information, see the help topic Applying Attributes to Items in a Merchandise Hierarchy.

Merchandise Hierarchy Visual Layout Enhancements


We have introduced navigation improvements to the visual hierarchy tree in the Hierarchy Manager for
NetSuite 2020.1. The new navigation features make it easier for users to view and move around their
entire hierarchy tree structure.

Users can now:

■ Collapse and expand branches of the hierarchy tree


■ Activate an overview map that displays their location within the hierarchy tree
■ Retain their point of reference in the tree after performing an update to the hierarchy structure

For more information, see the help topic The Hierarchy Manager.

Standard Merchandise Hierarchy SuiteAnalytics Workbook


From NetSuite 2020.1 we have provided a new preconfigured standard Merchandise Hierarchy workbook
in SuiteAnalytics. This workbook lets you analyze sales and inventory performance at both product
category and attribute level. Furthermore, it can be accessed directly from the Hierarchy Manager.

For more information, see the help topic Using Merchandise Hierarchy to Analyze Sales and Item
Performance.

Commerce Platform
This release note was updated July 15, 2020.

Commerce Platform includes platform capabilities that you can use to build and deploy a more interactive
and engaging shopping experience for customers. NetSuite 2020.1 includes the following enhancements:

ReleaseNotes_2020.1.0.pdf — Subject to Change


Commerce Platform 64

■ New Domains Setup Procedure


■ Obtain SSL Certificates for Domains Automatically
■ Redirect URL Domain Enhancements
■ Creating and Editing Web Sites by Type
■ Adding Items to Item Collections using Saved Searches
■ Creating Item Collections using CSV Import
■ Introducing Web Store Order Workbook Template
■ Update to Commerce Elevated Permission Framework
■ Account-Specific Domains for Marketing Campaigns and Online Forms
■ System Email Template Customization
■ Commerce Category Customer Segment Assignment
■ Commerce Category Multi-Language Support
■ Enable CDN Caching for Hosted Web Pages

New Domains Setup Procedure


The Domains Setup form has been redesigned to simplify setting up domains for web stores. The new
process lets you select the type of domain you want to set up and then displays a form with the essential
fields required for that domain type. Advanced domain setup options are also available. The Domains
Setup form is also enhanced by the new automatic SSL certificates feature, which makes it straightforward
to set up a secure domain. See Obtain SSL Certificates for Domains Automatically for more information.

ReleaseNotes_2020.1.0.pdf — Subject to Change


Commerce Platform 65

For information on how to set up different types of domains, see the help topic Set Up Domains for Web
Stores.

Obtain SSL Certificates for Domains Automatically


The introduction of automatic certification in 2020.1 simplifies the process of setting up secure domains
in NetSuite. When you opt into the automatic certification program, NetSuite obtains an SSL certificate,
applies it to your domain, and renews it when it expires. The automatic certificates are standard Domain
Validation (DV) certificates and are provided free of charge. With automatic certification, you no longer
need to obtain the SSL certificate from an external Certificate Authority, upload it to NetSuite, and
remember to renew it.

If your organization requires a different type of certificate, you can upload a manual certificate. To
purchase a manual SSL certificate from a Certificate Authority (CA) of your choice, you must provide them
with a Certificate Signing Request (CSR) to verify your company’s identity. Prior to 2019.2, you would use
OpenSSL outside of NetSuite to generate the Certificate Signing Request (CSR). From 2019.2 onwards,
you must download the CSR file from the Domain Setup form before you submit it to your CA.

Warning: It is mandatory to download the CSR file from the Domain Setup form. If you obtain
an SSL certificate using any other CSR, the certificate cannot be used to secure your NetSuite
domain.

For information on the different types of certificates, see the help topic Automatic and Manual
Certificates.

For information on how to set up different types of domains, see the help topic Set Up Domains for Web
Stores.

Redirect URL Domain Enhancements


The following enhancements have been made to the Redirect URL domain type:

■ Secure Redirect URL Domains - Prior to 2020.1, if a redirect domain was set up for a secure domain,
visitors to the secure domain were redirected to an unsecure domain. From 2020.1 onwards, the
Redirect URL domain type can be set to be a secure domain. For example:
Prior to 2020.1: https://www.olddomain.com would redirect to http://www.newdomain.com
2020.1 onward: https://www.olddomain.com redirects to https://www.newdomain.com
Redirect URL domains can be secured using automatic certificates, making them free and easy to
secure. For more information on automatic certificates, see Obtain SSL Certificates for Domains
Automatically.
■ Option to preserve file path and parameters - The second enhancement to Redirect URL
domains is that it is now possible to preserve the original path requested by the website visitor
when redirecting them to the Redirect URL domain. Prior to 2020.1, regardless of the original path
requested, redirection was done to the main Redirect URL domain. For example:

ReleaseNotes_2020.1.0.pdf — Subject to Change


Commerce Platform 66

Prior to 2020.1: https://www.olddomain.com/product-a would redirect to http://www.newdomain.com


2020.1 onward: https://www.olddomain.com/product-a?param=1 can redirect to https://
www.newdomain.com/product-a?param=1 or http://www.newdomain.com, depending on the selected
option
Preservation of the file path and parameters is an optional feature activated using the Include File
Path and Parameters in the Redirect checkbox on the domain setup form.

Creating and Editing Web Sites by Type


This new 20.1 feature enables you to to filter and to create sites based on the selected type or Commerce
web store product offering. Each web site record is now associated to a specific type, and can be filtered
accordingly. As a result, only the specific filtered sites are displayed across the system in lists, dropdown
menus, etc.

Previously, Commerce web sites could only be filtered as either belonging to Site Builder or to
SuiteCommerce Advanced. With the introduction of this new feature, you can create, edit, and update
your site based on the selected Edition:

■ Site Builder
■ Advanced (this includes SuiteCommerce, SuiteCommerce Advanced, SuiteCommerce My
Account, SuiteCommerce InStore)

To use this feature, you must have the relevant Commerce product enabled for your account.  Once the
feature is enabled, you can use it by going to Setup > Site Builder / SuiteCommerce Advanced > Web Site
Set Up.

For information on the available site types, see the help topic Commerce Web Site Types.

Adding Items to Item Collections using Saved Searches


From 2020.1 onwards, you can create dynamic item collections and assign items to them using saved
searches. Every time an item meets the saved search criteria, it is automatically added to the item
collection.

For example, you can set search criteria to create an item collection of all items manufactured by a
particular company. When a new item manufactured by the company is added to the item catalog, the
item automatically becomes a member of the dynamic item collection. If the manufacturer discontinues
an item and the item is removed from the item catalog, that item is removed from the item collection
automatically.

Another change to item collections is that creating an item collection and adding items to it is now a
single step process.

For more information on creating dynamic item collections, see the help topic Creating Item Collections.

Creating Item Collections using CSV Import


CSV imports are now available for static item collections. Creating a static item collection using CSV
Import is a two step process because you must import item collections and the item collection members
separately. Item Collection records and Item Collection-Item Map records are linked together using
the Item Collection External ID which ensures that the correct items are mapped to the correct item
collection.

ReleaseNotes_2020.1.0.pdf — Subject to Change


Commerce Platform 67

Note: It is essential that the CSV import file for Item Collection-Item Map contains the related
Item Collection External ID in the correct format. For a template and instructions on how to create
the file correctly, see the help topic Item Collection Item Map Import.

The following CSV import types are available:

■ Item Collection - this creates an Item Collection record for each item collection listed in the CSV
import file.
■ Item Collection-Item Map - this creates an Item Collection-Item Map record for each item collection.

Note: CSV imports are not available for dynamic item collections and their members.

For more information on creating item collections using CSV imports, see the help topic Item Collection
Import.

Introducing Web Store Order Workbook Template


As part of 20.1 release, NetSuite is making a new workbook template available for SuiteAnalytics users.
The workbook template is named Web Store Orders, and it helps track and retrieve data regarding the
items that were ordered through a web store. Furthermore, workbook users can also analyze which items
have been purchased in which site. 

As such:

■ The Web Store Order report provides an overview on the items ordered through the web store. It
shows transactions which were submitted from the web store and groups them by item name.
■ The Customers Ordering Items report provides visibility into customers and the items they ordered.
■ The Items Ordered by Customers report helps visualize the items that were ordered.

You can access this workbook template by going to Analytics > Standard Workbooks > Web Store Orders.

For more information on how to use this workbook template, see the help topic Web Store Orders
Workbook.

Update to Commerce Elevated Permission Framework


Elevated permissions enable .ss and .ssp files to access records that are not normally available for
execution by the Anonymous Shopper role. In 2020.1, the list of records for which elevated permissions
are available has been optimized.

For more information on elevated permissions, see the help topic Set Execute as Role Permissions for .ss
and .ssp Files (SuiteScript 1.0) or Set Execute as Role Permissions for .ss and .ssp Files (SuiteScript 2.1). For
a list of supported records, see the help topic Records that Support Execute as Role Permissions.

Account-Specific Domains for Marketing Campaigns and


Online Forms
In the past, NetSuite domains were always specific to the data center where your account was hosted.
Links in online customer, case, and customer forms pointed to these data center-specific domains.
Similarly, links in marketing templates also pointed to the data center-specific domains. These data
center-specific links have made it difficult to seamlessly move NetSuite accounts among different data
centers.

ReleaseNotes_2020.1.0.pdf — Subject to Change


Commerce Platform 68

Over the past few years, NetSuite has introduced account-specific domains. These domains do not
contain data center-specific identifiers. Instead, they contain your NetSuite account ID. Account-specific
domains remove dependencies on the data center where your account is hosted. An account-specific
domain has the format<accountID>.<service>.netsuite.com, where <accountID> is a variable that
represents your NetSuite account ID, and <service> is a variable representing a specific NetSuite service.

As of 2020.1, automatic redirection has been set up so that all links in online forms and email templates
redirect to your account-specific domain. For example, there may be a data center-specific URL in the
Redirect to URL field on the Set Up Workflow tab of an online form. When a user submits the form,
NetSuite automatically redirects them to your account-specific domain.

As part of this change, the nsvirtual domain has been deprecated. The nsvirtual domain was used in
marketing template and campaign links to point to NetSuite domains. As of 2020.1, the nsvirtual.com
domain has been replaced by the <account_id>.customer.netsuite.com domain.

You should replace the data center-specific links in your account with account-specific domain links. For
more information, see the help topic How to Transition from Data Center-Specific Domains. It may take
some time for you to plan and schedule replacing the data center-specific links in your online forms.
During this time period, the automatic redirection will smooth your transition to account-specific domains.

System Email Template Customization


In the 20.1 release, System Email Templates (SETs) receive an updated interface that provides a more
intuitive way for customizing templates. In previous releases, you were able to customize SETs by
clicking Edit on the SETs list. The name of this button has now been updated to Customize. In addition,
a Customize button has been added to standard SETs.

You can access the SET customization feature by going to Setup > Company > Email > System Email
Templates (in administrator mode) and pressing Customize next to the email you want to customize.

For more information on how to customize SETs, see the help topic Customizing Templates for System-
Automated Email.

Commerce Category Customer Segment Assignment


With Personalized Catalog Views enabled, this feature lets you directly associate a category with a
customer segment from the category form. Previously, you had to use the Customer Segment Manager in
NetSuite administration to create the associations. Now there is a tab on the commerce category form in
NetSuite administration that lets you assign the category to one or more customer segments.

For more information on using Personalized Catalog views, see the help topic Personalized Catalog Views.

For more information on using Customer Segment Assignment, see the help topic Commerce Category
Customer Segment Assignment.

Commerce Category Multi-Language Support


The 2020.1 release adds the ability to use multiple languages for commerce categories and
subcategories. There is a language selector at the top of the edit form that lets you select which language
you want to edit. On this form, only the translatable fields display when a language other than the
company base language is used.

There is a domain switcher on the toolbar that displays all domains associated with the website, grouped
together by language. If the multi-language features are not in use, the domains are listed in a single,
ungrouped list.

For more information, see the help topic Commerce Category Multi-Language Support.

ReleaseNotes_2020.1.0.pdf — Subject to Change


Commerce Platform 69

Enable CDN Caching for Hosted Web Pages


You can now enable Content Delivery Network (CDN) caching for hosted web pages. Hosted web pages
are domains that point to a page in your NetSuite File Cabinet. To take advantage of this enhancement,
you must be using SuiteCommerce or SuiteCommerce Advanced.

To enable CDN caching for your hosted web page, visit the Domain record and check the Use CDN Cache
box. For more information, see the help topic Enable CDN Caching.

SuiteCommerce InStore
SuiteCommerce InStore (SCIS) uses a phased release process to distribute managed-bundle upgrades.
Each phase consists of a different group of customers that receive the latest SCIS release. Administrators
set up for customers within a phased group receive an email notification listing when their upgrade will
occur.

Note: Contact your account representative or Customer Support if you have questions about the
availability of SCIS 2020.1.

This SCIS release provides back end performance improvements, a payment preview feature to improve
performance at the point of sale, and new Application Performance Management (APM) sensors.

Payment Result Preview Processing


This processing boosts performance for payments made through an EMV-enabled payment device.

Traditional payment processing creates a transaction record and waits to confirm that the payment
Result has changed from Pending to Accept or Reject. If accepted, the transaction record might
also trigger scripts and work flows for associated tasks. Each step in this process can lead to delays in
completing a transaction and printing the receipt.

Preview processing creates a Payment Result Preview (PRP) record in addition to the transaction record.
The preview receives and posts the Accept or Reject status to SCIS from the payment partner without
going through the Pending step. The record uses fewer fields than a transaction record, so it is quicker to
update. It also saves time because there are no scripts or work flows to execute prior to confirming the
payment. See the help topic Payment Result Preview Processing.

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteCommerce InStore 70

No configuration work to implement the process is needed from your administrator. Instead, your
payment partner must set up their processing to use the new record. If a payment partner is not
configured for PRP, then payment confirmation is performed using the transaction record only.

New APM Sensors


We added the following sensors to assist you with monitoring and managing performance at the SCIS
point of sale.

■ Display add customer form — Lists the time used to prepare and display a form for adding a new
customer. Begins when sales associate taps option to add new customer. Ends when customer form
displays.
■ Apply line-item discount, cart ready — Measures the time used to add a discount to an item in the
cart. Starts when sales associate applies the discount from the discount form. Ends when the associate
can resume interacting with the cart.
■ Retrieve transaction from scan — Displays the time spent retrieving transaction information via a
NetSuite search initiated by SCIS. Begins when sales associate scans transaction code on receipt. Ends
when SCIS receives the information from NetSuite.
■ Display retrieved transaction — Shows the time used to display scanned-transaction information
retrieved from NetSuite. Begins when information is made available to SCIS. Ends when SCIS displays
the information to the sales associate.
■ Display store transaction history — Measures the time required to display a transaction from the
store’s history option. Begins when sales associate taps option to display history and ends when the
transaction list displays.
■ Begin return from transaction details — Displays the time spent preparing a return from
transaction details. Starts when sales associate initiates return from transaction details. Ends when
return form opens and associate can begin selecting return options. Associate can start return via
receipt scan, transaction history list, or customer timeline.

SuiteApp Distribution
SuiteApp distribution includes SuiteBundler and SuiteApp Marketplace capabilities that you can use to
distribute customizations to accounts.

View the SuiteApp Distribution Mechanism 2020.1 New Feature Training.

NetSuite 2020.1 includes the following changes:

■ Bundle Support During Release Phasing


■ SuiteApp Control Center Now Generally Available
■ New SuiteApp Marketplace Available for Distributing SuiteApps
■ Localization Context Filtering Supported for Scripts in Bundles
■ Translatable Field References to Terms in Translation Collections Supported in Bundles
■ SuiteBundler Support Updates

Bundle Support During Release Phasing


Bundle support during phasing of 2020.1 is consistent with the support provided during previous
releases. During phasing of 2020.1, some accounts continue to use 2019.2 at the same time that other

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApp Distribution 71

accounts are upgraded to 2020.1. Therefore, you may be using a different version than some of the
accounts where your bundles are installed.

Review the descriptions below for a reminder of how bundles from different versions are handled during
release phasing.

■ Bundles developed with 2019.2 can be installed in accounts that are already using 2020.1.
■ Bundles developed with 2020.1 can be installed in accounts that are still using 2019.2, but with the
following limitations:
□ When a user in a 2019.2 account installs a bundle from a 2020.1 account, the bundle installation
stops if there are object types in the bundle that are not supported in 2019.2.
□ A bundle with a script that uses a new API available only in 2020.1 can be installed into a 2019.2
account, but the script may not function correctly because 2019.2 does not support the API.

SuiteApp Control Center Now Generally Available


In NetSuite 2020.1, SuiteApp Control Center is now generally available for defining and managing your
SDF SuiteApp distribution process in a single location.

If you are a SuiteApp release manager, you can deploy SuiteApp projects to the SuiteApp Control Center
and distribute them to users as SuiteApp releases in the SuiteApp Marketplace.

You can set the SuiteApp Marketplace availability for a SuiteApp to one of the following:

■ Public – All NetSuite customers can view and install the SuiteApp.
■ Shared – Only specific companies can install the SuiteApp. When the availability is set to Shared, all
NetSuite customers can still view the SuiteApp.
■ Unlisted – Only specific companies can view and install the SuiteApp.

For more information about setting SuiteApp availability, see the help topic Setting SuiteApp Marketplace
Access.

The Allowed Accounts list is a single location that is shared between Shared and Unlisted SuiteApps. The
Allowed Accounts list specifies which company accounts can install the Shared and Unlisted SuiteApps.
Additionally, upgrades can be pushed only to company accounts that are listed in the Allowed Accounts
list. For information on how to add company accounts to the Allowed Accounts list, see the help topic
Managing Allowed Accounts for Shared and Unlisted SuiteApps.

To make a SuiteApp available to users for installation in the SuiteApps Marketplace, the SuiteApp must
have an application ID in the Advanced Partner Center (APC) record and must have completed both
a listing review and a Built for NetSuite (BFN) review. For more information about the requirements
for distributing SuiteApps in the SuiteApp Marketplace, see the help topic Requirements for SuiteApp
Marketplace Availability.

New SuiteApp Marketplace Available for Distributing


SuiteApps
As of 2020.1, the SuiteApp Listing page has been replaced with the new SuiteApp Marketplace. You
can use the SuiteApp Marketplace to find and install SuiteApps created using SuiteCloud Development
Framework.

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApp Distribution 72

As of 2020.1, the SuiteApp Listing page has been replaced with the new SuiteApp Marketplace. You
can use the SuiteApp Marketplace to find and install SuiteApps created using SuiteCloud Development
Framework and Built for NetSuite (BFN) bundles created by using SuiteBundler.
The SuiteApp Marketplace is currently available to Administrators and users with the SuiteApp
Marketplace permission. To access the SuiteApp Marketplace, go to Customization > SuiteCloud
Development > SuiteApp Marketplace.
The SuiteApp Marketplace is available by clicking the new SuiteApps tab on the navigation menu bar.
You can also access the SuiteApp Marketplace by going to Customization > SuiteCloud Development >
SuiteApp Marketplace.
The following screenshot shows how SuiteApps are listed in the SuiteApp Marketplace:

You can view all public and shared SuiteApps in the SuiteApp Marketplace. Each SuiteApp is represented
by a SuiteApp tile that contains the SuiteApp name, publisher, and first release date. Users can also sort
the SuiteApp tiles by SuiteApp Name, Publisher, or Latest Release Date.
Click a SuiteApp tile to view the details of the SuiteApp. The following screenshot shows the SuiteApp
details page for a SuiteApp in the SuiteApp Marketplace:

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApp Distribution 73

To learn about the information that is available on the SuiteApp details page for each SuiteApp, see the
help topic Viewing SuiteApps in the SuiteApp Marketplace.

Users can perform the following actions in the SuiteApp Marketplace:

■ Install SuiteApps that are shared to their account and support their NetSuite account version. For
more information, see the help topic Installing from the SuiteApp Marketplace.
■ Upgrade SuiteApps that have been installed in their account when a new SuiteApp version is available.
For more information, see the help topic Upgrading from the SuiteApp Marketplace.
■ View the status of a SuiteApp after an install, upgrade, or uninstall has initiated. Users can view only
some states of the SuiteApp in the SuiteApp Marketplace. For more information on the states that can
appear on the SuiteApp details page of the SuiteApp Marketplace, see the help topic Viewing SuiteApp
Installation or Uninstallation Status.

To view and uninstall SuiteApps obtained from the SuiteApp Marketplace, go to Customization >
SuiteCloud Development > Installed SuiteApp List. For the desired SuiteApp, select Uninstall from its
action menu.

Your SuiteApps become available to users for installation in the SuiteApps Marketplace when they meet
the following requirements:

■ SDF SuiteApps must have an application ID in the APC record and must have completed both a
listing review and a Built for NetSuite (BFN) review. For more information about the requirements for
distributing SuiteApps in the SuiteApp Marketplace, see the help topic Requirements for SuiteApp
Marketplace Availability.
■ Bundles must have a primary bundle ID in the APC record and must have completed both a listing
review and a Built for NetSuite (BFN) review. For more information about the requirements for
distributing bundles in the SuiteApp Marketplace, see the help topic Distributing Bundles Through the
SuiteApp Marketplace.

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApp Distribution 74

Although bundles are listed in the SuiteApp Marketplace, less Additional Information is available on the
SuiteApp details page for bundles than for SDF SuiteApps. To find more information for a bundle, go to
the Bundle Details page by clicking View SuiteApp on the SuiteApp details page. Additionally, to install
bundles, you must go to the Bundle Details page. For more information, see the help topic Installing a
Bundle.

For more information about distributing bundles, see the help topic Distributing Bundles Through the
SuiteApp Marketplace.

Localization Context Filtering Supported for Scripts in


Bundles
As of 2020.1, localization context filtering is supported for SuiteScript 2.0 user event and client scripts
included in bundles. If a script included in a bundle has localization context filtering set up, that filtering
works in all target accounts where the bundle is installed.

A record’s localization context represents the country or countries associated with that record.
Localization context filtering is set up in the Localization Context field on the Context Filtering subtab of
the script deployment record. This setting controls the records on which user event and client scripts run,
based on the localization context of the records. For example, if a script has the localization context of
France set on its deployment record, it runs only on records that have a localization context of France. It
does not run on records with other localization contexts.

For more information about localization context filtering, see:

■ Introducing Localization Context – User Event and Client Script Association


■ Determining the Localization Context
■ Localization Context Filtering for SuiteScript 2.0

For information about using the Bundle Builder to bundle SuiteScript objects, see the help topic Objects
Available in Customization Bundles.

Translatable Field References to Terms in Translation


Collections Supported in Bundles
When you bundle custom objects that contain translatable fields with references to terms in Translation
Collections, those translation collections are also included in the bundle. For information about
translatable fields, see Translatable Fields Support and Translation Collections as XML Definitions.

SuiteBundler Support Updates


Note the following changes to SuiteBundler support in 2020.1:

Newly Supported Notes


SuiteBundler Object

Expense Sublist on Expense You can include workflows on the Expenses sublist for expense report record
Report in bundles. For more information about the Expenses sublist, see Support for
Expenses Sublists in Workflows.

For information about adding workflow custom objects to bundles, see the help
topic Bundling a Workflow.

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApp Distribution 75

Newly Supported Notes


SuiteBundler Object

Financial Institution You can include Financial Institution Connectivity plug-in custom objects in bundles.
Connectivity Plug-in The plug-in provides a way for NetSuite to use the Financial Institution Connectivity
API to directly connect customers to a specific financial institution.

For information about customizing and using the Financial Institution Connectivity
plug-in, see Financial Institution Connectivity API.

For information about adding custom objects to bundles, see the help topic Objects
Available in Customization Bundles.

Sales and Purchase Custom You can include sales and purchase custom transaction types in bundles. For
Transactions information about sales and purchase custom transactions in NetSuite, see Sales
and Purchase Custom Transactions Available and Sales and Purchase Transaction
Types Overview.

For information about including custom transaction types in bundles, see the help
topic Custom Transaction Types in Bundles.

SuiteBuilder - Customization
NetSuite 2020.1 includes the following enhancements to SuiteBuilder features:

■ Sales and Purchase Custom Transactions Available


■ System Notes v2 Page Available for Custom Transaction Configuration and Roles and Permissions
■ Account–Specific Domains Supported in Custom Fields and Custom Center Links
■ New Languages Supported in Advanced Printing Templates
■ Updates to Third-Party Libraries Used in Advanced Printing
■ Improvements to Error Messages and Handling of Corrupted Custom Segments

Sales and Purchase Custom Transactions Available


NetSuite 2020.1 extends the flexibility of custom transactions with the addition of two new custom
transactions types: sales and purchase. With sales and purchase transaction types, you can create custom
transactions similar to invoices, cash sales, credit memos, vendor credits, bills, and more. You can utilize
most of the standard sales and purchase transactions functionality like the Items sublist, taxes (SuiteTax
only), and revenue recognition. You can also include your name and define numbering sequences and
permissions for your custom transactions.

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteBuilder - Customization 76

If you have the Custom Transactions feature enabled on your account, the new sales and purchase
custom transaction types are available. For more information, see the help topic Enabling the Custom
Transactions Feature.

Sales and purchase custom transaction types enable you to:

■ Comply with local requirements, such as those in Latin America (for example, demonstrations and
goods for repair) or JAPAC (for example, adjustment invoices).
■ Comply with expectations of specific business verticals, such as not–for–profit (for example, donations
and grants).
■ Create solutions designed for specific types of customers.

SuiteCloud Development Framework (SDF) supports sales and purchase custom transaction types when
defining custom transaction objects. For more information, see Sales and Purchase Custom Transactions
Support.

Sales and Purchase Custom Transactions Support


Sales and purchase custom transaction types provide the functionality of standard sales and purchase
transactions.

For more information, see the help topic Sales and Purchase Functionality Available in Custom
Transactions.

New Accounting Subtab


A new Accounting subtab is available on the Custom Transaction Type page. Use the Accounting subtab
to enter all relevant information for defining the GL impact (main line account) of the transaction. You can
perform line-level adjustments using the Custom GL Lines plug-in. For more information, see the help
topic Custom GL Lines Plug-in.

Sales and Purchase Custom Transaction Instances


When creating sales and purchase custom transaction instances, you can apply promotions, gift
certificates, discounts, revenue recognition, amortization schedules, installments, and more.

For more information, see the help topic Creating Sales and Purchase Custom Transaction Instances.

For more information about creating and using sales and purchase custom transaction types, see the
help topic Sales and Purchase Transaction Types Overview.

System Notes v2 Page Available for Custom Transaction


Configuration and Roles and Permissions
View the New Feature Training for System Notes v2 on Manage Roles Administration Page.

System Notes v2 is available for custom transaction type configuration, and roles and permissions
configuration. System Notes v2 captures details, including changes to sublists, and groups the changes
using summary actions. The audit trail enables you to see the types of changes performed on record
fields, such as create, update, change, and so on. You can also see the date and time each change was
performed and by whom. System Notes v2 also retains information for deleted transactions and records.

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteBuilder - Customization 77

In System Notes v2, changes are listed in reverse chronological order, with the most recent changes
at the top of the page. The System Notes page shows information about the level of actions that have
been performed. Details of the action are grouped underneath and can be expanded and collapsed for
viewing. This condensed format reduces the amount of data first displayed when you browse the audit
trail so that you can track or investigate the history.

Note: System Notes v2 and System Notes are separate systems. There is no change to the
existing System Notes. As of 2020.1, System Notes v2 captures audit trail information for custom
transaction type and roles and permissions configuration pages. To view information about
changes made to roles and permissions prior to 2020.1, use the System Notes subtab on the role
record.

Viewing System Notes v2


To access System Notes v2, click System Notes located in the top right of the following pages:

■ Custom Transaction Type


■ Role

System Notes v2 groups audit data by action as shown in the following example.

For more information, see the help topic System Notes v2 Overview.

Viewing System Notes v2 from a SuiteAnalytics Workbook


You can use the System Notes v2 (Beta) workbook available in SuiteAnalytics Workbook to view and
analyze system notes for custom transaction type and roles and permissions configuration. The System
Notes v2 (Beta) workbook is available in every account. To create a custom SuiteAnalytics workbook, select
the System Notes v2 (Beta) Workbook dataset in SuiteAnalytics Workbook. For more information, see the
help topic System Notes v2 (Beta) Workbook.

Account–Specific Domains Supported in Custom Fields and


Custom Center Links
NetSuite 2020.1 introduces account-specific domains in custom fields and custom center links. You
should use account–specific domains instead of data center-specific URLs.

Previously, NetSuite domains were specific to the data center where your account was hosted. Links in
custom fields and custom center links used these data center–specific domains. NetSuite domains are no
longer specific to data centers. Instead, they are account–specific domains, which are domains specific to
your account, not to the data center where the accounts are hosted. For more information, see the help
topic URLs for Account-Specific Domains.

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteBuilder - Customization 78

The account–specific domains feature automatically translates current data center–specific URLs to
the appropriate account–specific domain URLs. For example, a system.eu2.netsuite.com link in your
custom center automatically becomes <accountID>.app.netsuite.com, where <accountID> is a variable
representing your account ID.

Note: You should update all links in custom fields and custom center links to use your account–
specific domain URL.

During your active NetSuite sessions, data center–specific URLs are automatically changed to account–
specific domain URLs. Configuration remains unchanged. Links that use the appropriate account–specific
domain respond faster than links translated in the current session.

When you create custom center links, if you attempt to add a data center–specific URL, a warning
message appears that includes an account–specific domain URL that you should use instead. Consider
making the suggested change. If you decide not to replace the data center–specific URL with the
suggested account–specific domain URL, the URL as you entered it is saved. In the NetSuite center, the
link translates to an account-specific domain URL.

When you create hyperlink, rich text, long text, free-form text, text area, help, and inline HTML custom
fields, if you add a data center-specific URL, the URL automatically translates to an account-specific
domain URL.

For more information, see the help topic How to Transition from Data Center-Specific Domains.

New Languages Supported in Advanced Printing


Templates
The following languages are now available to use with Advanced PDF/HTML Templates:

■ Armenian
■ Bengali
■ Gujarati
■ Hebrew
■ Hindi
■ Kannada
■ Marathi
■ Tamil
■ Telugu

For more information about languages available for advanced printing, see the help topic Languages for
Printed Forms that Use Advanced Templates.

Updates to Third-Party Libraries Used in Advanced Printing


Advanced PDF/HTML templates now use updated versions of the BFO library and CKEditor for additional
stability and security.

■ The BFO library has been updated to version 1.1.70.


■ CKEditor has been updated to version 4.12.1.

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteBuilder - Customization 79

For more information, see the help topic Third-Party Products Used in Advanced Printing.

Improvements to Error Messages and Handling of


Corrupted Custom Segments
A custom segment can sometimes become corrupted if any of its required components are missing. A
completely defined custom segment must contain one custom record component, and one each of the
following five custom field component types: Body, Column, Entity, Event, and Item. For information about
the components of a custom segment, see the help topic Creating a Custom Segment.

If any components are missing from the custom segment, you receive a segment corrupted error
on the Custom Segment configuration page. However, you can continue to use the custom segment
configuration page with limited operations available. As of 2020.1, if you installed a custom segment from
a bundle and it is damaged, you can reinstall the bundle to correct the error. If you created a custom
segment manually and it is damaged, delete the custom segment definition and recreate it.

When you edit the definition of a corrupted custom segment, only the Cancel button is available.
Depending on your permissions, the Delete button might also be available.

If a form or applied record accesses a corrupted custom segment, you can save or view the record
without the custom segment value.

For more information, see the help topic Adding a Custom Segment to a Bundle.

SuiteAnalytics
This release note was updated June 3, 2020.

NetSuite 2020.1 includes the following enhancements to SuiteAnalytics:

■ Dataset Separation in SuiteAnalytics Workbook


■ New Date Filters for SuiteAnalytics Workbook Pivot Tables and Charts
■ New Table View Tab in SuiteAnalytics Workbook
■ Analytics Data Source Browser Now Available
■ Idle Session Timeout for SuiteAnalytics Connect
■ 2020.1 Connect Browser
■ SuiteQL Available for SuiteScript and REST Web Services
■ Advance Notice: Upcoming Restriction for Search Formulas
■ New HTML Restrictions for Search Formulas Preference
■ New Restriction for Search Formulas

Dataset Separation in SuiteAnalytics Workbook


Prior to 2020.1, you defined, visualized, and analyzed your workbook source data in a single workbook
object.

As of 2020.1, workbooks and datasets exist as separate objects, each with their own respective owners
and accessibility rights. In a dataset, you define your workbook source data by selecting record types,

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteAnalytics 80

fields, and criteria for further analysis in a workbook. Conversely, in a workbook you visualize and analyze
your data using tables, pivot tables, and charts. Separating workbooks and datasets enables you to
connect a single dataset to multiple workbooks, reducing the number of redundant workbooks in
your account and preventing data discrepancies. Only dataset owners and users with administrator
permissions can edit the datasets in your account. Any changes to a dataset are automatically propagated
to the connected workbooks. Furthermore, you can now create workbooks using any of the existing
datasets that you have access to in your account. This saves you time during the workbook authoring
process and enables less experienced users to create complex workbooks.

To support this feature, the following enhancements have been made throughout SuiteAnalytics
Workbook:

■ Workbook Accessibility Changes


■ Analytics Home Page Updates
■ New Authoring Workflows
■ New Table View
■ Changes to Migrated Workbooks

Workbook Accessibility Changes


Like in previous releases, your access to a workbook depends on the features enabled in your account,
the role you use to log in to NetSuite, and the permissions assigned to you. However, in 2020.1 you must
also have access to a dataset before you can use a workbook that uses the dataset. Only the owner of a
dataset or a user with administrator permissions can give you access to a dataset that you did not create.
If you are an administrator or have the Analytics Administrator permission, you can access, edit, and
delete any workbooks or datasets in your account.

For more information about accessing workbooks and datasets, see the help topic Accessing and Sharing
Workbooks and Datasets.

For more information about the Analytics Administrator permission, see the help topic The Analytics
Administrator Permission.

Analytics Home Page Updates


The Analytics home page has been redesigned to display both datasets and workbooks.

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteAnalytics 81

From this page, you can create new workbooks and datasets, or share, edit, and delete any of the
workbooks or datasets that you own. If you are an administrator or have the Analytics Administrator
permission, the Analytics Home Page displays all workbooks and datasets in your account.

For more information, see the help topic Analytics Home Page.

New Authoring Workflows


In 2020.1, you can create workbooks based on any of the existing datasets that you have access to. If you
are an administrator or have the Analytics Administrator permission, you can create workbooks based on
all the datasets in your account. Furthermore, although workbooks and datasets now exist as separate
objects, you can still make changes to a dataset from within a workbook. Additionally, when you make
those changes, you can now preview the effect of your edits throughout the workbook before you save
them.

For more information, see the help topic Custom Workbooks and Datasets.

New Table View


If you want to explore your workbook source data without accessing or editing the connected dataset,
you can use the new Table View component.

For more information, see New Table View Tab in SuiteAnalytics Workbook.

Changes to Migrated Workbooks


Any workbooks you created prior to 2020.1 have been migrated as two separate dataset and workbook
objects. The data and selections you made within your workbooks is unchanged; however, the Dataset tab
now exists as its own dataset object and as a Table View within the workbook object.

For more information, see the help topic Custom Workbooks and Datasets.

New Date Filters for SuiteAnalytics Workbook Pivot Tables


and Charts
In 2019.2, SuiteAnalytics Workbook introduced new filtering options for pivot tables and charts, such as
the ability to filter the top or bottom results based on a specific measure.

In 2020.1, SuiteAnalytics Workbook adds support for filtering results using date conditions. You can base
these conditions on specific dates or custom date ranges.

For more information, see the help topic Workbook Component Filters.

New Table View Tab in SuiteAnalytics Workbook


In 2019.2, you could create multiple charts and pivot tables in a workbook, but you were limited to one
Data Grid. This limitation meant that any changes made in the Data Grid would impact all workbook
components. Therefore, you could not use the same dataset to explore different combinations of fields,

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteAnalytics 82

filters, and sorting options in a single workbook. To do so, you had to re-create the dataset in a new
workbook.

In 2020.1, you can use the new Table View to explore your datasets without altering the source data of
any associated workbooks. You can also add multiple Table Views in a single workbook, which lets you try
different combinations of fields, filters, and sorting options.

Using the Table View does not require complex customizations. Table Views enable you to view your data
without having to set a layout or define fields from joined records or custom formulas. To create a Table
View, drag the fields from the Fields list to the Table Viewer. After you add the fields to the Viewer, you can
filter and sort them as needed. Viewing your data on a Table View can be helpful to decide how to build
your charts and pivot tables.

As with charts and pivot tables, you can also rename each instance of the Table View in your workbooks.

The icons for the three workbook components are as follows:

■ Table Views are represented by the icon.


■ Pivot Tables are represented by the icon.
■ Charts are represented by the icon.

For more information about the Table View, see the help topic Workbook Table Views.

Analytics Data Source Browser Now Available


In previous releases, no dedicated browser was available that listed all of the record types and fields
available through the analytics data source. To see all record types and fields, you had to download
the Available Record Types spreadsheet, or use the oa_columns, oa_tables, and oa_fkeys through
SuiteAnalytics Connect

In 2020.1, you can now use the Analytics Browser to see an overview of all record types and fields
available for SuiteAnalytics Workbook, SuiteScript, SuiteTalk REST web services, and SuiteAnalytics
Connect. The Analytics Browser provides the information that you need to query the analytics data
source. Within the browser, record types are listed in alphabetical order. You can find the record types by
name or ID. The following information is available in the browser:

■ Record type - Use to find the name and the ID for that record type, a table with all available fields, and
an additional table with joined records, if applicable.
■ Field - Use to find the name and the ID for that field, the type of field, and whether the field is
supported for SuiteAnalytics Workbook, SuiteScript, SuiteTalk REST web services, and SuiteAnalytics
Connect.
■ Joined record type and foreign key fields - Use to find the ID for that joined record type, the ID
of the foreign key fields, and whether they are supported for SuiteAnalytics Workbook, SuiteScript,
SuiteTalk REST web services, and SuiteAnalytics Connect.

Note: The browser provides a static, global list of all analytics data. However, access to record
types and fields depends on the features enabled in your NetSuite account and the permissions
assigned to your role. For information about permissions, you can download a spreadsheet that
lists the usage of most NetSuite permissions. To access this spreadsheet, go to Permissions
Documentation.

You can use the Analytics Browser online, or you can download it.

Go to the Analytics Browser.

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteAnalytics 83

For more information about the analytics data source, see the help topic Analytics Data Source Overview.
For more information about working with the browser, see the help topic Working with the Analytics
Browser.

Idle Session Timeout for SuiteAnalytics Connect


As of 2020.1, SuiteAnalytics Connect enforces idle session timeout policies to enhance the security of
your connections and optimize system resources. After 90 minutes of inactivity, SuiteAnalytics Connect
sessions automatically time out.
The idle session timeout change is available for testing in 2020.1 Release Preview accounts when your
Release Preview account is ready to use. For details about Release Preview, see the help topic Release
Preview Availability.
If you exceed the time limit of inactivity, you are logged out of your session. To access the Connect
Service, you must log in again.

Note: The time during which a query is running is not considered time of inactivity.

You should always close all sessions that you are not using. As of 2020.1, sessions automatically time out
after 90 minutes of inactivity. The time limit will be set to a lower value in an upcoming release.
The idle session timeout applies to ODBC, JDBC, and ADO.NET drivers.

Note: The idle session timeout occurs when you query the NetSuite.com and NetSuite2.com
data sources.

For more information, see the help topics New Connections and Types of NetSuite Sessions.

2020.1 Connect Browser


The 2020.1 version of the Connect Browser is now available. You can find the links to the Connect
Browser in the Connect Schema topic.
The following is a list of the newly exposed tables:

■ Currency Exchange Rate Types


■ Currency Exchange Rates
■ Item Collection Map

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteAnalytics 84

■ Item Collections
■ Subscription Line Revisions
■ Unlocked Time Periods

Note: As of 2020.1 the existing Currency Rates table is used for backward compatibility only.
If you want to retrieve data about currency exchange rates, use the newly exposed Currency
Exchange Rates instead of the existing Currency Rates table.

For more information about how to work with the Connect Browser, see the help topic Working with the
Connect Browser.

SuiteQL Available for SuiteScript and REST Web Services


Warning: SuiteQL query execution through REST web services is a beta feature. The contents
of this feature are preliminary and may be changed or discontinued without prior notice. Any
change may impact the feature’s operation with the NetSuite application. Warranties and product
service levels do not apply to this feature or the impact of the feature on other portions of the
NetSuite application. We may review and monitor the performance and use of this feature. The
documentation for this feature is also considered a beta version and is subject to revision.

As of 2020.1, you can execute SuiteQL queries through the N/query module in SuiteScript and SuiteTalk
REST web services. For more information, see the following topics:

■ SuiteQL in the N/query Module


■ Executing SuiteQL Queries Through REST Web Services

For more information about SuiteQL in general, see the help topic SuiteQL.

Advance Notice: Upcoming Restriction for Search Formulas


Currently, you can use <script> tags in your search formulas. When you run saved searches, results
display the script output.
To avoid cross-site scripting (XSS) vulnerabilities, a new restriction will be enforced to prevent these scripts
from being rendered in saved search results. This implementation of this security measure is targeted for
August 20, 2020. After this date, all production and sandbox accounts will include this restriction. Search
results that contain <script> tags will display a message that script output is not available.
To enhance the security of your data, you should avoid using <scripts> tags in search formulas. You
should edit your existing search formulas, test your saved searches, and make any adjustments before
the upcoming restriction is enforced in your accounts.
For information on how to edit search formulas, see the help topic Using a Formula in Search Results.

New HTML Restrictions for Search Formulas Preference


Currently, formulas that include HTML markup are run automatically and saved search results display
HTML output.
To enhance the security of your data, you can prevent HTML output from being rendered in saved
search results. As of 2020.1, the Disable HTML in Search Formula (Text) box is available on the General
Preferences subtab.
When the box is checked, the HTML restriction is enforced and saved search results display content as
plain text.

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteAnalytics 85

To manage this preference, you can check the Disable HTML in Search Formula (Text) box at Setup >
Company > General Preferences.

Note: A new restriction will be enforced in an upcoming release to prevent <script> tags from
being rendered in saved search results. We encourage you to avoid using <script> tags because
saved search results cannot display script output for security reasons after the restriction is
enforced.

For more information, see the help topic Restricting HTML for Search Formulas.

New Restriction for Search Formulas


As of August 27, 2020, a new restriction is being enforced to prevent <script> tags from being rendered
in saved search results in all accounts. This security measure is being implemented to avoid cross-site
scripting (XSS) vulnerabilities.
You should avoid using <script> tags in new search formulas and edit your existing search formulas. If
you do not remove <script> tags, search results that contain <script> tags will display a message that the
script output is not available.
For information on how to edit search formulas, see the help topic Using a Formula in Search Criteria.

CSV Import
This release note was updated April 15, 2020.
NetSuite 2020.1 includes the following enhancements to CSV Import:

■ Newly Supported Record Types for CSV Import


■ Enhanced Size of the Name and Translation Fields in CSV Import Map Translation
■ Sales and Purchase Custom Transactions Available for CSV Import
■ Commerce Category Translation Sublist Import
■ Effective Dating for Employee Record Changes Available with CSV Import

Newly Supported Record Types for CSV Import


Record Type Notes

Inbound The inbound shipment record tracks such key shipment information as expected delivery dates,
Shipment items in the shipment, quantity to be received, and links to associated documentation and
transactions.

To import inbound shipment data, in the Import Assistant, set the Import Type to Transactions,
and the Record Type to Inbound Shipment.

For more information, see the help topic Inventory Details on an Inbound Shipment.

Item Collection The Item Collection record is a way of grouping catalog items. Item collections can be static or
dynamic. You can create and update static item collections using the CSV Import Assistant.

To import item collection data, in the Import Assistant, set the Import Type to Accounting, and
the Record Type to Item Collection.

For more information, see the help topic Item Collection Import.

Item Collection The Item Collection Item Map record captures which items are part of which static item collection.
Item Map You can create Item Collection Item Map records using the CSV Import Assistant.

ReleaseNotes_2020.1.0.pdf — Subject to Change


CSV Import 86

Record Type Notes


You cannot update an Item Collection Item Map record. To change the relationship between
item collections and items, you must add new Item Collection Item Map records for the new
relationships and then delete the existing, outdated records.

The Item Collection record and the Item Collection-Item Map record work together to define the
items in an item collection.

To import item collection item map data, in the Import Assistant, set the Import Type to
Accounting, and the Record Type to Item Collection Item Map.

For more information, see the help topic Item Collection Item Map Import.

Item Process The item process family is an item category that uses properties or attributes to identify and
Family group similar items in your warehouse.

The item process family record is available when the Warehouse Management feature is enabled
at Setup > Company > Enable Features, on the Items & Inventory subtab.

To import item process family data, in the Import Assistant, set the Import Type to Supply
Chain, and the Record Type to Item Process Family.

For more information, see the help topic Item Process Family Import.

Item Process The item process group is an item category that groups similar items in your warehouse using a
Group more refined property or attribute than the item process family.

The item process group record is available when the Warehouse Management feature is enabled
at Setup > Company > Enable Features, on the Items & Inventory subtab.

To import item process group data, in the Import Assistant, set the Import Type to Supply
Chain, and the Record Type to Item Process Group.

For more information, see the help topic Item Process Group Import.

Pick Strategy The pick strategy record contains filters that can be applied to the backend process that
determines the recommended bin for items in a pick task. When a wave transaction is saved
or released, the backend process uses any available pick strategies to sort bins based on pick
strategy filters

The pick strategy record is available when the Warehouse Management feature is enabled at
Setup > Company > Enable Features, on the Items & Inventory subtab.

To import pick strategy data, in the Import Assistant, set the Import Type to Supply Chain, and
the Record Type to Pick Strategy.

For more information, see the help topic Pick Strategy Import.

Zone Zone records specify areas in your warehouse where you putaway, store, or pick items. In
NetSuite WMS, you can create zone records and associate a warehouse location with each zone.

The zone record is available when the Warehouse Management feature is enabled at Setup >
Company > Enable Features, on the Items & Inventory subtab.

To import zone data, in the Import Assistant, set the Import Type to Supply Chain, and the
Record Type to Zone.

For more information, see the help topic Zone Import.

Enhanced Size of the Name and Translation Fields in CSV


Import Map Translation
As of 2020.1, the Name and the Translation fields in the CSV Import Map Translation dialog have been
enhanced and you can now enter up to 64 characters.

ReleaseNotes_2020.1.0.pdf — Subject to Change


CSV Import 87

This enhancement allows the translation of names and descriptions, even when the translation is longer
than the original or when it uses a different alphabet.

For more information, see the help topic Translating Import Map Name and Description.

Sales and Purchase Custom Transactions Available for CSV


Import
As of 2020.1, you can use the CSV Import Assistant to import sales and purchase custom transactions.

Additionally, the following sublists and subrecords are available for sales and purchase custom
transactions:

Sublist or Subrecord Availability Related Help Topics

Revenue Recognition Sales custom transactions. Revenue Recognition

Amortization Purchase custom transactions. Amortization Feature Overview

Shipping Sales custom transactions with the option of enabling item Shipping
line shipping and shipping to custom addresses.

Promotions Sales custom transactions. Promotions

Landed Costs Purchase custom transactions with the option of enabling Landed Cost
landed cost per line or landed cost for the whole
transaction.

Installments Sales custom transactions and purchase custom Creating Installments for sales.
transactions.
Vendor Installment Payments
for purchases.

For more information on how to import custom transactions, see the help topic Custom Transactions
Import.

Commerce Category Translation Sublist Import


The 2020.1 release adds the option to import translations for Commerce Categories. Translations are
based on Locale and result in the creation of a translation sublist record on the commerce category
record. The following fields are available for import:

■ External ID
■ Addition To
■ Description
■ Heading
■ Locale
■ Name
■ Page Banner
■ Page Title
■ Thumbnail Image

ReleaseNotes_2020.1.0.pdf — Subject to Change


CSV Import 88

For more information on importing translations for Commerce Categories, see the help topic Commerce
Category Translation Sublist.

Effective Dating for Employee Record Changes Available


with CSV Import
As of 2020.1, you can use the CSV Import Assistant to import changes to the employee record that are
effective as of a past or future date.

For more information about the effective dating feature for employee information, see the help topic
Effective Dating for Employee Information.

For details about the permission requirements for effective dating, see the help topic Effective Dating
Permission Requirements.

For more information about importing employee record changes with effective dating, see the help topic
Import of Employee Record Changes with Effective Dating.

SuiteFlow (Workflow Manager)


NetSuite 2020.1 includes the following enhancements to SuiteFlow features:

■ Support for Expenses Sublists in Workflows


■ Change to Default Behavior of Context Selection in Workflows and Actions

Support for Expenses Sublists in Workflows


As of 2020.1, sublist actions are now supported on the Expenses sublist on Expense report records. With
this change, you can run workflows and create sublist action groups set to execute on the Expenses
sublist. Previously, sublist actions were only supported on the Items sublist on Transaction records.

The following table shows the workflow actions supported on the Expenses sublist on Expense report
records, and indicates whether support is available for different workflow elements:

Workflow Actions Server Triggers Client Triggers* Entry/Exit Sublist Action Scheduled
Group
   
Create Line Yes Yes Yes
       
Create Record Yes
     
Return User Error Yes Yes
     
Set Field Value Yes Yes
   
Set Field Display Yes Yes Yes
Label
   
Set Field Mandatory Yes Yes Yes

*Supported client triggers vary based on the workflow action.

The addition of support for the Expenses sublist on the Expense report record allows you to further
customize your workflows to meet your specific business needs. You can use the Expenses sublist to add

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteFlow (Workflow Manager) 89

or update individual expenses on an Expense report record. For more information about the Expenses
sublist, see the help topic Expense Report Sublist Fields.

For more information about workflow actions, see the help topic Workflow Actions Overview.

Change to Default Behavior of Context Selection in


Workflows and Actions
As of NetSuite 2020.1, the default behavior of context selection in workflows and actions is different than
earlier versions of NetSuite. Previously, when you created a workflow or added an action to a workflow, all
of the contexts were selected by default, including Web Store and Web Application.

Now when you create a workflow or add an action to a workflow, all of the contexts are selected by
default, except for Web Store and Web Application. Additionally, the Context field displays how many
contexts you have selected.

This change in behavior does not impact existing workflows and actions. The default behavior does not
affect how you select contexts, and you can still select the Web Store and Web Application contexts. These
contexts are just not selected by default.

The change to the default behavior of context selection was made to address performance issues
associated with the Web Store and Web Application contexts. In addition, this release includes minor
changes to the execution contexts supported for scripts and workflows. For a list of these changes, see
Enhancements to Execution Contexts for Scripts and Workflows.

For more information about contexts and workflows, see the help topic Workflow Context Types.

SuiteScript
This release note was updated May 20, 2020.

Refer to the following sections for details on SuiteScript updates for NetSuite 2020.1:

■ Introducing SuiteQL API

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteScript 90

■ SuiteScript 2.1 Now Generally Available for Server Scripts


■ Enhancements to Execution Contexts for Scripts and Workflows
■ Localization Context Filtering for SuiteScript 2.0
■ Sales and Purchase Custom Transactions Available in SuiteScript
■ Map/Reduce Concurrency Limit Is Adjusted to Target Account Limit for SDF Projects
■ Change to Scripts on the Subsidiary Record Currency Field
■ Deprecation of Script Queue Monitor (Beta)
■ Method Added to N/redirect Module
■ Advance Notice: Upcoming Deprecation of RESTlet Authentication Through User Credentials
■ Support for Relative File Paths in the N/file Module
■ 2020.1 SuiteScript Macro Exposures
■ 2020.1 SuiteScript Record Exposures
■ 2020.1 SuiteScript Records Browser

Introducing SuiteQL API


In NetSuite 2020.1, SuiteQL API is available as a new feature in the N/query module. This feature provides
another way to use SuiteQL (which was made available in a previous release) in addition to SuiteAnalytics
Connect. SuiteQL is a query language based on the SQL-92 revision of the SQL database query language.
It provides advanced query capabilities you can use to access your NetSuite records and data. For more
information, see SuiteQL.

For more information about SuiteQL API in this release, see the following sections:

■ New Object and Methods


■ SuiteQL Support in Map/Reduce Scripts
■ Support for Pagination and Aliasing

New Object and Methods


SuiteQL API provides the following new object and new methods in the N/query module:

■ A new object, query.SuiteQL, represents a SuiteQL query. It includes properties that represent the
query type, the SuiteQL string representation of the query, result columns to return from the query,
and any additional parameters the query requires. You can use SuiteQL.run() to run the query as a
non-paged query or SuiteQL.runPaged(options) to run the query as a paged query.
■ A new object-level method, Query.toSuiteQL(), converts an existing query (as a query.Query object) to
its SuiteQL representation (as a query.SuiteQL object).
■ Two new module-level methods, query.runSuiteQL(options) and query.runSuiteQLPaged(options),
let you run an arbitrary SuiteQL query. You can specify this query as a SuiteQL
string, query.SuiteQL object, or generic JavaScript Object containing a required query property and an
optional params property.

Here is an example of how to load an existing query, convert it to SuiteQL, and run it:

var myLoadedQuery = query.load({

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteScript 91

id: 'custworkbook237'
});

var mySuiteQLQuery = myLoadedQuery.toSuiteQL();


var myResultSet = mySuiteQLQuery.run();

SuiteQL Support in Map/Reduce Scripts


In the getInputData(inputContext) stage of a map/reduce script, you can specify how you want to
generate the input data. For example, you can generate the data using an array, a JavaScript Object, a
search.Search object, or one of several other data types.

In NetSuite 2020.1, you can generate the data using a SuiteQL query. In the getInputData(inputContext)
stage, you can return an object that represents a SuiteQL query by including the following properties:

■ type — The type of data you are providing. For SuiteQL queries, this type is suiteql.
■ query — The SuiteQL query as a string. If the query accepts parameters, you can use question marks
(?) as placeholders in the query string. You specify parameter values using the params property.
■ params — Values for any parameters the SuiteQL query uses. This property is an array, and the order
of values you specify should match the order the parameters appear in the query string.

Here is an example of how to construct a simple query in SuiteQL and return it from the
getInputData(inputContext) stage of a map/reduce script:

function getInputData() {
var mySuiteQLQuery =
"SELECT " +
" \"TRANSACTION\".tranid AS tranidRAW, " +
" \"TRANSACTION\".trandate AS trandateRAW, " +
" \"TRANSACTION\".postingperiod AS postingperiodDISPLAY " +
"FROM " +
" \"TRANSACTION\" WHERE \"TRANSACTION\".\"ID\" = ? ";

return {
type: 'suiteql',
query: mySuiteQLQuery,
params: [271]
};
}

In this example, the parameter value 271 is the internal ID of a transaction record.

Support for Pagination and Aliasing


SuiteQL API supports paginated query results. Paginated query results help you process large result sets
more efficiently by retrieving a subset (or page) of the full result set at a time. You can obtain paginated
query results by using the following approaches:

■ If you have a query.SuiteQL object already in your script, you can use SuiteQL.runPaged(options) to


obtain paginated results for that SuiteQL query.
■ If you do not have a query.SuiteQL object, you can use query.runSuiteQLPaged(options) to obtain
paginated results for an arbitrary SuiteQL query.

These methods accept an optional parameter, pageSize, that lets you specify the number of query results
on each page. The default value is 50 results per page. The minimum page size is 5 results per page, and
the maximum page size is 1000 results per page.

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteScript 92

SuiteQL API also supports standard SQL aliasing using the AS keyword. You can specify an alias for a field
name, and this alias is used when you retrieve mapped query results using ResultSet.asMappedResults()
or Result.asMap(). For example, you can use the following approach to create an alias for the entityid
field on a customer record:

var results = query.runSuiteQL(


'SELECT entityid AS friendlyname, email FROM customer WHERE email IS NOT NULL'
).asMappedResults();

In the mapped query results, friendlyname appears as an alias for the entityid field.

SuiteScript 2.1 Now Generally Available for Server Scripts


In NetSuite 2020.1, SuiteScript 2.1 is now generally available for server scripts. SuiteScript 2.1 was
previously available as a beta feature.

SuiteScript 2.1 is the latest minor version of SuiteScript, and it is backward compatible with SuiteScript
2.0. This version is based on ES.Next, which is part of the ECMAScript specification, and it includes new
language capabilities and functionality. It supports all server script types (such as user event scripts,
scheduled scripts, and Suitelets). SuiteScript 2.1 and future versions of SuiteScript will also support
features planned for future editions of the ECMAScript specification using ES.Next. For more information,
see the help topic SuiteScript 2.1.

For more information about SuiteScript 2.1 in this release, see the following sections:

■ SuiteScript 2.x Notation


■ Transition Period for SuiteScript 2.x Scripts
■ Account-Level Preference for SuiteScript 2.x Scripts

SuiteScript 2.x Notation


When you write a script, you must include a JSDoc comment block that specifies the version of SuiteScript
to use. For scripts other than SuiteScript 1.0 scripts, you can specify the following versions:

■ 2.0
■ 2.1
■ 2.x

The 2.0 and 2.1 values indicate that the script uses that version of SuiteScript. The 2.x value usually
represents the latest version of SuiteScript that is generally available and does not represent any versions
that are released as beta features. However, this does not yet apply to SuiteScript 2.1. In this release, the
2.x value indicates that a script uses SuiteScript 2.0, not SuiteScript 2.1. You can still use SuiteScript 2.1
and all of its features in your server scripts, but you must specify a version of 2.1 explicitly. Your 2.x scripts
will not run as SuiteScript 2.1 scripts until a future release.

For more information, see SuiteScript 2.1 Versioning.

Transition Period for SuiteScript 2.x Scripts


NetSuite is providing a transition period of one year for you to test your existing scripts and make sure
they work as expected using SuiteScript 2.1. This transition period starts with the NetSuite 2020.1 release
and ends with the NetSuite 2021.1 release. During this period, the 2.x value will indicate that a script uses

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteScript 93

SuiteScript 2.0. After this transition period (in NetSuite 2021.1 and subsequent releases), the 2.x value will
indicate that a script uses SuiteScript 2.1.

The following table indicates which version of SuiteScript the 2.x value uses in each release:

NetSuite Release SuiteScript 2.x Maps To

NetSuite 2020.1 SuiteScript 2.0

NetSuite 2020.2 SuiteScript 2.0

NetSuite 2021.1 and subsequent releases SuiteScript 2.1

Account administrators will receive notifications throughout this period reminding them of the changes
that will occur and to prepare for them. An administrator will receive these notifications if there is at least
one script in their account that uses the 2.x notation. For more information, see the help topic Staying
Informed on SuiteScript 2.1.

Account-Level Preference for SuiteScript 2.x Scripts


During the transition period, a preference is available at the NetSuite account level that lets you map the
2.x notation to SuiteScript 2.1 for server scripts in your account. You can use this preference to override
the default mapping of 2.x to SuiteScript 2.0 during the transition period, allowing you to test all 2.x server
scripts in your account as SuiteScript 2.1 scripts at the same time.

Note: This preference applies only to server scripts. It does not apply to client scripts in your
account.

You can set this option at Setup > Company > Preferences > General Preferences:

When the transition period ends, this option will be removed, and all 2.x scripts will run as SuiteScript 2.1
scripts.

For more information, see the help topic Enabling SuiteScript 2.1 at the Account Level.

Enhancements to Execution Contexts for Scripts and


Workflows
NetSuite 2020.1 includes enhancements to execution contexts supported for user event scripts, client
scripts, and workflows. Execution contexts provide information about how or when a script or workflow
is triggered to execute. For example, a script can be triggered in response to an action in the NetSuite
application or an action occurring in another context, such as a web services integration. You can use
execution context filtering to ensure that your scripts or workflows are triggered only when necessary.
This filtering can improve performance in contexts where the scripts or workflows are not required.

In this release, several execution context filter values have been added to give you more control over
script and workflow execution. The following contexts are new in 2020.1:

■ Bank Connectivity

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteScript 94

■ Bank Statement Parser


■ Financial Institution Connectivity
■ Platform Extension
■ REST Web Services
■ SOAP Web Services
■ Revenue Management

The Web Services context, which was available in previous releases, is no longer available. It has been
renamed to SOAP Web Services. A related context, REST Web Services, is new in this release. For more
information, see SuiteScript Execution Context for REST Web Services.

For scripts, you set up execution context filtering on the Context Filtering tab when you create or edit a
script deployment record:

For workflows, you set execution context filtering in the Event Definition section when you create or edit a
workflow:

Execution context filtering behavior is now consistent for scripts and workflows. The same values are
available for both scripts and workflows, and the default selections are the same. By default, all contexts
are selected except for Web Application and Web Store. Often, it is not required to trigger scripts in
these contexts, so they are disabled by default to improve performance. If you want your script or

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteScript 95

workflow to be triggered in these contexts, make sure to select them explicitly when you create your
script deployment record or workflow.

For scripting, execution context values are available using the runtime.executionContext property and
the runtime.ContextType enum. You can use these elements to programmatically determine how a script
was triggered and take appropriate action. For example, you may want different script logic to execute
depending on whether the script was triggered as a client script or in response to a UI action.

For more information about execution contexts, see the following help topics:

■ Change to Default Behavior of Context Selection in Workflows and Actions


■ Execution Contexts
■ runtime.executionContext
■ runtime.ContextType

Localization Context Filtering for SuiteScript 2.0


As of 2020.1, you can define the localization context in which a client or user event script can execute.
  Localization context filtering allows you to execute a script based on the country associated with the
active record or transaction and prevents scripts from executing unnecessarily. For a list of records and
transactions that support localization, see the help topic Records that Support Localization Context.

You can specify the execution order of localized client and user event scripts. A maximum of 10 localized
and 10 non-localized client scripts are supported. For more information, see the help topic The Scripted
Records Page.

The system automatically determines the localization context for records and transactions based on
their values for country fields such as subsidiary and tax nexus. It is important to understand this
determination before you set up localization context filtering for scripts. For details, see Determining the
Localization Context.

The localization context feature includes:

■ Localization Context Field — The Localization Context field on the Context Filtering tab has been
added to the script deployment record. This field lists the countries for which the script is relevant.
 All countries are selected by default. When this field is set to a value other than the default, the script
runs only on records associated with the selected country or countries, based on records’ localization
context.
■ Entry Points for Client Scripts — There are two new entry points for SuiteScript 2.0 client
scripts. These entry points are required to use localization context filtering in client scripts.
localizationContextEnter is executed when the record enters the localization context that is specified
on the script deployment record. localizationContextExit is executed when the record exits that
context.
■ Locale Parameter — scriptContext.locale is a new parameter for the localizationContextEnter
and localizationContextExit entry points. This parameter lists the countries representing the new
localization context.

The following table shows how you can specify the localization context based on the script type.

Script Type Defining Localization Context Filtering

SuiteScript 2.0 Client Complete the following steps to add localization context filtering to client scripts:
Script Type
1. Use the localizationContextEnter and localizationContextExit entry points in your
script.

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteScript 96

2. Define the localization context on the Context Filtering tab on the script
deployment record. For more information, see the help topic Localization Context.

SuiteScript 2.0 User Event Define the localization context on the Context Filtering tab on the script deployment
Script Type record only. For more information, see the help topic Localization Context.

If a script deployment is localized on the Context Filtering tab, the pageInit entry point of the script is
ignored, and no other entry points of the script are called before localizationContextEnter or after
localizationContextExit.  It is possible that the record may never enter a localization context. In this
case, no callbacks of the script are executed. For more information, see the help topic SuiteScript 2.0
Client Script Entry Points and API.

Sales and Purchase Custom Transactions Available in


SuiteScript
As of 2020.1, sales and purchase custom transaction types are available in SuiteScript.

Additionally, the following sublists and subrecords are available for sales and purchase custom
transactions:

Sublist or Subrecord Availability Related Help Topics

Revenue Recognition Sales custom transactions. Revenue Recognition

Amortization Purchase custom transactions. Amortization Feature Overview

Shipping Sales custom transactions with the option of enabling item Shipping
line shipping and shipping to custom addresses.

Promotions Sales custom transactions. Promotions

Landed Costs Purchase custom transactions with the option of enabling Landed Cost
landed cost per line or landed cost for the whole
transaction.

Installments Sales custom transactions and purchase custom Creating Installments for sales.
transactions.
Vendor Installment Payments
for purchases.

For more information on custom transactions in SuiteScript, see the help topic Custom Transaction.

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteScript 97

Map/Reduce Concurrency Limit Is Adjusted to Target


Account Limit for SDF Projects
In NetSuite 2020.1, the behavior of the concurrency limit for map/reduce script objects in SDF projects
has been updated. Previously, a SDF project validation failed with an error if the SDF project contained
a map/reduce object that set the concurrency limit to a value that was greater than the target account
limit. Now, if the concurrency limit in the map/reduce object is greater than the target account limit, SDF
adjusts the concurrency limit to the target account limit.

For more information, see Map/Reduce Concurrency Limit Adjusts to Target Account Limit.

Change to Scripts on the Subsidiary Record Currency Field


Previously, getting the text or value of the Currency field on the subsidiary record returned inconsistent
results depending on whether the field was being accessed in edit or read-only mode. As of 2020.1, this
behavior is changed to ensure results are consistent.

To avoid unexpected results after your account is upgraded to 2020.1, you should modify any scripts that
get the text or value of the subsidiary record Currency field while in read-only mode. The Currency field
is read-only after a subsidiary record is created and saved.

For example, in previous releases, scripts returned the following for these APIs in read-only mode:

Version API Current Value Returned

SuiteScript 1.0 nlapiGetFieldValue('currency') The text value stored in the field. For
example, “USD.”

nlapiGetFieldText('currency') null

nlapiGetFieldValue('currencyvalue') The internal ID of the value stored in the


field. For example, 1.

SuiteScript 2.0 record.getValue({fieldId:'currency'}) The text value stored in the field. For
example, “USD.”

record.getText({ fieldId: 'currency'}) The text value stored in the field. For
example, “USD.”

record.getValue({ fieldId: 'currencyvalue'}) The internal ID of the value stored in the


field. For example, 1.

As of 2020.1, these SuiteScript APIs return the following:

Version API 2020.1 Value Returned

SuiteScript 1.0 nlapiGetFieldValue('currency') The internal ID of the value stored in the field.
For example, 1.

nlapiGetFieldText('currency') The text value stored in the field. For example,


“USD.”

nlapiGetFieldValue('currencyvalue') The internal ID of the value stored in the field.


For example, 1. This field ID will be deprecated
in 2020.2.

SuiteScript 2.0 record.getValue({fieldId: 'currency'}) The internal ID of the value stored in the field.
For example, 1.

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteScript 98

Version API 2020.1 Value Returned

record.getText({ fieldId: 'currency'}) The text value stored in the field. For example,
“USD.”

record.getValue({ fieldId: 'currencyvalue'}) The internal ID of the value stored in the field.
For example, 1. This field ID will be deprecated
in 2020.2.

Deprecation of Script Queue Monitor (Beta)


Important: The target date for the deprecation of Script Queue Monitor (SQM) (Beta) was
changed from September 3, 2019 to December 10, 2019.

As of 2019.2, the Script Queue Monitor (Beta) SuiteApp (Bundle ID: 56125) is deprecated. The target date
for this deprecation was December 10, 2019, shifted from a previous target of September 3, 2019.
After this SuiteApp’s deprecation, you can no longer use it to monitor script deployments of accounts
that continue to use queues.  You must start to monitor your queues on either the Script Queue
Monitor (SQM) dashboard or the SuiteCloud Processors Monitor tool that are integrated in Application
Performance Management (APM). If you want a better view of jobs handled by SuiteCloud Processors,
scheduling queues, or both, you must use the SuiteCloud Processors Monitor tool.
You have to meet certain requirements, such as using an Administrator role or a role with specific
permissions, to use the APM SuiteApp. After you install the APM SuiteApp, you can access the SQM
dashboard at Customization > Performance > Script Queue Monitor. You can access the SuiteCloud
Processors Monitor at Customization > Performance > SuiteCloud Processors Monitor.
For more information, see:

■ Using the Script Queue Monitor Dashboard in APM


■ Monitoring SuiteCloud Processors Performance

Method Added to N/redirect Module


A new redirect.toRecordTransform(options) method has been added to the N/redirect module. The
method opens the form of the destination transaction and uses information from the source transaction
to fill in fields on the form. For more information, see the help topic N/redirect Module.

Advance Notice: Upcoming Deprecation of RESTlet


Authentication Through User Credentials
As of the 2021.1 release, user credentials authentication for newly created RESTlets will not be
supported. If you attempt to use user credentials to authenticate a new RESTlet, an HTTP error response
will be returned.
This change will not affect RESTlets created before 2021.1, except for RESTlets included in bundles or
SuiteApps that are installed into target accounts as of 2021.1 or later.
You must ensure that RESTlet integrations created as of 2021.1 or later use an alternative authentication
method, such as token-based authentication (TBA) or OAuth 2.0.
You must also ensure that RESTlets included in bundles or SuiteApps use TBA or OAuth 2.0 for
authentication. This change applies to all RESTlets included in bundles or SuiteApps, not only to RESTlets
created as of 2021.1 or later. The installation of bundles or SuiteApps changes the creation date of script

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteScript 99

records. For this reason, you must ensure that all RESTlets in a bundle or SuiteApp are updated to use
TBA or OAuth 2.0.
For information about setting up TBA for RESTlets, see the help topic Setting up Token-based
Authentication for a RESTlet integration.
For information about using OAuth 2.0 for RESTlets, see the help topic Using OAuth 2.0 for RESTlet
Authentication.

Support for Relative File Paths in the N/file Module


You can specify a relative file path when you load a file using the file.load(options) method in the N/file
module. Relative paths always start with ./ or ../. Previously, you could load a file only by specifying the
internal ID of the file or the absolute file path to the file in the File Cabinet. For more information, see the
help topic N/file Module. This feature was introduced in NetSuite 2019.2.

2020.1 SuiteScript Macro Exposures


Record Type Macro ID UI Button Label Notes

Project Work Breakdown getAmountsFields Get Amounts Fields Gets the contents of all amounts
Structure Macros field names.

Project Work Breakdown setAmountFieldValue Set Amount Field Sets the value of the amount field.
Structure Macros Value

Project Work Breakdown getAmountFieldValue Get Amount Field Gets the value of the amount field.
Structure Macros Value

Project Work Breakdown getUnmatchedActuals Get Unmatched Gets the unmatched actuals.
Structure Macros Actuals

2020.1 SuiteScript Record Exposures


Record Type Notes

Balance Transactions by To use the balance transactions by segments record, you must enable the Balancing
Segments Segments and Custom Segments feature.

The balance transactions by segments record is scriptable in server SuiteScript only. The
record is partially scriptable, you can create, read, and search it using SuiteScript.

Bonus To use the bonus record, you must enable the Compensation Tracking feature.

The bonus record is scriptable in both client and server SuiteScript.

Bonus Type To use the bonus type record, you must enable the Compensation Tracking feature.

The bonus type record is scriptable in both client and server SuiteScript.

Item Process Family The item process family record is available when the Warehouse Management feature is
enabled.

The item process family record is scriptable in both client and server SuiteScript.

Item Process Group The item process group record is available when the Warehouse Management feature is
enabled.

The item process group record is scriptable in both client and server SuiteScript.

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteScript 100

Record Type Notes

Memorized Transaction Memorized transaction templates and definitions must be created in the NetSuite user
Definition interface, but existing memorized transaction definitions can be called using SuiteScript.

Memorized transaction definitions are scriptable in both client and server SuiteScript.
Automatically-created transactions do not support server-side scripting.

Memorized transaction definitions support only the Read, Update, Delete, and Search
functions.

Order Type The order type is a category that associates attributes to sales and transfer orders. In
NetSuite WMS, you can create an accounting list of multiple order types and associate each
outbound sales or transfer order with one order type.

The order type record is available when the Warehouse Management feature is enabled.

The order type record is scriptable in both client and server SuiteScript.

Pick Strategy The pick strategy record is available when the Warehouse Management feature is enabled.

The pick strategy record is scriptable in both client and server SuiteScript.

Pick Task The pick task record is available when the Warehouse Management feature is enabled.

Pick task records can only be generated from wave transactions.

The pick task record is scriptable in both client and server SuiteScript.

The pick task record is partially scriptable — it can be updated, deleted, and searched using
SuiteScript. Pick tasks cannot be created or copied using SuiteScript.

Project Work Breakdown To use the project work breakdown structure record, you must enable the Job Costing and
Structure Project Budgeting, Advanced Project Accounting, Custom Records, Custom Segments, and
Activity Codes features.

The project work breakdown structure event record is scriptable in both client and server
SuiteScript.

Copy and transform are not supported.

Vendor Prepayment The vendor prepayment record is scriptable in both client and server SuiteScript.

The script user must have the required permission level for the Vendor Prepayment
permission.

Vendor Prepayment The vendor prepayment application record is scriptable in both client and server
Application SuiteScript.

The script user must have the required permission level for the Vendor Prepayment
Application permission.

Wave The wave transaction is available when the Warehouse Management feature is enabled.

The wave transaction is scriptable in both client and server SuiteScript.

The wave transaction is partially scriptable — it can be updated, deleted, and searched
using SuiteScript. Waves cannot be created or copied using SuiteScript.

Zone The zone record is available when the Warehouse Management feature is enabled.

The zone record is scriptable in both client and server SuiteScript.

2020.1 SuiteScript Records Browser


The 2020.1 version of the SuiteScript Records Browser is now available.

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteScript 101

You can find links to the SuiteScript Records Browser in several places, including the following:

■ The help topic titled Working with the SuiteScript Records Browser.
■ The reference page for each supported record in the SuiteScript Records Guide. The SuiteScript
Records Guide is available in the NetSuite Help Center and can be downloaded as a PDF from the User
Guides topic.

SuiteTalk Web Services Integration


This release note was updated April 15, 2020.

NetSuite 2020.1 includes the following enhancements to web services features:

■ Changes in the URL Structure of REST Web Services


■ REST Web Services Support for CRUD Operations on Custom Records
■ Fully Supported Record Types for REST Web Services in 2020.1
■ New REST API Browser
■ Record Action Execution Through REST Web Services
■ Support for Record Transformation Through REST Web Services
■ SuiteQL Query Execution Through REST Web Services
■ Changes in SuiteAnalytics Workbook Execution Through REST Web Services
■ SuiteScript Execution Context for REST Web Services
■ REST Web Services Requests and Responses Tracked in the Execution Log
■ Sales and Purchase Custom Transactions Available in SOAP Web Services
■ New GetConcurrencyGovernance Operation in SOAP Web Services
■ Operations Removed in 2020.1 SOAP Web Services Endpoint
■ Governance Enabled for All Accounts
■ Integration Record Enhancements Related to OAuth 2.0
■ Field Type Change in the Project Task Record
■ Advance Notice: Upcoming Deprecation of SOAP Web Services Authentication Through User
Credentials
■ SOAP Web Services Version 2020.1
■ Araxis Merge Diff File for the 2020.1 Endpoint
■ 2020.1 SOAP Schema Browser

Changes in the URL Structure of REST Web Services


As of 2020.1, you can access NetSuite resources through REST web services by using URLs specific to
either record or query service.

To use CRUD operations on records, you can use a URL similar to the following:

PATCH https://demo123.suitetalk.api.netusite.com/services/rest/record/v1/customer/42

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteTalk Web Services Integration 102

To access resource metadata, you can use a URL similar to the following:

GET https://demo123.suitetalk.api.netsuite.com/services/rest/record/v1/metadata-catalog

For information about using metadata, see the help topic Working with Resource Metadata.

To execute saved datasets, you can use a URL similar to the following:

GET https://demo123.suitetalk.api.netusite.com/services/rest/query/v1/workbook/custworkbook123/result

For more information, see the help topic REST Web Services URL Schema and Account-Specific URLs.

REST Web Services Support for CRUD Operations on


Custom Records
As of 2020.1, you can use all CRUD (create, read, update, and delete) operations on custom record
instances. You can use CRUD operations to perform business processing on custom records and move
dynamically between custom records.

In NetSuite, you track all of the information in your account using records. Users with the Custom Record
Entries permission can create custom records that collect information specific to the needs of their
business.

Creating custom record types through REST web services is not supported. To work with custom record
definitions, you must have the Custom Records feature enabled on your account. To enable the feature,
go to Setup > Company > Setup Tasks > Enable Features, and select Custom Records on the SuiteCloud
subtab. You must create a custom record type in the UI, and then you can work with instances of the
custom record type through REST web services. For information, see the help topic Creating Custom
Record Types.

You also can use SDF to create custom record types. For information, see the help topic Custom Record
Types as XML Definitions.

For information about using CRUD operations, see the sections under Working with Records.

Fully Supported Record Types for REST Web Services in


2020.1
The following table lists the records that are fully supported as of 2020.1.

Record Type Notes

Billing Account Available if SuiteBilling features are enabled. For information, see the help topic Enabling
SuiteBilling Features.

Price Book Available if SuiteBilling features are enabled. For information, see the help topic Enabling
SuiteBilling Features.

Price Plan Available if SuiteBilling features are enabled. For information, see the help topic Enabling
SuiteBilling Features.

Subscription Available if SuiteBilling features are enabled. For information, see the help topic Enabling
SuiteBilling Features.

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteTalk Web Services Integration 103

Record Type Notes

Subscription Line Available if SuiteBilling features are enabled. For information, see the help topic Enabling
SuiteBilling Features.

A subscription line record is always tied to a subscription record.

Subscription Plan Available if SuiteBilling features are enabled. For information, see the help topic Enabling
SuiteBilling Features.

A subscription requires a subscription plan, but the subscription plan is not always tied to a
subscription.

Subsidiary You must use NetSuite OneWorld or have the Subsidiaries feature enabled to use the subsidiary
record.

The POST (create), PATCH (update), and DELETE operations are not supported.

Apart from these fully supported records, all records listed in the REST API Browser are available as beta
records in REST web services. For information, see the REST API Browser. For information about working
with the browser, see the help topic The REST API Browser.

New REST API Browser


The REST API Browser is a browser that provides a visual overview of the structure and capabilities of the
REST web services Record API. The REST API browser includes information such as the following:

■ The support level of records. Beta records are marked with a beta label.
■ The summary of all records, sublists, schema definitions, and other objects.
■ The available operations you can perform on a record.
■ The description of URLs, HTTP methods, and request parameters used for CRUD operations.
■ The structure of responses you can receive after performing an operation.
■ The description of field names and field types, and the properties of fields.

To access the browser, see the REST API Browser.

For more information about working with the browser, see the help topic The REST API Browser.

Record Action Execution Through REST Web Services


Warning: Record action execution through REST web services is a beta feature. The contents
of this feature are preliminary and may be changed or discontinued without prior notice. Any
change may impact the feature’s operation with the NetSuite application. Warranties and product
service levels do not apply to this feature or the impact of this feature on other portions of the
NetSuite application. We may review and monitor the performance and use of this feature. The
documentation for this feature is also considered a beta version and is subject to revision.

REST web services support APIs that provide the programmatic equivalent of clicking a button in the
NetSuite user interface. With the record action APIs, you can use REST web services to trigger the same
business logic that is triggered by the click of a UI button.

By using record actions, you can update the state of a record. Approve and reject are two examples of
record actions. When an approve or a reject action is executed on a record, the approval status of the
record is saved immediately.

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteTalk Web Services Integration 104

REST web services support the same record actions supported by SuiteScript. For a list of supported
actions, see the help topic Supported Record Actions.

For more information, see the help topic Executing Record Actions.

Support for Record Transformation Through REST Web


Services
Warning: Support for record transformation through REST web services is a beta feature. The
contents of this feature are preliminary and may be changed or discontinued without prior notice.
Any change may impact the feature’s operation with the NetSuite application. Warranties and
product service levels do not apply to this feature or the impact of this feature on other portions of
the NetSuite application. We may review and monitor the performance and use of this feature. The
documentation for this feature is also considered a beta version and is subject to revision.

As of 2020.1, you can use REST web services to transform a record from one type into another. In REST
web services, you use the POST method to send a record transformation request.

All record transformations available in SuiteScript are also available in REST web services. For information
about the supported transformation types, see the help topic record.transform(options).

For more information about record transformation through REST web services, see the help topic
Transforming Records.

SuiteQL Query Execution Through REST Web Services


Warning: SuiteQL query execution through REST web services is a beta feature. The contents
of this feature are preliminary and may be changed or discontinued without prior notice. Any
change may impact the feature’s operation with the NetSuite application. Warranties and product
service levels do not apply to this feature or the impact of the feature on other portions of the
NetSuite application. We may review and monitor the performance and use of this feature. The
documentation for this feature is also considered a beta version and is subject to revision.

As of 2020.1, you can execute SuiteQL queries through REST web services.

SuiteQL is a query language based on the SQL database query language. SuiteQL provides advanced
query capabilities that can be used to access NetSuite records.

To execute SuiteQL queries through REST web services, send a POST request to the suiteql resource,
and specify the query in the request body after the query parameter q. The following example shows a
SuiteQL query executed through REST web services.

> POST https://demo123.suitetalk.api.netsuite.com/services/rest/query/v1/suiteql


> Prefer: transient
. {
. "q": "SELECT email, COUNT(*) as count FROM transaction GROUP BY email"
. }

For more information about SuiteQL in general, see the help topic SuiteQL.

For more information about executing SuiteQL queries through REST web services, see the help topic
Executing SuiteQL Queries Through REST Web Services.

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteTalk Web Services Integration 105

Changes in SuiteAnalytics Workbook Execution Through


REST Web Services
Warning: Support for SuiteAnalytics workbook execution through REST web services is a
beta feature. The contents of this feature are preliminary and may be changed or discontinued
without prior notice. Any change may impact the feature’s operation with the NetSuite application.
Warranties and product service levels do not apply to this feature or the impact of this feature on
other portions of the NetSuite application. We may review and monitor the performance and use
of this feature. The documentation for this feature is also considered a beta version and is subject
to revision.

SuiteAnalytics Workbook is an analytical tool available in NetSuite. With SuiteAnalytics Workbook, you can
create customizable workbooks that combine queries, pivot tables, and charts using a single tool that
leverages a new data source. For information about working with SuiteAnalytics workbooks in the UI, see
the help topic SuiteAnalytics Workbook Overview.

In REST web services, you can run saved workbooks and retrieve their results. You can execute both
standard and custom workbooks.

As of 2020.1, the URL structure for executing workbooks through REST web services changed and a
result parameter was added to the URL. To execute a workbook, you send a GET request similar to the
following:

GET https://demo123.suitetalk.api.netsuite.com/services/rest/query/v1/workbook/ExampleWorkBook1/result

When you work with SuiteAnalytics workbooks in REST web services, consider the following:

■ Workbooks cannot be created, filtered, or edited through REST web services.


■ Metadata is not provided for saved analytics workbooks.
■ The response from a saved analytics execution returned through REST web services may have a
different format and values than responses for record instance requests.

For more information, see the help topic Working with SuiteAnalytics Workbooks in REST Web Services.

SuiteScript Execution Context for REST Web Services


NetSuite 2020.1 introduces the REST web services script execution context. For NetSuite user event and
client scripts, you can set up execution context filtering to control the contexts in which these scripts
can run. You can set up execution context filtering in the Execution Context field on the Context Filtering
subtab of the Script Deployment record. For more information, see Enhancements to Execution Contexts
for Scripts and Workflows.

If a script has its execution context set to REST web services, the script only executes if it is triggered
through a REST web services request.

For example, you can deploy a script similar to the following on customer records. In this example, the
beforeSubmit script is only executed on the record if the request is triggered through REST web services.

define(['N/record,' 'N/runtime'], function(record, runtime) {


function beforeSubmit(context) {
var ctx = runtime.executionContext
var isRestWs = (runtime.ContextType.REST_WEBSERVICES === ctx);

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteTalk Web Services Integration 106

log.debug(ctx + ": Before submit of " + context.newRecord.type);


}

For more information about script execution contexts, see the help topic runtime.executionContext.

For information about execution context behavior in workflows, see Change to Default Behavior of
Context Selection in Workflows and Actions.

REST Web Services Requests and Responses Tracked in the


Execution Log
As of 2020.1, you can access the contents of REST web services requests and responses through the REST
Web Services Execution Log. To access the REST Web Services Execution Log, go to Setup > Integration >
Integration Management > Manage Integrations, and select the integration record you want to view. On
the integration record, go to REST Web Services on the Execution Log subtab, and click View to download
a request or a response.

The requests and responses logged in the execution log contain the values of sensitive fields in masked
format. For information about using an encrypted format on custom fields, see the help topic Encrypted
Custom Field Stored Values.

For more information about REST Web Services logging, see the help topic Using the REST Web Services
Execution Log.

Sales and Purchase Custom Transactions Available in SOAP


Web Services
As of 2020.1, sales and purchase custom transaction types are available in SOAP web services.

Additionally, the following sublists and subrecords are available for sales and purchase custom
transactions:

Sublist or Subrecord Availability Related Help Topics

Revenue Recognition Sales custom transactions. Revenue Recognition

Amortization Purchase custom transactions. Amortization Feature Overview

Shipping Sales custom transactions with the option of enabling item Shipping
line shipping and shipping to custom addresses.

Promotions Sales custom transactions. Promotions

Landed Costs Purchase custom transactions with the option of enabling Landed Cost
landed cost per line or landed cost for the whole
transaction.

Installments Sales custom transactions and purchase custom Creating Installments for sales.
transactions.
Vendor Installment Payments
for purchases.

Sales and purchase custom transactions differ in a few things from other custom transaction types
in SOAP web services. To understand these differences, read the topic Sales and Purchase Custom
Transaction Types.

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteTalk Web Services Integration 107

New GetConcurrencyGovernance Operation in SOAP Web


Services
As of 2020.1, you can use the getAccountGovernanceInfo and the getIntegrationGovernanceInfo
operations in SOAP web services.

With the getAccountGovernanceInfo operation, you can get the Account Concurrency Limit and the
Unallocated Concurrency Limit.

With the getIntegrationGovernanceInfo operation, you can get the Concurrency Limit for the integration
(integrationConcurrencyLimit) and the limitType, which can be:

■ _integrationSpecific, when a limit has been allocated.


■ _internal, when it is an internal application. In this case the limit is not displayed.
■ -accountLimit, when no specific limit has been allocated to the integration.

For more information about governance, see Web Services and RESTlet Concurrency Governance.

Operations Removed in 2020.1 SOAP Web Services


Endpoint
The following operations have been removed in 2020.1 SOAP web services endpoint:

■ login
■ logout
■ ssoLogin
■ mapSso
■ searchMore
■ searchNext

You should use Token-based Authentication for logging into NetSuite instead. For more information, see
the help topic Token-based Authentication (TBA).

Note: The operations remain available for earlier endpoints. For more information on which
endpoints are supported, see the help topic Support for Existing WSDL Versions.

Governance Enabled for All Accounts


As of 2020.1, web services and RESTlet account governance has been enabled for all accounts, so the
Web Services and RESTlet Account Governance Enabled box has been removed.

Note: The Web Services and RESTlet Account Governance Enabled box was visible for
administrators in production accounts, but was editable only in Sandbox environment. 

For more information about governance, see Web Services and RESTlet Concurrency Governance.

Integration Record Enhancements Related to OAuth 2.0


A new approach to access REST Web Services and RESTlets is now available. OAuth 2.0 provides an
alternative to Token-based Authentication. OAuth 2.0 has a standard authorization code grant flow that

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteTalk Web Services Integration 108

generates a pair of tokens: an access token and a refresh token. The access token is valid for 60 minutes
and is used to access the protected resource. For detailed information about OAuth 2.0, see OAuth 2.0
Delegated Access for REST Web Services and RESTlets.

You can configure settings related to OAuth 2.0 on the integration record of your REST web services
or RESTlet integration application. For information, see Defining OAuth 2.0 on Integration Records. For
general information about working with integration records, see the help topic Creating an Integration
Record.

Field Type Change in the Project Task Record


The field type of the remainingWork and actualWork fields in the projekt task record changes in 2020.1
endpoint from double to duration type.

You must take this change of field type into consideration when upgrading to the 2020.1 endpoint to
avoid any issues with your integration.

Earlier endpoints will not be affected by this field type change.

Advance Notice: Upcoming Deprecation of SOAP Web


Services Authentication Through User Credentials
As of the 2020.2 SOAP web services endpoint, authentication through request-level credentials will not
be supported. The Passport complex type will not be supported. If you attempt to authenticate through
user credentials in SOAP web services 2020.2 and later endpoints, the web services request will not be
processed, and an error message will be returned.

This change will not affect web services integrations that use 2020.1 and earlier endpoints. You can
continue to use request-level credentials in endpoints 2020.1 and earlier. However, you are encouraged
to use TBA for all of your integrations. TBA is available in all supported endpoints. If you are using
an earlier endpoint that does not support TBA, you are advised to upgrade to one of the supported
endpoints. For information about supported endpoints, see the help topic Support for Existing WSDL
Versions.

You must ensure that SOAP web services integrations created with 2020.2 and later SOAP web services
endpoints use TBA. Authentication through user credentials will continue to be supported in integrations
that use SOAP web services 2020.1 and earlier endpoints, although it is not recommended. For more
information, see the help topic Token-based Authentication and Web Services.

SOAP Web Services Version 2020.1


SOAP web services version 2020.1 is available. When your implementation is upgraded to 2020.1, the
2020.1 WSDL becomes available in your production account.

You do not need to upgrade your WSDL when the new version is generally available. NetSuite supports
each endpoint for three years. For information about the supported generally available versions, see the
help topic Support for Existing WSDL Versions.

Araxis Merge Diff File for the 2020.1 Endpoint


The Araxis Merge Diff file highlights 2019.2 - 2020.1 schema changes.

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteTalk Web Services Integration 109

■ About the Araxis Diff File


■ Using the Araxis Diff File

About the Araxis Diff File


NetSuite publishes an Araxis Diff File for every new endpoint. Depending on the scope of the release,
changes described in the Araxis Diff File may include:

■ New record types


■ Elements (fields) that have been added, removed, or changed
■ New sublists (lists)
■ New joins
■ New search filters and search return columns
■ New platform operations

Using the Araxis Diff File

Important: The figures in this section are for illustrative purposes only. They do not reflect
changes related to any specific endpoint.

The diff file is generated using Araxis Merge. When you click the diff file link (when it is available), a page
appears that offers an overview of all schema changes.

The following screenshot shows how this summary page looks. In this example, the rows highlighted
in purple indicate that an XSD has been modified. The integers at the center indicate the number of
changed lines in the file. To see the exact differences, click the report link in the column to the right, or
click the name of the file in either column.

When you click any of these links, the diff file shows a page with two columns. The previous version of the
file is displayed on the left, and the new version on the right. Changed elements are highlighted.

For example, the following screenshot shows an excerpt from the report on platform.commonTypes.xsd.
Notice the addition of two values to the PermissionCode enumeration: _accessPaymentAuditLog and
_advancedPDFHTMLTemplates.

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteTalk Web Services Integration 110

The diff file also shows changes to data types. The following screenshot is a snapshot of
transactions.sales.xsd. Notice that the chargeType element changed from an enumeration to a
RecordRef.

2020.1 SOAP Schema Browser


The 2020.1 version of the SOAP Schema Browser is now available. You can find links to the SOAP Schema
Browser in several places, including the following:

■ The help topic titled SOAP Schema Browser.


■ The reference page for each supported record in the SOAP Web Services Records Guide. The SuiteTalk
SOAP Web Services Records Guide is available in the NetSuite Help Center and can be downloaded as
a PDF from the User Guides topic.

SuiteCloud SDK
This release note was updated May 20, 2020.
SuiteCloud Software Development Kit (SuiteCloud SDK) is a set of tools you can use to develop SDF
projects. These tools are the SuiteCloud IDE plug-ins, and SuiteCloud CLIs.
SuiteCloud SDK for 2020.1 includes the following features and updates:

■ 2020.1 SuiteCloud CLI for Java Is Now Available


■ 2020.1 SuiteCloud IDE Plug-in for WebStorm Is Now Available
■ 2020.1 SuiteCloud IDE Plug-in for Eclipse Is Now Available
■ SuiteCloud CLI for Node.js Is Now Available
■ Basic Authentication Is Deprecated in 2020.1
■ New Commands for SuiteCloud CLI for Java
■ SuiteScript Files Are Automatically Imported in SuiteCloud SDK
■ Update Custom Objects in SuiteCloud IDE Plug-in for WebStorm
■ Account-Specific Values Management in SuiteCloud IDE Plug-in for WebStorm Is Now Available
■ SDF File Removed from Project Structure for SuiteCloud IDE Plug-in for Webstorm and SuiteCloud CLI
for Java

Generally, 2020.1 plug-in behavior changes are designed to support SDF. In addition, SuiteCloud IDE
plug-ins for versions 2017.1 and later have compatibility requirements. The version of your plug-in must
match the version of your NetSuite account before you can use the plug-in to create SDF projects.

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteCloud SDK 111

For information about additional features that impact SuiteCloud IDE plug-ins and SuiteCloud CLI, see the
release note for SuiteCloud Development Framework.

2020.1 SuiteCloud CLI for Java Is Now Available


SuiteCloud CLI for Java 2020.1 is now available for download. To install it, see the help topic Installing CLI
for Java.

The CLI for Java is used with your own integrated development environment (IDE) to create SuiteCloud
projects, including SuiteApps. You can also create batch and shell scripts that use CLI commands to
automate your project validation and deployment processes. When used with your own IDE, CLI for Java
acts as an alternative to SuiteCloud IDE plug-in. For more information about CLI for Java, see the help
topic CLI for Java Guide.

CLI for Java is supported on Windows, Linux, and Mac OS X. For more information, see the help topic CLI
for Java Installation Prerequisites.

2020.1 SuiteCloud IDE Plug-in for WebStorm Is Now


Available
SuiteCloud IDE plug-in for WebStorm 2020.1 is now available for download. For more information, see the
help topic Update SuiteCloud IDE Plug-in for WebStorm.

Important: When your account is upgraded to 2020.1, your IDE plug-in for WebStorm is not
updated automatically to the 2020.1 version. After your account upgrade, you must manually
update the IDE plug-in for WebStorm.

2020.1 SuiteCloud IDE Plug-in for Eclipse Is Now Available


SuiteCloud IDE plug–in for Eclipse 2020.1 is now available for download. For more information, see the
help topic Updating Eclipse for Use with SuiteCloud IDE Plug-in.

Important: When your account is upgraded to 2020.1, your IDE plug-in for Eclipse is not
updated automatically to the 2020.1 version. After your account upgrade, you must manually
update the IDE plug-in for Eclipse.

SuiteCloud CLI for Node.js Is Now Available


View the New Feature Training for CLI for Node.js.

SuiteCloud Command Line Interface for Node.js (SuiteCloud CLI for Node.js) 2020.1 is now available for
download. To install it, see the help topic Installing CLI for Node.js.

SuiteCloud CLI for Node.js is a tool that you can use with your own integrated development environment
(IDE) to develop SDF projects. This CLI is optimized for the end-user experience. It is interactive and
guides you through all the steps of the communication between your local project and your account.

SuiteCloud CLI for Node.js is an open-source project published in GitHub. To see its code and get the
latest changes, see SuiteCloud CLI for Node.js GitHub Repository.

CLI for Node.js offers integration with unit testing through Jest. When creating a SuiteCloud project, you
can choose to include unit testing with Jest.

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteCloud SDK 112

Warning: Unit testing with Jest for CLI for Node.js is a beta feature. The contents of this feature
are preliminary and may be changed or discontinued without prior notice. Any changes may
impact the feature’s operation with the NetSuite application. NetSuite warranties and product
service levels shall not apply to the feature or the impact of the feature on other portions of the
NetSuite application. NetSuite may review and monitor the performance and use of this feature.
The documentation for this feature is also considered a beta version and its subject to revision.

The following commands are available in CLI for Node.js and CLI for Java:

■ project:adddependencies
■ project:create
■ project:deploy
■ file:import
■ object:import
■ file:list
■ object:list
■ object:update
■ project:validate

The following commands are available only in CLI for Node.js:

■ suitecommerce:localserver
■ config:proxy
■ account:setup

Before you can start working with all the available commands, you need to create a project and set up
your account. For more information, see the help topic Setting Up CLI for Node.js.

Basic Authentication Is Deprecated in 2020.1


As of 2020.1, basic authentication is deprecated in all SuiteCloud SDK tools, and will no longer be
supported after the 2020.2 release. You must use token-based authentication (TBA) to authenticate your
account in the tools.

As of 2020.1, you can use browser-based authentication to issue TBA tokens for your roles from the
following SuiteCloud SDK tools:

■ For CLI for Node.js, see the help topic account:setup.


■ For CLI for Java, see the help topic authenticate.

Authentication IDs (authIDs) are the custom names you give to a specific account-role combination. As of
2020.1, you can use authIDs to identify roles using the authid option in CLI for Java and CLI for Node.js.

Important: You should use the authid option to interact with your account. Authentication IDs
provide more security and customization for your accounts and roles.

New Commands for SuiteCloud CLI for Java


As of 2020.1, the following two new commands are available for CLI for Java:

■ authenticate— This command grants authorization for SuiteCloud SDK to access NetSuite with an
account-role combination.

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteCloud SDK 113

For more information, see the help topic authenticate.


■ manageauth — This command manages authentication IDs (authid) for all your projects.
For more information, see the help topic manageauth.

SuiteScript Files Are Automatically Imported in SuiteCloud


SDK
As of 2020.1, when you import objects from your account to an account customization project, the
referenced SuiteScript files are also imported. This feature applies to all SuiteCloud SDK tools.

For more information about each tool, see the following tool-based help topics:

■ For IDE plug-in for WebStorm, see the help topic Importing Custom NetSuite Objects into an SDF
Project with SuiteCloud IDE Plug-in for WebStorm.
■ For CLI for Node.js, see the help topic object:import.
■ For CLI for Java, see the help topic importobjects.
■ For IDE plug-in for Eclipse, see the help topic Importing Account Components into an SDF Project with
SuiteCloud IDE Plug-in for Eclipse.

Update Custom Objects in SuiteCloud IDE Plug-in for


WebStorm
As of 2020.1, you can update custom objects in your SuiteCloud projects using the object from your
account. You can update a single object or multiple objects, and you can also update the instances of
custom records.

For more information, see the help topic Overwriting Custom SuiteCloud Objects with Custom NetSuite
Objects in SuiteCloud IDE Plug-in for WebStorm.

Account-Specific Values Management in SuiteCloud IDE


Plug-in for WebStorm Is Now Available
As of 2020.1, if your account customization projects contain account-specific values, you can decide what
action to take when deploying and validating your projects.

By default, SDF stops deployment when an account customization project contains account-specific
values. However, you can choose to display a warning and continue with the process of either validating
or deploying the account customization project.

For more information on how to manage account-specific values in SuiteCloud IDE plug-in for WebStorm,
see the help topic Changing Project Settings in SuiteCloud IDE Plug-in for WebStorm.

For more information about account-specific values, see the help topic Account-Specific Values.

SDF File Removed from Project Structure for SuiteCloud


IDE Plug-in for Webstorm and SuiteCloud CLI for Java
As of 2020.1, the .sdf file that stores account credentials for your project is removed from the project
structure. For existing projects that still include the .sdf file, you need to remove and add your account

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteCloud SDK 114

again in SuiteCloud IDE Plug-in for Webstorm or run the authenticate command in SuiteCloud CLI for
Java.

SuiteCloud Development Framework


SuiteCloud Development Framework (SDF) is a development framework and deployment mechanism.
Customers and partners can use SDF to create customization projects for internal use within their
organizations or for commercial distribution. For more information about SDF, see the help topic
SuiteCloud Development Framework Overview.

For a complete list of custom records and customizations that are supported by SDF, see the help topic
Customizations Supported by SuiteCloud Development Framework.

With the release of SuiteCloud Development Framework, the SuiteCloud Terms of Service were updated
in September 2016 to specifically include SuiteCloud Development Framework as one of the listed
SuiteCloud Technologies and to make other clarifying changes. You can review the complete updated
terms at http://www.netsuite.com/termsofservice.

NetSuite 2020.1 includes the following enhancements to SDF features:

■ Localization Context Filtering Support


■ Custom Code and Action Tabs in Custom Forms Support
■ Sales and Purchase Custom Transactions Support
■ Additional Transaction Form Types Can Be Customized
■ Translatable Fields Support
■ Map/Reduce Concurrency Limit Adjusts to Target Account Limit
■ Financial Institution Connectivity Plug-in Support
■ Parser Plug-in Support
■ Minor Updates to Custom Objects

Localization Context Filtering Support


SuiteCloud Development Framework (SDF) supports localization context filtering for SuiteScript 2.0 user
event and client scripts. A record’s localization context represents the country or countries associated
with that record. Localization context filtering is set up in the Localization Context field on the Context
Filtering subtab of the script deployment record. This setting controls the records on which user event
and client scripts run, based on the localization context of the records. For example, if a script has the
localization context of France set on its deployment record, it runs only on records that have a localization
context of France. It does not run on records with other localization contexts.

Localization context can be configured in usereventscript and clientscript custom objects by specifying
locales in the localizationcontext field. For usereventscript objects, you can specify all locales using the
alllocalizationcontexts boolean field.

If a script has localization context filtering set up in custom objects in an SDF project, that filtering works
in all target accounts where the SDF project is deployed. The context filtering also works in accounts when
an SDF SuiteApp is installed from the SuiteApp Marketplace.

For more information about localization context filtering, see Introducing Localization Context – User
Event and Client Script Association.

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteCloud Development Framework 115

Custom Code and Action Tabs in Custom Forms Support


SuiteCloud Development Framework (SDF) supports the Custom Code and Action tabs in custom forms.
In NetSuite, the Custom Code tab and Actions tab are used together to define custom buttons for custom
forms. Custom buttons are a way for your users to intentionally execute client SuiteScript on custom
forms. The buttons are useful for executing a specific function when the user clicks the button on the
form, such as creating a customized invoice. You can add custom buttons to custom forms in SDF by
specifying the actionBar element to define the Action tab.

The following example defines two custom buttons. The first button has the label Invoice Client, and
that button runs the function invoiceClient. The second button has the label Generate Report, and runs
the function generateReport. To execute, both functions must be defined in the client SuiteScript file
referenced by the scriptFile field for the customCode element in the same custom form object.

<actionBar>
<customButtons>
<customButton>
<label>Invoice Client</label>
<function>invoiceClient</function>
</customButton>
<customButton>
<label>Generate Report</label>
<function>generateReport</function>
</customButton>
</customButtons>
</actionBar>

Each custom button runs SuiteScript from the Custom Code tab, which you can define in SDF by
specifying the customCode element.

Important: Only SuiteScript 2.0 scripts are supported for the scriptFile value in customCode.

The following example defines the Custom Code tab by specifying the customCode element, which
contains the scriptFile field that references the client SuiteScript file invoice.js. The invoice.js file can
contain functions used by custom buttons.

<customCode>
<scriptFile>[/SuiteScript/invoice.js]</scriptFile>
</customCode>

The following custom objects support the customCode and actionBar elements:

■ addressForm
■ entryForm
■ transactionForm

For more information about defining the customCode and actionBar elements, see the help topic Custom
Code Tab and Actions Tab in XML Definitions.

Sales and Purchase Custom Transactions Support


SuiteCloud Development Framework (SDF) supports the sales and purchase custom transaction types
when defining custom transaction objects. For information about sales and purchase custom transactions
in NetSuite, see Sales and Purchase Custom Transactions Available and Sales and Purchase Transaction
Types Overview.

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteCloud Development Framework 116

For information about defining customtransactiontype objects, see the help topic Custom Transaction
Record Types as XML Definitions.

Additional Transaction Form Types Can Be Customized


Prior to this release, SDF supported a small number of transaction form types. As of 2020.1, SDF supports
many more transaction forms.

Important: You should copy or modify a custom transaction form that you imported from your
account. SDF does not support creating custom forms. To learn about importing an object, see
the help topic Account Component Imports.

The following table shows the new types of transaction forms that SDF supports. The columns show the
script ID of the form and the record type the form is applied to.

Script ID of Transaction Form Type Record Type Associated with Transaction Form

STANDARDBLANKETPURCHASEORDER Blanket Purchase Order

STANDARDCREDITCARDCHARGE Credit Card

STANDARDCREDITMEMO Credit Memo

STANDARDCUSTOMERDEPOSIT Customer Deposit

STANDARDCUSTOMERREFUND Customer Refund

STANDARDDEPOSIT Deposit

STANDARDEXPENSEREPORT Expense Report

STANDARDFULFILLMENTREQUEST Fulfillment Request

STANDARDFULFILLMENTREQUESTPICKINGTICKET Fulfillment Request Picking Ticket

STANDARDINVENTORYADJUSTMENT Inventory Adjustment

STANDARDINVENTORYCOUNT Inventory Count

STANDARDINVENTORYTRANSFER Inventory Transfer

STANDARDINVENTORYWORKSHEET Inventory Worksheet

STANDARDITEMFULFILLMENT Item Fulfillment

STANDARDITEMRECEIPT Item Receipt

STANDARDONLINEORDERINVOICE Sales Order External

STANDARDOPPORTUNITY Opportunity

STANDARDPACKINGSLIP Packing Slip

STANDARDPICKINGTICKET Picking Ticket

STANDARDPURCHASECONTRACT Purchase Contract

STANDARDREQUISITION Requisition

STANDARDRETURNAUTHORIZATIONCASH Return Authorization

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteCloud Development Framework 117

Script ID of Transaction Form Type Record Type Associated with Transaction Form

STANDARDRETURNAUTHORIZATIONCREDIT Return Authorization

STANDARDRETURNREQUESTCASH Return Authorization (External)

STANDARDRETURNREQUESTCREDIT Return Authorization (External)

STANDARDREVENUEARRANGEMENT Revenue Arrangement

STANDARDSALESORDERPROGRESSBILLING Sales Order

STANDARDSERVICEINVOICE Invoice

STANDARDTRANSFERORDER Transfer Order

STANDARDVENDORBILL Bill

STANDARDVENDORCREDIT Bill Credit

STANDARDWORKORDER Work Order

STANDARDVENDORRETURNAUTHORIZATION Vendor Return Authorization

To define the transaction form type in your object XML, you can specify a form value listed in the table
earlier. For the complete list of supported values, see the help topic transactionform_standard. The
following code shows the reference syntax:

scriptid="objectprefix_scriptid" standard="ATRANSACTIONFORMID"

In the following example, “Ultimate Sales Form” is the name of the custom transaction form. The
customization is based on the standard sales order form in NetSuite. As specified by the recordType
element, “Ultimate Sales Form” is applied to the sales order record.

<transactionForm scriptid="custform_sales_335" standard="STANDARDSALESORDER">


<name>Ultimate Sales Form</name>
<recordType>SALESORDER</recordType>
. . .

Note: Some transaction forms have feature requirements. You can use SDF project validation
to determine if a feature is required to use a form. For information, see the help topic SDF Project
Validation.

For more information about custom transaction form objects, see the following topics:

■ Supported Custom Transaction Form Objects


■ transactionform_standard
■ Referencing a Custom Transaction in XML Definitions
■ Custom Transaction Form Example

Translatable Fields Support


SuiteCloud Development Framework (SDF) supports some translatable fields for clientscript and workflow
custom objects. When creating custom objects in SDF that have translatable fields, you can reference
translation strings from translation collections. After the custom objects and the translation collections
are deployed to an account, the NetSuite UI displays the translation for each translatable field in the

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteCloud Development Framework 118

account language. If a field has no translation in the account language, the NetSuite UI displays the
default translation.

For information about the supported translatable fields in custom objects, see the help topic Translatable
Fields on Custom Objects.

Note: The format for field label translations requires a translation collection object. For
information about using translation collections in SDF, see the help topic Translation Collections as
XML Definitions.

The following example is a workflow custom object with a label field that contains a reference to the term
approve in the translation collection custcollection_approvals:

<workflow scriptid="customworkflow1">
<name>My custom workflow</name>
<recordtypes>LEAD</recordtypes>
...
<workflowstates>
...
<workflowstate scriptid="workflowstate_approvalpending">
<name>State 2: Pending Approval</name>
...
<workflowactions triggertype="BEFORELOAD">
<addbuttonaction scriptid="workflowaction_approvebutton">
...
<label translate="T">[scriptid=custcollection_approvals.approve]</label>
...
</addbuttonaction>
</workflowactions>
</workflowstate>
...
</workflowstates>
...
</workflow>

Map/Reduce Concurrency Limit Adjusts to Target Account


Limit
Prior to this release, your SDF project validation failed with an error if your SDF project contained a map/
reduce object that set the concurrency limit to a value that was greater than the target account limit. You
also might have required multiple map/reduce script versions with different concurrency values specific to
account limits you deploy to. Now you can deploy the same map/reduce script object to accounts limited
to different concurrency values.

As of 2020.1, if your SDF project contains a map/reduce script object, SDF can adjust the concurrency
value to the target account limit. Concurrency limits are specific to an account and depend on the number
of SuiteCloud Plus licenses in the account.

When SDF adjusts the concurrency value to the target account limit, it adjusts the value only in the script
deployment record of the map/reduce script. The source concurrency value in the map/reduce object
in your SDF project is not modified. The concurrency value sourced from your SDF project is compared
to the account limit. The script deployment record in the account uses the lesser value of the two, and
SDF adjusts the concurrency value as necessary. When the concurrency value is equal to or less than the
target account limit, there is no change to concurrency value. If the account concurrency limit increases,
the concurrency value is updated when the source value is larger. Adjustment no longer occurs if the
concurrency value is changed manually in target account.

For example, if you set the concurrency value to 10 and deploy your SDF project to an account limited to a
concurrency value of 5, the script deployment record in the account is set to 5. If you then download the

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteCloud Development Framework 119

map/reduce object as XML or import it to an SDF project, the concurrency value is unchanged. It remains
set to 10.

For more information, see the following topics:

■ Setting a Concurrency Limit on your Map/Reduce Script Deployment in the SDF documentation.
■ scriptdeployment in the SDF XML reference.
■ mapreducescript in the SDF XML reference
■ Concurrency Limit in the SuiteScript documentation.

Financial Institution Connectivity Plug-in Support


SuiteCloud Development Framework (SDF) supports customizing the Financial Institution Connectivity
Plug-in. The plug-in provides a way for NetSuite to use the Financial Institution Connectivity API to directly
connect customers to a specific financial institution. For information about customizing and using the
Financial Institution Connectivity Plug-in in NetSuite, see Financial Institution Connectivity API.

You can customize the plug-in in SDF by defining ficonnectivityplugin objects. For information about the
available fields, see the help topic ficonnectivityplugin.

Each ficonnectivityplugin custom object requires a scriptfile field reference to a SuiteScript file that
implements the following interface functions:

■ getAccounts
■ getTransactionData
■ getConfigurationiFrameUrl

The following example defines an ficonnectivityplugin custom object named “Financial Connectivity Profile
1” that specifies the SuiteScript file connectionprofile.js:

<ficonnectivityplugin scriptid="customscript1">
<description></description>
<isinactive>F</isinactive>
<loglevel>DEBUG</loglevel>
<name>Financial Connectivity Profile 1</name>
<notifyadmins>F</notifyadmins>
<notifyemails></notifyemails>
<notifyowner>T</notifyowner>
<notifyuser>F</notifyuser>
<runasrole></runasrole>
<scriptfile>[/SuiteApps/com.example.yourapp/src/parser/connectionprofile.js]</scriptfile>
<status>TESTING</status>
</ficonnectivityplugin>

For more information about defining ficonnectivityplugin objects, see the help topic Financial Institution
Connectivity Plug-ins as XML Definitions.

Parser Plug-in Support


SuiteCloud Development Framework (SDF) supports customizing the Parser Plug-in to create parsers for
different bank and credit card statement formats. For information about using the Parser Plug-in, see the
help topic Bank Statement Parser Plug-in Overview.

You can customize the plug-in by defining bankstatementparserplugin objects in your SDF project. For
information about the available fields, see the help topic bankstatementparserplugin.

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteCloud Development Framework 120

Each bankstatementparserplugin custom object requires a scriptfile field reference to a SuiteScript file
that implements interface functions. For more information, see the help topic Creating a Bank Statement
Parser Plug-in Script File.

The following example defines a bankstatementparserplugin custom object with the name “Statement
Parser 1” that references the SuiteScript file statementparser1.js:

<bankstatementparserplugin scriptid="customscript2">
<description></description>
<isinactive>F</isinactive>
<loglevel>DEBUG</loglevel>
<name>Statement Parser 1</name>
<notifyadmins>F</notifyadmins>
<notifyemails></notifyemails>
<notifyowner>T</notifyowner>
<notifyuser>F</notifyuser>
<runasrole></runasrole>
<scriptfile>[/SuiteApps/com.example.yourapp/src/parser/statementparser1.js]</scriptfile>
<status>TESTING</status>
</bankstatementparserplugin>

For more information about defining bankstatementparserplugin objects, see the help topic Bank
Statement Parser Plug-ins as XML Definitions.

Minor Updates to Custom Objects


Note the following information about updates to SuiteCloud Development Framework (SDF) support for
custom objects as of 2020.1:

Object Field Type Notes

clientscript localizationcontext multi-select list You can filter your scripts to run based on the
localization context of your users. For more
information, see Localization Context Filtering
Support.

For more information about the possible values


for localizationcontext, see the help topic
scriptdeployment.

usereventscript alllocalizationcontexts boolean You can filter your scripts to run based on the
localization context of your users. For more
localizationcontext multi-select list information, see Localization Context Filtering
Support..

For information about the possible values for


alllocalizationcontexts and localizationcontext, see
the help topic scriptdeployment.

workflow clienttriggerfieldssublist single-select list You can include workflows on the Expenses sublist
for expense report records by specifying the field
sublist single-select list value EXPENSEREPORT:EXPENSE.

For more information about the Expenses sublist,


see Support for Expenses Sublists in Workflows.

SuiteApps (Bundles) Released by NetSuite


NetSuite 2020.1 includes the following enhancements to SuiteApps released by NetSuite:

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 121

■ Accounting SuiteApps
■ Administration SuiteApps
■ Banking SuiteApps
■ SuitePeople SuiteApps
■ Order Management SuiteApps
■ Inventory Management SuiteApps
■ Localization SuiteApps
■ Manufacturing SuiteApps
■ Projects SuiteApps
■ Integration SuiteApps
■ Non-Profit SuiteApps
■ Food and Beverage SuiteApps
■ Wholesale Distribution SuiteApps
■ Vendors, Purchasing, and Receiving SuiteApps
■ Taxation SuiteApps

Accounting SuiteApps
This release note was updated August 19, 2020.

Following is the 2020.1 accounting enhancement to SuiteApps:

■ Fixed Assets Management Enhancements


■ SuiteApprovals Enhancements
■ Sequential Liability Enhancements and General Availability
■ Sequential Liability (Limited Release) Now Available
■ Sales Return Accounting Now Generally Available
■ Sales Return Accounting (Beta)

Fixed Assets Management Enhancements


Fixed Assets Management version 20.1 includes the following enhancements:

■ Lease Accounting Modifications


■ FAM Diagnostics
■ Fixed Assets Reports for Japan

Lease Accounting Modifications


The Lease Modification process enables users to make changes to the original terms and conditions of
a lease. The Modify Lease Record button is available on Lease records with associated assets, so that
you can modify the Lease Term, Interest Rate, and update the Lease Payments as of the effective date
of modification. Alternatively, you can go to Fixed Assets > Leases > Lease Modification page and select
the lease record that you want to modify. After entering the necessary modifications, the Apply Lease

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 122

Modification button will be available on the lease record. Clicking this button will trigger the following
processes:

■ Create a lease modification journal entry to record the adjustments to the Lease Liability and Right-of-
Use Asset accounts.
■ Record a reversal interest journal entry to reverse the interest expense recorded to lease payments
after the effective date of modification.
■ Associate the lease modification journal entry to the newly created Lease Modification DHR. The
asset’s current cost and net book value will then be updated.

FAM Diagnostics
Starting with Fixed Assets Management version 20.1, you can add the FAM Diagnostics portlet to your
Home Dashboard to see the health of your Fixed Assets Management bundle. You can run a scan of the
following processes in FAM Diagnostics: Precompute Depreciation Values, Reset Asset Values, and Check
Missing Summary. The following information are also available in the portlet:

■ Processes that require action


■ What you can do to correct the problem
■ When a process was last corrected
■ Who corrected the process

To add the FAM Diagnostics, go to Home Dashboard, and then click Personalize > SuiteApps > FAM
Diagnostics.

Fixed Assets Reports for Japan


To comply with the depreciation requirements of the Japan National Tax Authority, the following
enhancements for Japan Corporate Tax Reports are added in FAM version 20.1:

■ Japan Schedule 16 (1) Report – This report is for assets and leased assets that use the Japan Straight
Line Depreciation Method.
■ Japan Schedule 16 (2) Report – This report is for assets and leased assets that use the Japan 200%
Declining and Japan 250% Declining Balance Depreciation methods.

By default, these reports are displayed in Japanese.

SuiteApprovals Enhancements
SuiteApprovals version 5.00.0 includes the following enhancements:

■ Extension to Requisition Records – You can now create approval rules for requisition records. You
can define any approval rule for requisitions in two ways:
□ Using the total line amount of the record as basis and then selecting an approval routing type:
employee hierarchy or custom approval matrix.
□ Specifying an approval chain (employee hierarchy or custom) regardless of the total amount on the
record.
The following standard capabilities are supported for requisitions:
□ Automatic approvals using employee and record amount limits
□ Approval delegation

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 123

□ Approve and finalize (Final Approval)


□ One-level approval based on approver’s approval limit (Skip Approval)
■ Support for Cross-Subsidiary Approvals for Users with Appropriate Subsidiary Permissions –
You can now set up subsidiary restriction values on the employee record of approvers through the
roles assigned to them. This enhancement enables you to specify or add approvers from a subsidiary
that is different from the subsidiary of an approval rule.
This change applies to all supported record types.

For more information, see the help topic SuiteApprovals Version 5.01.00.

Sequential Liability Enhancements and General Availability


Sequential Liability SuiteApp version 1.02 is now generally available. Enhancements in this version include
the Sequential Liability dashboard and the addition of Sequential Liability information on the project
record.

With Sequential Liability version 1.02, you can now do the following:

■ View Sequential Liability tiles on the dashboard for the following KPIs: payable balance, receivable
balance, total receipts to date, and total payments to date for a project or subsidiary.
■ View A/P and A/R details on the project record.

For more information on this SuiteApp, see the help topic Sequential Liability SuiteApp.

Sequential Liability (Limited Release) Now Available


Important: Sequential Liability version 1.01 is released on limited availability. For information
on this SuiteApp’s general availability, see Sequential Liability Enhancements and General
Availability.

Sequential Liability SuiteApp version 1.01 provides a unified view of accounts payable, accounts
receivable, projects, and cash balances while enabling financial controllers to pay vendors confidently.
This SuiteApp helps effectively manage cash flow for transactions where payment to vendors is linked to
receipt from customers.

Using this SuiteApp, you can have an overall view of your subsidiary’s project-related payable and
receivable transactions. You can also view more details about the payable and receivable transactions for
a specific project.

For more information on this SuiteApp, see the help topic Sequential Liability SuiteApp.

Sales Return Accounting Now Generally Available


Sales Return Accounting SuiteApp version 1.01.0 is now generally available. This SuiteApp enables you to
monitor sales returns separately in your account to meet standard retail accounting requirements.

You can install this SuiteApp for any industry vertical.

Sales Return Accounting SuiteApp enables you to:

■ Define accounting configurations using sales accounts, sales returns accounts, subsidiaries,
accounting books, and transaction types.
■ Create and edit sales returns account mapping record if you have the Custom Records Entries
permission enabled in your account.

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 124

■ Import sales and sales return transactions through CSV or Web Services.
■ Map memo fields and segments to sales return accounts for analytics.

Following are the bundle details for this SuiteApp:

■ Bundle Name: Sales Return Accounting


■ Bundle ID: 318158
■ Version number: 1.01.0

For more information, see the help topic Sales Return Accounting.

Sales Return Accounting (Beta)

Important: Sales Return Accounting SuiteApp version 1.00.0 is released as a beta feature. For
more information about this SuiteApp’s general availability, see Sales Return Accounting Now
Generally Available.

Sales Return Accounting SuiteApp enables you to:

■ Track sales returns separately in the mapped sales returns account to meet retail accounting
requirements.
■ Define accounting configurations using sales accounts, sales returns accounts, subsidiaries,
accounting books, and transaction types.
■ Map memo fields and segments to sales return accounts for analytics.
■ Import sales and sales return transactions through CSV or Web Services.

You can install this SuiteApp for any industry verticals with availability on NetSuite OneWorld accounts.
This SuiteApp is designed to eventually replace the Sales Returns SuiteSolution.

Following are the bundle details for this SuiteApp:

■ Bundle Name: Sales Return Accounting


■ Bundle ID: 318158
■ Version number: 1.00.0
■ Availability: Beta

For more information, see the help topic Sales Return Accounting.

Administration SuiteApps
Following are the 2020.1 administration enhancements to SuiteApps:

■ Operation ID Field Added on Page Time Details


■ Deprecation of Script Queue Monitor (Beta)

Operation ID Field Added on Page Time Details


In Application Performance Management (APM) SuiteApp version 1.10.3, you can filter instances
according to their operation ID on the Page Time Details tool.

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 125

Previously, you can open the Page Time Details page of an instance by going to the  Customization
> Performance > Page Time Summary, selecting the performance log instance, and clicking the
corresponding view icon.

Like other tools, Page Time Details provides a link to Profiler Details, which lets you monitor the
performance of the operation. To avoid getting an error before you click Profiler Details on the upper
right corner of the page, ensure that the Operation ID field contains a value.

To start using Page Time Details, go to Customization > Performance > Page Time Details.

For more information, read the help topic Using Page Time Details.

Banking SuiteApps
This release note was updated June 24, 2020.

Following is the 2020.1 banking enhancement to SuiteApps:

■ Automatic Import of Bank Statement Files Through Enhanced SFTP Connectivity


■ Bank Feeds SuiteApp
■ Bank Statement Parsers Enhancements

Automatic Import of Bank Statement Files Through Enhanced


SFTP Connectivity

Previously, with the Bank Connectivity SuiteApp, connecting to your financial institutions using SFTP
(Secure File Transfer Protocol) connectivity requires manual trigger and import of bank statement files
into NetSuite.

Auto Bank Statement Import (ABSI) SuiteApp introduces an automated way of importing bank statement
files into NetSuite daily.

Note: The new ABSI SuiteApp is replacing the Bank Connectivity SuiteApp, which is targeted for
deprecation in April 2021.

The ABSI SuiteApp uses the latest version of the SFTP Connectivity Plug-in to automatically retrieve and
upload bank and credit card statement files into NetSuite daily. This added feature enables finance users
to focus more on reconciling the bank and credit card transactions between NetSuite and your financial
institutions.

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 126

The ABSI SuiteApp enables you to:

■ Securely connect to your financial institutions through the enhanced SFTP connectivity configuration.
■ Eliminate manual process of triggering your SFTP connection to fetch the statement files from your
financial institutions.

For more information, see the help topic Auto Bank Statement Import SuiteApp.

Bank Feeds SuiteApp

The Bank Feeds SuiteApp automates the transfer of your bank data directly from your financial institution
accounts into NetSuite. The SuiteApp uses the latest financial institution connectivity plug-in and a third-
party data aggregation service to access online financial institution websites.

When the SuiteApp is installed, a financial institution record (Bank Feeds) and format profile record (Link
Bank Accounts) are automatically provisioned to your NetSuite account. You can access these records
from the Setup Manager (Setup > Setup Manager > Accounting > Financial Institution > List). The format
profile is populated with content that cannot be changed, including a plug-in (Bank Feeds Connectivity)
and transaction parser (Bank Feeds Parser). These SuiteApp components enable NetSuite to connect
directly to your financial institutions to retrieve bank data.

This SuiteApp enables you to:

■ Connect NetSuite directly to multiple financial institutions that operate in the U.S. and Canada

■ Receive cleared and processed bank transactions daily from your financial institution accounts

■ Automate the import of bank transactions and account balances daily from your financial institution
accounts into your NetSuite account
■ Perform manual import of real-time bank transactions and account balances into NetSuite

For more information, see the help topic Bank Feeds SuiteApp.

Bank Statement Parsers Enhancements


Bank Statement Parsers version 20.1 includes the following enhancements:

■ CAMT.053 Parser - The new version of Bank Statement Parsers SuiteApp includes a parser plug-in
for CAMT.053 in UTF-8 (Unicode) encoding. The CAMT.053 parser plug-in can parse bank statement
files that use the CAMT.053.001.02 version and can recognize transactions in standard ISO bank
transaction codes. The plug-in includes default field mappings for bank transactions imported into
NetSuite. You can also create new mappings or override the default mappings.
■ BAI2 Parser Enhancement – BAI2 files are now successfully imported even if the non-mandatory
fields in Record 03 and Record 16 are blank.
■ OFX/QFX Parser Enhancements:

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 127

□ Import credit card statements – The OFX/QFX plug–in implementation can now read and parse
OFX credit card statement files. Statement files may contain single, multiple credit card accounts, or
mixed of bank and credit card accounts.
□ Support for multiple accounts – The SuiteApp can now successfully import OFX/QFX statement
files that use the <STMTTRNRS> aggregator tag to separate multiple bank accounts in the file.
□ Parser plugin name – The OFX plug–in name has been changed from OFX Plugin Implementation
to OFX/QFX Plugin Implementation to easily recognize that this parser supports QFX version.

For more information, see the help topic Bank Statement Parsers SuiteApp.

SuitePeople SuiteApps
This release note was updated July 8, 2020.

Following are the 2020.1 SuitePeople enhancements to SuiteApps:

■ Onboarding Checklist Enhancements


■ Onboarding and Offboarding Plans Enhancements
■ Deprecation of TribeHR Payroll Integration

Onboarding Checklist Enhancements


The latest update of the Onboarding Checklist SuiteApp includes enhancements to existing features and
the renaming of the application to Onboarding/Offboarding Plans SuiteApp.

Onboarding/Offboarding Plans Version 1.01.0 (Bundle ID: 244690) helps businesses facilitate employee
transitions by using dedicated plans and templates. HR professionals can use it to create employee
plans, use premade plan templates or create their own, and receive notifications related to an employee
transition.

The following table shows the enhancements included with the update.

Enhancements Onboarding Checklist Onboarding/Offboarding Plans

Updated bundle details Onboarding Checklist Onboarding/Offboarding Plans

Bundle ID: 244690 Bundle ID: 244690

Version: 1.01.0

Added the Includes onboarding checklists Includes the following:


offboarding plan type for newly hired and transferring
(previously checklist) employees ■ Onboarding plans for newly hired and
transferring employee
■ Offboarding plans for exiting employees

Enhanced access for Chief People Officer (CPO) and CPO, HRG, and Administrator roles can view, edit,
Administrators Human Resources Generalist (HRG) and delete plans and templates.
roles can view, edit, and delete
checklists. Administrators have
limited access.

Updated navigation to For HRGs and CPOs: For HRGs and CPOs:
create plans and templates
■ To create a new checklist, go ■ To create a new plan, go to Payroll and HR >
to Payroll and HR > Lists > Lists > Onboarding/Offboarding Plan > New.
Onboarding Checklist > New.

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 128

Enhancements Onboarding Checklist Onboarding/Offboarding Plans


■ To create a new template, go ■ To create a new template, go to Setup >
to Payroll and HR > Lists > Onboarding/Offboarding > Template > New.
Onboarding Checklist Template
> New. For Administrators:

■ To create a new plan, go to Lists > Employees >


Onboarding/Offboarding Plan > New.
■ To create a new template, go to Setup >
Onboarding/Offboarding > Template > New.

Updated page names ■ Onboarding Checklist ■ Onboarding/Offboarding Plan List


■ Onboarding Checklist Template ■ Onboarding/Offboarding Template List

Updated navigation to view ■ Onboarding Checklist List ■ Onboarding/Offboarding Plan


lists
■ Onboarding Checklist Template ■ Onboarding/Offboarding Template
List

Added the premade Includes the Onboarding Checklist Includes the following templates:
offboarding templates Template
■ Onboarding Plan Template
■ Offboarding Plan Template

Updated fields used to On the Onboarding Checklist On the Onboarding/Offboarding Template page,
determine due dates in a Template page, the following the following information determine the due date
template information determine the due of a task:
date of a task:
■ Due Date Basis field on the header section
■ Calculate Due Date From ■ Days from Due Date Basis column on the Tasks
column on the Tasks subtab subtab
■ Days column on the Tasks
subtab The Due Date Basis field automatically changes
according to plan type. For onboarding plans,
On the Days column, you only need it displays Hire Date. For offboarding plans, it
to enter the number of days. displays Termination Date.

Example: Assignee must order a Enter data based on when the task must be
computer 14 days before the hire finished.
date.
■ Before the due date basis – Enter a minus
■ Checklist Type: Onboarding sign (-) and the number of days.
■ Task Name: Order a computer ■ On the same day as due date basis –  Enter
■ Calculate Due Date From: zero (0)
Employee Start Date - ■ After the due date basis – Enter the number
■ Days from Due Date Basis: 14 of days.
■ No defined due date – Leave blank.

The following lists some examples of tasks and the


appropriate entries:

■ Order a computer 14 days before the hire date


– Enter -14.
■ Introduce the new hire on their hire date –
Enter 0.
■ Complete profile five days after the hire date –
Enter 5.
■ Submit an optional document – Leave blank.

If you have created a custom saved search to generate a list of onboarding checklists, add a filter to this
saved search to exclude offboarding checklists.

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 129

For more information, read the help topic Employee Onboarding and Offboarding Plans.

Onboarding and Offboarding Plans Enhancements


Onboarding/Offboarding Plans version 1.02.0 changes the Status label in plans for clarity. The following
table shows the enhancements made in this update.

Plan Section Onboarding/Offboarding New Label for Description


Role Status Field

Header Coordinator Plan Status Shows the status of the entire onboarding or
Section offboarding plan.

Assignee Assignee Status Shows tasks assigned to the employee.

In previous versions, the Status field shows the


overall status of the plan including unassigned
tasks. With this update, this field now only reflects
the overall status of assigned tasks.

Tasks Subtab Coordinator or Employee Task Status Shows the status of the specific onboarding or
offboarding task.

For more information, see the help topic Working with Plans.

Deprecation of TribeHR Payroll Integration


As of 2020.1, the TribeHR Payroll Integration SuiteApp is deprecated. After the SuiteApp is deprecated,
you can no longer use it to synchronize time-off transactions with SuitePeople U.S. Payroll.

Order Management SuiteApps


This release note was updated October 7, 2020.

Following are the 2020.1 order management enhancements to SuiteApps:

■ Dunning Letter Notifications for Grouped Invoices


■ Electronic Bank Payments Enhancements
■ Grid Order Management Enhancements
■ Subscription Billing Bulk Operations
■ Pricing Interval UI Enhancements
■ Add Interval to Multiple Subscription Lines
■ Multi-Language Support for Return Authorization from Case
■ Enhanced Validations and Defaulting Enhancement

Dunning Letter Notifications for Grouped Invoices


Dunning SuiteApp version 1.04.9 lets you disable the individual dunning notifications for grouped invoices
that are sent by email or printed letters.

A new Dunning Notifications for Group Invoices box is added to the Dunning Letters subtab on the
Customer form. By default, this box is checked and individual dunning notifications for grouped invoices
are disabled. If you want to send individual dunning notifications for grouped invoices, clear the Dunning
Notification for Group Invoice box.

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 130

Note: The individual dunning notifications are disabled only in accounts that have the Invoice
Grouping feature and invoice level dunning enabled.

For more information on sending dunning letter notifications, see the help topic Sending and Printing
Dunning Letters.

Electronic Bank Payments Enhancements


Electronic Bank Payments version 2020.1 includes the following features.

■ Electronic Bank Payments SuiteApp Templates Ownership Transfer to Localization SuiteApps


■ Installment Payments Support for Accounts Receivables
■ Positive Pay Processing using SuiteScript 2.0

Electronic Bank Payments SuiteApp Templates Ownership Transfer to


Localization SuiteApps
In NetSuite 2020.1, Electronic Bank Payments SuiteApp templates are updated with the following
changes:

■ Ownership of 61 native templates that were previously managed by the Electronic Bank Payments
SuiteApp are transferred to country-specific localization SuiteApps.
■ The From Localization SuiteApp field in the Template File is marked during the installation of a
localization SuiteApp. The installation marker confirms that the template is localized.

For information on the list of templates that have been transferred, refer to the SuiteAnswers article
Electronic Bank Payment Templates Ownership Transfer to the Localization SuiteApp, SuiteAnswers
ID 89384.

For more information on changes to the templates, see the help topic Payment File Templates Ownership
Transfer to Localization SuiteApps.

Installment Payments Support for Accounts Receivables


Installment Payments feature is now supported for Account Receivables in Electronic Bank Payments
SuiteApp version 2020.1. You can now pay your invoices in installments using Invoice Payment
Processing.

If you enable the Installment feature in your account, the Installment Reference Number column
appears on the Invoice Payment File when the installment bills are retrieved.

For more information on Installment Payments Support, see the help topic Installment Payment Support.

Positive Pay Processing using SuiteScript 2.0


As of 2020.1, all functions for Positive Pay processing using the Electronic Bank Payments SuiteApp will
use SuiteScript 2.0. Positive Pay is now enhanced to support a maximum of 5,000 transactions.

Grid Order Management Enhancements


Grid Order Management SuiteApp version 6.01.1 includes the following enhancements:

■ Grid Purchase Order and Sales Order Transactions for Inventory Items
■ Preferred Grid Template for Inventory Matrix Items

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 131

■ Customizable Grid Print Templates

Grid Order Management SuiteApp version 6.01.4 includes the following enhancements:

■ Grid Purchase Order and Sales Order Transactions for Assembly Items
■ Preferred Grid Template for Assembly Matrix Items

Grid Order Management SuiteApp version 6.02.0 includes the following enhancements:

■ Grid Printing Layout Changes


■ Grid Order Management Script Deployment Updates

Grid Purchase Order and Sales Order Transactions for Inventory Items
When you import grid purchase order and sales order transactions for inventory items, both the Grid
Item ID and Grid Template fields are no longer required. The SuiteApp autogenerates a grid item ID
for each item in the transaction. The system also assigns the grid template based on the current grid
template assignment.

To learn more about this feature, see the help topic Importing Grid Orders.

Preferred Grid Template for Inventory Matrix Items


The Preferred Grid Template field is now available for inventory, lot numbered inventory, and serialized
inventory matrix items. You can set the preferred grid template on the item record, through CSV import,
or when you create or edit a grid matrix template.

To learn more about this feature, see the help topic Assigning a Preferred Grid Template.

Customizable Grid Print Templates


Alongside purchase order and sales order, the SuiteApp now enables you to customize grid print
templates for the following transaction records:

■ Cash sale
■ Invoice
■ Packing slip
■ Picking ticket
■ Quote

To learn more about this feature, see the help topic Customizing the Grid Print Templates.

Grid Purchase Order and Sales Order Transactions for Assembly Items
When you import grid purchase order and sales order transactions for assembly items, both the Grid
Item ID and Grid Template fields are no longer required. The SuiteApp autogenerates a grid item ID
for each item in the transaction. The system also assigns the grid template based on the current grid
template assignment.

To learn more about this feature, see the help topic Importing Grid Orders.

Preferred Grid Template for Assembly Matrix Items


The Preferred Grid Template field is now available for assembly, lot numbered assembly, and serialized
assembly matrix items. You can set the preferred grid template on the item record, through CSV import,
or when you create or edit a grid matrix template.

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 132

To learn more about this feature, see the help topic Assigning a Preferred Grid Template.

For more information on this SuiteApp, see the help topic Grid Order Management.

Grid Printing Layout Changes


Grid Order Management version 6.02.0 provides significant layout improvements in the PDF files
generated through grid printing. The new layout is now available for the following transaction records:

■ Invoices
■ Packing slips
■ Picking tickets
■ Purchase orders
■ Sales orders

This update includes the following layout changes:

■ Standard PDF layout – The updated grid print templates generate a PDF layout optimized for portrait
page orientation.
■ Headers and footers – The header and footer formats remain consistent across all supported
transactions. The header includes company and transaction details, while the footer displays the bar
code and page number.
■ Number and currency formats – The updated grid print templates follow user preferences. You can
personalize how numbers and currencies appear in the printout.
■ Grid table elements - Matrix items with grid templates appear on the grid tables. The grid table
displays elements such as item name, column and row attributes, and item quantities. Each grid
table has a maximum of six column attributes. If the column attributes in the grid template exceed
this number, the attributes overflow to the next grid table. All grid tables show the calculated total
quantity, but only single grid tables display aggregate item quantities for each column attribute.
■ Item list elements - Following the grid table, nongrid items appear on the item list. The item list
includes all items that do not belong to any grid table, including nonmatrix items, matrix items without
grid templates, and payment items. The item list displays elements, such as the item quantities,
names, and calculated total quantity.
■ Invoice, Purchase Order, and Sales Order printout fields - Invoice, purchase order, and sales order
printouts display item rates, amounts, and the calculated total amount on both the grid table and item
list. The last page of the document shows a summary of details, including the tax total and calculated
sum of discounts, markups, shipping costs, and gift certificates. The summary also displays the grand
total quantity and grand total amount.
■ Packing Slip printout fields - Packing slip printouts show ordered, backordered, and shipped
quantities. The last page of the document also contains the customer return form.

To learn more about this feature, see the help topic Grid Order Management.

Grid Order Management Script Deployment Updates


New installations of version 6.02.0 no longer include the following execution contexts in the Grid Order
Management script deployments:

■ Payment PostBack
■ Web Store
■ Web Application

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 133

This change does not affect existing SuiteApp installations. When existing customers get the latest
SuiteApp version, these execution contexts remain active. If you are an existing customer, you should
manually inactivate these three contexts in the following scripts:

■ GOM Grid Printout Transaction Form CS


■ GOM Grid Printout Transaction Form UE
■ GOM Transaction CS
■ GOM Transaction Form UE
■ WD GOM Hide Field Common Handling UE

For more information about excluding these execution contexts, Removal of Payment PostBack, Web
Store, and Web Application Execution Contexts from Grid Order Management Script Deployments,
SuiteAnswers ID 95685.

Subscription Billing Bulk Operations


SuiteBilling Enhancements version 20.1.0 includes support for bulk operations. Bulk operations enables
you to remove charge, usage, and change order records that are no longer needed in the system. You
can also update specific fields on charge and change order records.

You can perform the following bulk operations using mass update:

■ Delete Records – Delete or void erroneous, obsolete, or irrelevant charge, usage, and change order
records in the system.
■ Set Charge Stage to Non-Billable – Change the value of the Stage field on charge records to Non-
Billable.
■ Update Change Order Effective Date – Change the value of the Effective Date field on change
order records.

This feature also includes the Bulk Operations Summary page, which can help you keep track of the mass
update operations performed in the system. From this page, you can access the Bulk Operations Audit
Trail record for each bulk operation run. On the audit trail record, you can view information about each
run including job name, operation type, record type, number of records successfully processed, details of
the records that were included in the mass update, and details about when the job was created and who
performed the job.

For more information, see the help topic Performing Bulk Operations Using Mass Update.

Pricing Interval UI Enhancements


Subscription Billing Enhanced UI version 20.1.0 includes the following pricing interval UI enhancements
on subscription plan and subscription records:

■ Pricing Information On View – Pricing information and tiers are readily available on the pricing
interval. Previously, detailed pricing information and tiers are available as collapsible sections on the
pricing interval.
■ Edit, Make Copy, and Delete Actions for Pricing Interval – Click the ellipsis icon on the top right
corner of the pricing interval to show the possible actions for the pricing interval. Previously, these
actions are available as individual icons on the pricing interval.
■ Click the Pricing Interval to Edit or View – Click anywhere on the pricing interval to open it for
editing (if the subscription line is included) or viewing (if the subscription line is not included).
■ Add Pricing Interval – To add a pricing interval, click the plus (+) icon on the right side of the last
pricing interval of the subscription line.

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 134

■ Scroll Bars to Extend View – Use the vertical scroll bar on the pricing interval to see the other details
that are not available in the current viewing area. Use the horizontal scroll bar at the bottom of the
subscription line to view pricing intervals that extend to the next page of the screen.
■ Filter, Quick View, and Add Item – These buttons are available on the top left corner of the Lines
subtab. Previously, the filter and quick view icons are on the top right corner of the Lines subtab, and
the +Add-On button is at the bottom of the subscription lines.

For more information, see the help topic Subscription Billing Enhanced UI.

Add Interval to Multiple Subscription Lines


Subscription Billing Enhanced UI version 20.1.1 includes support for adding intervals to multiple
subscription lines on subscription plans and subscriptions.

On subscription plans, the Add Interval To All button is available when you open a price book in edit
mode. On subscriptions, this button is available on the Lines subtab when you open the subscription in
edit mode.

Click the Add Interval To All button to create a new interval for all recurring and usage lines. On
subscriptions, a new interval is created only for recurring and usage lines in Draft status.

The pricing information on the new interval is copied from the last interval of the subscription line, except
for discount. After the new interval is created, you can edit the pricing information as needed. If the price
book or subscription is saved without changing any information in the new pricing interval, the new
interval is combined with the adjacent interval that has the same pricing information.

For more information, see the help topic Subscription Billing Enhanced UI.

Multi-Language Support for Return Authorization from Case


Return Authorization from Case SuiteApp version 1.00.1 is now translated into the following supported
languages:

■ Chinese (Simplified)
■ Chinese (Traditional)
■ Czech
■ Danish
■ Dutch
■ English
■ Finnish
■ French
■ French (Canada)
■ German
■ Indonesian
■ Italian
■ Japanese
■ Korean
■ Norwegian
■ Portuguese (Brazil)
■ Russian

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 135

■ Spanish
■ Spanish (Latin America)
■ Swedish
■ Thai
■ Turkish
■ Vietnamese

To set the language preference, you must enable the Multi-Language feature in your account. For more
information, see the help topic Multi-Language Support.

Enhanced Validations and Defaulting Enhancement


Enhanced Validations and Defaulting SuiteApp version 1.00.8 includes a change on how inventory is
validated when the Prevent Negative Inventory preference is enabled.

When editing the item quantity in an existing transaction, the system does not count the previously
granted items when validating the new value entered. For example, the quantity of an item in a
transaction is 4. When you edit the quantity to 5, only the difference of 1 is counted as the requested
quantity and is checked in the inventory.

In previous versions, the system recognizes the new item quantity as the requested quantity and validates
this value, including previously granted items, in the inventory.

For more information about this SuiteApp, see the help topic Enhanced Validations and Defaulting.

Inventory Management SuiteApps


This release note was updated August 5, 2020.

Following are the 2020.1 inventory management enhancements to SuiteApps:

■ Quality Management – High Volume Sampling


■ Shelf-to-Sheet Inventory Count
■ Warranty and Repairs Management Enhancements
■ Warehouse Management System Enhancements
■ Support for Printing Shelf-to-Sheet Count Records
■ Auto Assign UPC SuiteApp General Availability and Enhancements
■ Auto Assign UPC (Beta)
■ Actual vs. Theoretical Variance Reports

Quality Management – High Volume Sampling


NetSuite 2020.1 Quality Management SuiteApp enables you to work with larger volumes of raw data sets.
As an administrator you are able to distinguish sample data from summary or aggregate data and control
whether sample data should be recorded in NetSuite or stored externally.

Note: Quality Management – High Volume Sampling is targeted to be available in April 2020.

The Quality Inspection tablet interface update accommodates reasonably sized raw data sets with
improved usability.

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 136

Administration and Setup


NetSuite High Volume Sampling is automatically available when you upgrade to Quality Management
2020.1. NetSuite automatically migrates all existing inspections and related data to 2020.1.

Inspection records are now maintained through standard record forms. Record customizations are
available during setup or inspection maintenance.

Inspection Record Changes


The latest version of the Quality Management SuiteApp includes the following changes to the Inspection
record.

Inspection Sampling

The following fields are available under Inspection Sampling:

■ Sampling Requirement – Select either No Sampling Required or Simple Sampling.


□ Simple Sampling – Select this option to display the Sampling Rate and Allowable Failures fields
where you can define the inspection parameters.
□ No Sampling Required – Select this option to disable the inspection sampling fields.
■ Create Samples – Check this box to prompt the system to prepare all data records to collect sample
data using the table. Clear this box if you want to use only summary data.

Data Fields

On the Data Fields subtab of the inspection record, you can select the type of view in the View field:

■ Sample Summary – Select this option to review or add to the list of summary data fields that
provide a high-level or aggregated evaluation for the inspection. For example, the number of units of
inspected and the number defects or failures. The Summary Field column identifies summary field.

■ Inspection Data Fields – Select this option to display detailed inspection data that can be captured
for each sample. This data can be stored and aggregated to determine sample summary data but is
not used in pass/fail inspection evaluations.

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 137

NetSuite 2020.1 restricts this data to display numbers, text, and check boxes.

Inspection Data Fields

The Inspection Data Field form displays a new Is Sample Summary Field box.

Tablet Changes
The NetSuite 2020.1 Quality Management inspection tablet interface displays a new summary data
presentation section.

Summary data is displayed as data fields for non-sampling inspections. The layout is defined during
inspection setup. This new feature enables you to enter data into fields to drive inspection pass/fail
behavior. Sample data is only supporting data.

The Sample Data grid icon appears when sample data collection is enabled. Click the Sample Data icon to
display the sample data grid.

The Sample Data Grid displays the following:

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 138

■ The column layout follows the customer-defined sequence assigned to data fields.
■ Field focus auto advances after each entry, from left to right, top to bottom.
■ Pre-defined row count matches the number of samples required. The maximum number of rows is 50.
■ When scrolling through data, the headers remain visible.
■ The system applies validation rules as data is entered into the system. Fields are then highlighted by
customer defined pass or fail colors. For example, green for pass, red for fail.
■ The grid support numbers, text, and Boolean data types.

Sample Data Recording


With the release of NetSuite 2020.1, all sample data is now stored in the new Quality Data Samples
record. Quality Data Detail and Quality Data Sample records are now separate records. This enhancement
helps you generate more focused summary or details reports.

Migration
Quality Management inspection data will be migrated to 2020.1 in three stages.

■ Inspection definitions will be moved to new definitions:


□ For inspections requiring sampling, the Create Sample box is checked by default.
□ Current fields will be treated as inspection data fields.
□ Default summary fields will be created for inspected samples and defect counts.
■ All active inspections will be migrated.
■ Historical inspections will be migrated. Sample data will be moved to new records.

Shelf-to-Sheet Inventory Count


The new Shelf-to-Sheet Count SuiteApp implements the shelf-to-sheet inventory count, which is a manner
of recording the quantity of kit items, assembly items, or inventory items according to how they are stored
or organized in locations, storage areas, and shelves.

The Shelf-to-Sheet Count SuiteApp includes the following components and features:

■ Shelf-to-Sheet Template - Using this custom record that comes with the SuiteApp, you can create
and organize virtual representations of storage areas, shelves, and items at a specific store or branch
location. You can group items to be stored in shelves, and then group shelves in storage areas, as
they are organized in the real-world scenario. Only one template can be set up for a combination of
subsidiary and location.
■ Shelf-to-Sheet Count record - Using this custom transaction also included in the SuiteApp, you can
start the count of the items specified in the Shelf-to-Sheet Template by entering their quantity on the
record. You can then complete the count and the record goes through an approval stage. For every
Shelf-to-Sheet Count record, the SuiteApp automatically creates a corresponding Inventory Count
record where, after completing a count, the items and their quantity are also recorded.

The SuiteApp requires the following Add-On Modules that you can request your NetSuite Account
Manager to enable:

■ Advanced Financials
■ Advanced Inventory

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 139

Note: The Shelf-to-Sheet Count SuiteApp works best with the SuiteSuccess Restaurants and
Hospitality (R & H) edition of NetSuite. If you are interested in SuiteSuccess R & H edition, contact
your NetSuite Account Manager to request for the edition to be provisioned to your account.

For more information, see the help topic Shelf-to-Sheet Count in the Help Center.

Warranty and Repairs Management Enhancements


Warranty and Repairs Management version 3.00.0 includes the following enhancements:

■ Support for Warranty Registration Through SuiteScript and Web Service – You can now create
warranty registration for invoice records processed through SuiteScript and web service. The same
conditions apply for warranty to be registered for each item on the invoice:
□ Warranty tracking is enabled on the item record.
□ The item belongs to any of the supported types and there is available quantity on hand.
■ Support for Warranty Registration on Invoices Created or and Saved Through Bulk Process and
Billing Schedules – You can now create warranty registration through bulk processing of invoices
using the Invoice Sales Order page, and through Billing Schedule processing. Warranty registration
through these processes require enabling of the Automatically Register Warranty on Invoice
preference.
■ Support for Customizing the Display of the Warranty Registration Subtab on the Invoice Record
– When creating an invoice, you can choose to show or hide the Warranty Registration subtab using
the Register Warranty setting of line items.
■ Multi-Language Support – The SuiteApp now supports the Multi-Language feature. You can set your
preferred language on the General subtab of the Set Preferences page (Home > Set Preferences).

For more information, see the help topic Warranty and Repairs Management.

Support for Printing Shelf-to-Sheet Count Records


Shelf-to-Sheet SuiteApp version 1.01.0 includes support for printing the Shelf-to-Sheet Count record. After
completing an item count on the Shelf-to-Sheet Count record, you can print it by clicking the Print Shelf-
to-Sheet Count button. A pre-formatted Inventory Count Sheet printout is displayed in a new browser
window. For more information, see the help topic Starting and Completing Item Count.

Auto Assign UPC SuiteApp General Availability and


Enhancements
Auto Assign UPC version 1.01.0 is now generally available. This version includes the following
enhancements:

■ You can now set the following custom preferences:


□ Deactivate Items Without UPC Code
□ Automatically Assign UPC to New Item
These preferences will determine the status of newly created items and the Universal Product Code
(UPC) assignment option for those items.
■ You can exclude items from automatic UPC code assignment using mass update.
■ You can use the All Assigned UPC Codes with Item saved search to display UPC codes that are in use
and the items associated with them.

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 140

■ You can select a new option, Do not Assign New UPC Code, in the UPC Code Assignment field on an
item record.

For more information, see the help topic Auto Assign UPC.

Auto Assign UPC (Beta)

Important: Auto Assign UPC SuiteApp version 1.00.0 is released as a beta feature. For
information about this SuiteApp’s general availability, see Auto Assign UPC SuiteApp General
Availability and Enhancements.

The Auto Assign UPC SuiteApp enables you to automatically assign predetermined Universal Product
Codes (UPC) to specific items. This SuiteApp records the assigned UPC and keeps track of their date of
assignment and retirement. The UPC Assignment record is also linked to the item record for convenience.

The Auto Assign UPC SuiteApp is designed to eventually replace the Automatically Assign UPCs
SuiteSolution.

Following are the SuiteApp details:

■ Bundle Name: Auto Assign UPC


■ Bundle ID: 316640
■ Version number: 1.00.0
■ Availability: Beta

For more information, see the help topic Auto Assign UPC.

Actual vs. Theoretical Variance Reports


Shelf-to-Sheet Count SuiteApp version 1.02.0 includes Actual vs. Theoretical Variance Reports. The reports
are based on two consecutive Shelf-to-Sheet Count records, which are required for generating the
reports. The Dollar Variance Report calculates the variance between actual and theoretical costs or usage
of food ingredients in monetary value ($). The Unit Variance Report calculates the variance between actual
and theoretical costs or usage of food ingredients in terms of quantity. A significant or large variance
value implies some losses or wastage of food ingredients in storage or preparation, errors in inventory,
improper portioning, or theft.

For more information, see the help topic Actual vs. Theoretical Variance Reports in the Help Center.

Localization SuiteApps
This release note was updated October 7, 2020.

The following are 2020.1 localization enhancements to SuiteApps:

■ ANZ Localization
■ Belgium Localization
■ China Localization Enhancements to Compliance and Reporting Requirements
■ Contra Account Sheets Now Generally Available
■ Country-Specific Reports (Beta)
■ EMEA Localization

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 141

■ EMEA Localization Enhancements


■ France Localization
■ Germany Central Bank Reports (Beta)
■ Germany Localization (Beta)
■ Germany Localization (Beta) Enhancements
■ GL Matching
■ India Localization Enhancements
■ India Localization SuiteTax Engine SuiteApp Enhancements
■ Ireland Localization
■ Japan Localization Enhancements
■ Japan Localization Enhancements 2020.2
■ Japanese Balance Sheet Enhancement
■ Netherlands Localization
■ New Japan Trial Balance and Enhancements to Financial Statements
■ New Simplified India GST Tax Return Reports
■ Norway Tax Reports
■ Philippine Invoicing
■ Sweden Tax Reports
■ United Kingdom Localization
■ United Kingdom Localization Enhancements

ANZ Localization
The ANZ Localization SuiteApp provides localization features such as customized transaction fields,
records, and report templates specific to Australia and New Zealand.

The SuiteApp provides the following features and capabilities:

■ A tax report template for generating the Taxable Payments Annual Report
■ Additional setup and rules for records and transactions specific to Australia and New Zealand
customers and users
■ Automatic updates of new localization features and enhancements for Australia and New Zealand
accounts

The ANZ Localization SuiteApp requires the Tax Reporting Framework SuiteApp to generate tax reports
and is currently only supported in the Legacy environment.

To learn more about the SuiteApp, see the help topic ANZ Localization.

Belgium Localization
The Belgium Localization SuiteApp provides the following features:

■ Provision of SuiteTax report templates – This SuiteApp works with the Tax Reporting Framework
SuiteApp by providing the following Belgium SuiteTax report templates in English, French, and Dutch:
□ Annual Client Listing Form 725

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 142

□ EC Sales List
□ Intrastat
□ Belgium VAT Report: Return Form 625
■ Provision of electronic bank payment templates – This SuiteApp works with the Electronic Bank
Payments SuiteApp by providing bank payment templates in the following formats:
□ CIRI-FBF specifications
□ SEPA Credit Transfer specifications of HSBC, ABN AMRO, and Febelfin

Installing the Belgium Localization SuiteApp requires the EMEA Localization.

For more information, see the help topic Belgium Localization.

China Localization Enhancements to Compliance and


Reporting Requirements
China Localization SuiteApp version 1.00.15 includes enhancements to improve report printing
performance and adds new capabilities that support compliance to China CAS regulations.

The China Localization SuiteApp provides important financial reports that are needed to operate in China.
These reports are updated with the following enhancements: 

Report Name Enhancements

China Subledger Report ■ Memo field input character limit is extended to 300. Display is truncated for printing
on fixed-line forms such as the 5-line, 8-line, and 2-per-page voucher layouts. 
China Cash & Bank
Journal Ledger ■ The Creator, Approver, and Poster fields now show the middle name of each
person. 
China Voucher List ■ Standard ISO currency codes are used for label of foreign currency fields. 
■ Thegenrally accepted term “FX” is now used for the foreign currency column English
translation. 
■ Support for Accounting Context to enable printing of vouchers using China GAAP
accounts or other selected contexts is added.

China Voucher List ■ The China Voucher List page now shows the Creator, Approver, and Poster fields for
each voucher. 
■ You can now change the sorting order of the vouchers before printing them. You can
sort by voucher number, date, document type, or document number. 
■ You now have the option to select a voucher and print immediately from the Voucher
List search page.
■ Issues on formatting, page splitting, and content printing have been resolved.

China Voucher Printing ■ Support for Accounting Context to enable printing using China GAAP accounts is
Report added.
■ Issues on formatting, page splitting, and content printing have been resolved.

For more information, see the following help topics:

■ Generating China Voucher Printing Report


■ Generating the China Voucher List
■ China Subledger Report
■ China Cash & Bank Journal Ledger Report

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 143

■ China Account Balance Report 

Contra Account Sheets Now Generally Available


The Contra Account Sheets SuiteApp is now generally available. This SuiteApp enables you to generate
transaction records with contra account information. These records can be used by accountants to view
the account balance or transactions. Records can be also filtered, for example, by customer, vendor, or
employee. You can generate reports for various time periods and export them to PDF format.

For more information, see the help topic Contra Account Sheets.

Country-Specific Reports (Beta)

Important: The Country-Specific Reports SuiteApp is currently only available in beta version.
Its content is preliminary and may be significantly changed in the future. It is therefore strongly
recommended to install this SuiteApp in a sandbox account. You should only install this SuiteApp
in a production account after you are familiar with its individual features and overall performance.
To get access to the Country-Specific Reports (Beta) SuiteApp, contact your professional services
provider or your account administrator.

The Country-Specific Reports SuiteApp enables administrators or NetSuite Professional Services teams to
build customized financial, account balance based reports that meet country-specific requirements. You
can then use this SuiteApp to view, filter out, and export these reports.

To build a new financial report, you must first create an initial HTML/XML report template (formatted table
containing cells) and upload it to NetSuite. After uploading the template, use the Country-Specific Reports
SuiteApp to set variables assigned to individual cells (as well as filters enabling you to arrange displayed
data in different ways).

You can use your variables as text only, inserting them into your report as labels or captions. However,
your variables can also be much more advanced, such as formulas. Values from various general ledger
accounts are added or subtracted and the final count of each formula is displayed in the specified cell of
the report.

You do not necessarily have to design new reports. Some reports are created by NetSuite developers and
delivered through specific localization SuiteApps, such as Germany Localization. Localization SuiteApps
developed by NetSuite work with the Country-Specific Reports SuiteApp by importing your data and
delivering reports designed for the specific country. The predefined reports are not editable. However,
you can use the Country-Specific Reports SuiteApp to create copies of the report and adjust them as
needed.

EMEA Localization
The EMEA Localization SuiteApp provides custom lists and fields on transaction forms and item records
to collect information. This information is used to generate EC Sales List, Intrastat, and VAT Reports for
Germany and the United Kingdom. The SuiteTax Reports SuiteApp is required to use the tax-related
features of EMEA Localization.

Note: EMEA Localization is a prerequisite for the Germany Localization (Beta) and United
Kingdom Localization SuiteApps. The collected information is used to deliver the country-specific
tax reports.

For more information, see the help topic EMEA Localization.

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 144

EMEA Localization Enhancements


EMEA Localization SuiteApp now delivers the following payment templates provided by the Electronic
Bank Payment SuiteApp:

■ BACS – Bank of Ireland


■ SEPA Credit Transfer (HSBC)
■ SEPA Credit Transfer (Austria)
■ SEPA Credit Transfer (ABN AMRO)
■ SEPA Direct Debit (ABN AMRO)

For more information, see the help topic EMEA Localization.

France Localization
The France Localization SuiteApp provides features that address or comply with accounting and financial
reporting requirements or standards specific to France.

The following features are available:

■ French Chart of Accounts or Plan Comptable – A template that includes numerous common
accounts is provided, giving companies in France the option to add subaccounts to the chart of
accounts or to set up only the accounts they will use.
■ Customized Financial Reports – The following standard NetSuite financial reports have been
customized to comply with accounting laws in France:
□ France General Ledger
□ France Customer General Ledger
□ France Vendor General Ledger
□ France GL Transactions List
□ France Income Statement
□ France Comparative Income Statement
□ France Trial Balance
The France Localization SuiteApp provides two versions of these reports: validated and non-
validated. Validated reports display only transactions with a GL# assigned (which means that they are
validated and aligned with the FEC).
■ Account number format validation – For every account number, the validation is being performed
to make sure that its format is compliant.
■ Memo field validation – The Memo field is mandatory for every France subsidiary. If you try to save
any transaction with this field left blank, an error is shown and you will not be allowed to proceed.
■ Open accounting periods check – To comply with the accounting practice in France, you are not
allowed to create a transaction and add it to a new accounting period (or year) if 24 accounting
periods and 2 accounting years are already open. Also, to be fully compliant with French laws, French
users are not allowed to have more than 23 accounting periods (months) within one accounting year.
■ Provision of French SuiteTax Reports – For NetSuite accounts with enabled SuiteTax features, this
SuiteApp works with SuiteTax Reports and EMEA Localization by providing the following French tax
report templates:
□ Periodic VAT Return - CA3
□ Declaration of Exchange of Goods (DEB) - Arrivals

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 145

□ DEB - Dispatches
□ European Services Declaration (DES)

For more information, see the help topic France Localization.

Germany Central Bank Reports (Beta)

Important: The Germany Central Bank Reports SuiteApp is currently only available in beta
version. Its content is preliminary and may be significantly changed in the future. It is therefore
strongly recommended to install this SuiteApp in a sandbox account. You should only install this
SuiteApp to a production account after you are familiar with its individual features and overall
performance. To get access to the Germany Central Bank Reports (Beta) SuiteApp, contact your
professional services provider or your account administrator.

The Germany Central Bank Reports SuiteApp enables companies in Germany to track and report
incoming and outgoing payments to fulfill the requirements of the Germany Central Bank.

Each month, German companies are required to report international payments for services of more than
12.500 EUR. For incoming payments, sums received from non-residents or from residents for the account
of non-residents are reported. For outgoing payments, sums sent to non-residents or to residents for the
account of non-residents are reported. The reporting documentation must be kept for at least three years
to allow verification of compliance with the requirements.

The Germany Central Bank Reports SuiteApp enables you to generate these reports and to export them
in different file formats. This SuiteApp also lets you specify an email address to which these reports are
automatically sent for archiving purposes. Finally, it notifies users whenever any report is overdue.

Germany Localization (Beta)

Important: The Germany Localization SuiteApp is currently only available in beta version. Its
content is preliminary and may be significantly changed in the future. It is therefore strongly
recommended to install this SuiteApp in a sandbox account. You should only install this SuiteApp
to a production account after you are familiar with its individual features and overall performance.
To get access to the Germany Localization (Beta) SuiteApp, contact your professional services
provider or your account administrator.

The Germany Localization SuiteApp provides features that comply with accounting and financial reporting
requirements or standards specific to Germany. Two of the most important standards, the German SKR
03 and SKR 04 Chart of Accounts templates, are fully supported by the Germany Localization SuiteApp.

The templates provided include numerous common accounts, giving German companies the option to
add subaccounts to existing charts of accounts or to set up only the accounts they will use.

The Germany Localization SuiteApp also supports several German financial statements. These statements
are designed and created using the Country-Specific Reports SuiteApp. The Country-Specific Reports
SuiteApp is developed by NetSuite and is a prerequisite for the Germany Localization SuiteApp.

Available statements are as follows:

■ Balance Sheet mapped to SKR 03 Chart of Accounts


■ Income Statement in total costs format mapped to SKR 03 Chart of Accounts
■ Income Statement in the cost of sales format mapped to SKR 03 Chart of Accounts

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 146

■ Balance Sheet mapped to SKR 04 Chart of Accounts


■ Income Statement in total costs format mapped to SKR 04 Chart of Accounts
■ Income Statement the cost of sales format mapped to SKR 04 Chart of Accounts
■ SuSa Report (trial balance report for Germany)

These financial statements show aggregated data drawn from relevant accounts defined in the chart of
accounts. To display them, go to Reports > Financial > Country-Specific Reports, select a report from the
dropdown list, and click the Show Report button. You can also use the same button to recalculate the
balances in the financial statements to include the latest updates within a defined accounting period.

Germany Localization (Beta) Enhancements


The Germany Localization SuiteApp now supports new VAT reports, which reflect the temporary VAT
rate deductions adopted due to COVID-19.

GL Matching
The GL Matching SuiteApp provides transaction matching capability to accommodate the accounting
practice known as “Lettrage” in France or “account reconciliation” in other countries, especially in Europe.

GL Matching splits transactions from one account into smaller groups of transaction lines. These groups
are then evaluated to ensure the sum of the credit entries is equal to the sum of the debit entries (so
the total balance is zero). Every evaluated group is assigned a unique matching code and matching
status, which are required in France. GL Matching supports the Multiple Currencies and Full Multi-Book
Accounting features for NetSuite OneWorld accounts.

The SuiteApp delivers a GL Matching Dashboard where transaction lines can be searched and matched.
Installing the GL Matching SuiteApp also adds a new GL Matching subtab to every supported non-custom
transaction record. It contains GL Matching-related information about the selected transaction. 

The following features are included in the GL Matching SuiteApp:

■ Large-group matching capability – You can match a large group of more than 50 transaction lines
through a backend asynchronous operation.
■ Matching In Progress and History subtabs – In the dashboard, you can check the status of the
SuiteApp process and review the last 100 actions done.
■ Access to summary of results – You can get and create a summary of the GL Matching results using
a saved search.
■ Inconsistency checker – It is a fail-safe system to check and notify you if a group of transaction lines
is found to be associated with multiple accounts, subsidiaries, or both.

For more information, see the help topic GL Matching.

India Localization Enhancements


India Localization SuiteTax Engine SuiteApp version 3.00.0 includes the following new features and
enhancements:

■ Electronic Invoicing Features for India - To comply with the electronic invoicing requirements for
India, the SuiteApp now enables you to do the following:
□ Generate e-invoices that comply with the GSTIN standards for cash sale, credit memo, invoice, and
vendor credit transactions.

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 147

□ Register e-invoices with the Invoice Registration Portal (IRP).


□ Send the certified e-invoices to customers or vendors.
□ View trail of activities in detail in the E-Document Audit Trail subtab.
□ Generate and send e-invoices for certification in bulk.
□ Generate E-Way Bill along with e-invoice, if you provide E-Way Bill details in the transaction.
□ Add and display the Electronic Documents portlet on the dashboard.
The SuiteApp also includes templates and certification sending methods that let you integrate with the
GST Suvidha Providers (GSPs). ClearTax is configured in the SuiteApp as the GSP.
To use the electronic invoicing features, you must install the latest version of the Electronic Invoicing
SuiteApp. To know more about getting access, contact your NetSuite account manager or NetSuite
customer support.
■ Changes to the Port Code Field Type - The Port Code field type is changing from free text to
dropdown type for cash sale, credit memo, cash refund, invoice, and vendor bill transactions. The field
is populated with a list of port codes as per the ICEGATE portal to select from.
■ Changes to E-Way Bill Date Field Name and Type - In the E-Way Bill Details section, the E-Way Bill
Date field name is changing to E-Way Bill Valid From. Also, you can now view both date and time
in the field. Consequently, all existing transactions will display a default time of 00:00. The impacted
transaction records include bill credit, cash sale, cash refund, credit memo, and invoice transactions.

For more information, see the help topics Electronic Invoicing for India and India Goods and Services Tax
(GST).

India Localization SuiteTax Engine SuiteApp Enhancements


India Localization SuiteTax Engine SuiteApp version 2.00.0 includes the following new features and
enhancements:

■ Support for Goods and Services (GST) Compensation Cess calculation for all GST supported
transaction types and the export of calculated cess amount in an E-Way Bill.
■ Automatic selection of the default India HSN or SAC codes on transactions line items when entering
assembly items in a transaction record.
■ Addition of a new Create from Bill ID field that displays the bill ID for which the system created the
TIjournal record.
■ Addition of a new India Vendor Wise Transaction saved search that lists vendor wise transaction
details.
■ Support for Union Territory of Ladakh businesses to enable calculation of taxes on transactions and
generation of reports using the SuiteApp.

For more information, see the help topics India Goods and Services Tax (GST), Applying Tax Deduction at
Source on Vendor Bills, and Tax Deduction at Source Tax Details.

Ireland Localization
The Ireland Localization SuiteApp works with the Tax Reporting Framework SuiteApp by providing the
Irish SuiteTax-based report templates. You can select them from the list of country-specific templates on
the Country Tax Reports page. The following report templates are available:

■ Ireland VAT Report: Return of Trading Details

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 148

■ Ireland VAT Reports: Return Form VAT3


■ Intrastat
■ EC Sales List

Ireland Localization SuiteApp also delivers the following payment templates provided by the Electronic
Bank Payment SuiteApp:

■ SEPA Credit Transfer specifications of the Bank of Ireland


■ SEPA Credit Transfer specifications of HSBC
■ BACS scheme of electronic bank payment by the Bank of Ireland

Installing the Ireland Localization SuiteApp requires EMEA Localization SuiteApp.

For more information, see the help topic Ireland Localization.

Japan Localization Enhancements


Japan Localization SuiteApp version 2020.1 includes the following enhancements:

■ Japan Consumption Tax Form Print Option


■ Inclusion of Customer Payments, Tegatas and Journals in the Invoice Summary
■ New Payment Details Section on the Invoice Summary
■ Statement Template Field
■ Transfer of Zengin Electronic Payment Template to Japan Localization SuiteApp
■ Subsidiary Restriction in Using the Japan Consumption Tax Form
■ Deprecation of the Deductible Tax & Sales Ratio Calculation Form

Japan Consumption Tax Form Print Option


A new Consumption Tax Form Print Option field provides options to print only new tax rates or print
the entire form. The field is available on Japan subsidiary records for OneWorld accounts, or from Setup >
Company > Company Information for accounts without OneWorld. Selecting Print All includes in printing
the entire Japan Consumption Tax Form, with new and old tax rates. Selecting Print New Tax Rates
includes in printing only new tax rates, excluding old tax rates in deductible tax tables 1-2 and 2-2. If you
do not specify a print option, the default is to print all of the form.

Inclusion of Customer Payments, Tegatas and Journals in the Invoice


Summary
If you check the Use Invoice Summary box on a customer record, the payments or deposits and tegatas
of that customer will be included in the invoice summary.

To include journals, the following are required:

■ Status must be approved


■ Include in Invoice Summary box is checked
■ Customer is specified
■ Account type is accounts receivable

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 149

Note: Fully paid invoices resulting from applied customer deposits or payments will not be
included in the Transaction Details section of the invoice summary. This means that the amount in
Net Invoice this Period, in the Invoice Details section, may not be accurate.

New Payment Details Section on the Invoice Summary


The invoice summary will have a new Payment Details section, with the following fields:

■ Date
■ Transaction No.
■ Transaction Details (sourced from the new custom field Payment Details)
■ Amount

Also, a new custom field, Payment Details, is available on customer payments, customer deposits,
tegatas, and journals. This section is included in the templates that come with the updated bundle -
default_template_xml and defafult_multi_currency_template_xml. You can customize or remove the
Payment Details section from those templates.

Statement Template Field


A Statement Template field is available on the Generate Invoice Summary page of a subsidiary. Go
to Transactions > Customers > Generate Invoice Summary. On the Generate Invoice Summary page,
select a subsidiary and click Search. In the Statement Template field, you can select an invoice summary
template to be used for the subsidiary. If there is a default value in the field, this is the invoice summary
template specified on the Subsidiary record or Company Setup page.

Transfer of Zengin Electronic Payment Template to Japan Localization


SuiteApp
Zengin TXT electronic payment template will be transferred from the Electronic Bank Payments SuiteApp
to the Japan Localization SuiteApp. You can install or reinstall the Zengin TXT electronic payment template
from Setup > Customization > Japan Localization.

Subsidiary Restriction in Using the Japan Consumption Tax Form


Subsidiary restriction is implemented for the Japan Consumption Tax Form. You can work only on the
Consumption Tax Form of the subsidiaries that you have access to.

Deprecation of the Deductible Tax & Sales Ratio Calculation Form


The Deductible Tax & Sales Ratio Calculation Form has been deprecated. Instead of this form, you must
use the Japan Consumption Tax Form, from Reports > Financial > Japan Consumption Tax Form.

Japan Localization Enhancements 2020.2


Note: New features and enhancements discussed here are available in NetSuite 2020.2. Japan
Localization SuiteApp version 2020.2 can be tested in Release Preview. If your NetSuite account is
scheduled for upgrade on October 16, 2020, the new features can be tested in Release Preview
from September 18 to October 16, 2020.

Japan Localization SuiteApp version 2020.2 includes the following enhancements:

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 150

■ Japan Localization Setup Subtab


■ Support for Japan Subcontract Act and Purchase Order Numbering
■ Invoice Summary Generation Status Page
■ Inclusion of Custom Payment Adjustment Records in the Invoice Summary

Japan Localization Setup Subtab


The new Japan Localization Setup subtab is now available on a Japan subsidiary record for OneWorld
accounts or on the Company Information page for accounts without OneWorld.

On the Japan Localization Setup subtab, you can configure the following settings:

■ Use Holiday Checking


■ Consumption Tax Form Print Option
■ Statement Search
■ Invoice Summary Template
■ Save Invoice Summary In
■ Save Printed PO In

Support for Japan Subcontract Act and Purchase Order Numbering


An Apply Subcontract Act box is available on vendor records with a Japan subsidiary. Check this box
for vendors with transactions that are subject to the Subcontract Act. If the box is checked for a vendor,
approved purchase orders created for that vendor will display a custom Print button and a Print History
subtab.

When you click the Print button on a purchase order, the system automatically logs the number of times
the purchase order was printed. You can find this information in the Number of Times Printed field on
the Print History subtab of the purchase order.

You can also specify where printed purchase orders will be saved. On the Japan Localization Setup subtab,
you can specify a folder in the Save Printed PO In field.

Invoice Summary Generation Status Page


The status of invoice summary generation jobs can be viewed on the Invoice Summary Generation
Status page, from Transactions > Customers > Generate Invoice Summary. Click View Invoice Summary
Generation Status, then click Refresh to update the statuses. The Invoice Summary Batch Records table
has a Status column that displays any of the following statuses of invoice summary generation jobs:

■ Queued
■ Invalid
■ Hanging
■ Error

For generation jobs with Hanging status, the administrator can resubmit them by clicking Resolve
Hanging Generation.

Inclusion of Custom Payment Adjustment Records in the Invoice


Summary
Payment adjustments or accounts receivables (AR) can be included in the invoice summary using the
following custom transactions that come with the Japan Localization SuiteApp:

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 151

■ AR Adj Debit Invoice Summary – This record is used to subtract accounts receivables from the total
net payments.
■ AR Adj Credit Invoice Summary – This record is used to add accounts receivables to the total net
payments.

The custom transactions are available from Customization > Lists, Records, & Fields > Transaction Types >
AR Adj Debit Invoice Summary or AR Adj Credit Invoice Summary > New Transaction.

If included in the invoice summary, the amounts in these custom transactions are applied or reflected in
the Payments Received this Period of the invoice summary, with AR credits added to this amount and AR
debits deducted from it.

Japanese Balance Sheet Enhancement


Japan Financial Statements SuiteApp version 3.00 includes a new feature that enables you to set up
collapsible rows of accounts on a Japanese Balance Sheet. By editing an existing Japanese Balance Sheet,
you can select in the Collapsible Rows field, the accounts whose rows you want to be collapsible. The
next time you refresh the balance sheet, it will be displayed with collapsible rows for the accounts you
selected. For more information, see the help topic Setting Up Collapsible Rows on the Balance Sheet.

Netherlands Localization
The Netherlands Localization SuiteApp delivers templates to generate the following Netherlands-specific
tax reports:

■ EU Sales List
■ Intrastat
■ Periodic VAT return OB 69

Netherlands Localization works with SuiteTax Reports by providing Netherlands tax report templates
that you can select from the list of country-specific templates on the Country Tax Reports page. Installing
Netherlands Localization requires EMEA Localization.

For more information, see the help topic Netherlands Localization.

New Japan Trial Balance and Enhancements to Financial


Statements
Japan Financial Statements SuiteApp version 2.0 includes the following enhancements:

■ New Japanese Trial Balance


■ Support for Accounting Context in Japan Financial Statements
■ Classification Fields in Japan Financial Statements

New Japanese Trial Balance


The Japanese Trial Balance is available from Reports > Financial > Japanese Trial Balance (New). This report
shows active account balances in credit and debit columns, for a specific period. You can run this report
before preparing actual financial statements to ensure that debits and credits balance out. For more
information, see the help topic Japanese Trial Balance (New).

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 152

Support for Accounting Context in Japan Financial Statements


If you select an accounting context from Home > Set Preferences, then the Japan Balance Sheet, Income
Statement, and Trial Balance can reference and apply it when generating reports. For more information,
see the help topic Support for Accounting Context.

Classification Fields in Japan Financial Statements


All Japan financial statements now have Department, Class, and Location fields that you can specify as
parameters in generating any of the reports.

New Simplified India GST Tax Return Reports


Note: This feature requires the India Localization SuiteTax Engine (Bundle ID 253246) and
SuiteTax Reports (Bundle ID 237699) SuiteApps installed. For more information, see the help topic
Installing India Localization SuiteTax Reports.

In compliance with the new India GST Simplified Return Filing system, the India Localization SuiteTax
Reports version 2.00.0 added the following India GST simplified tax reports:

■ GST ANX-1 3A B2C


■ GST ANX-1 3B B2B
■ GST ANX-1 3C & 3D EXP
■ GST ANX-1 3E & 3F
■ GST ANX-1 3H RCM
■ GST ANX-1 3I IMP
■ GST ANX-1 3J
■ GST ANX-1 3K IMPG SEZ

The new India GST tax reports serve as a template for the GST ANX-1 section of the main GST RET-1
simplified GST tax return form. These reports can be viewed, edited, and exported through the Country
Tax Reports generation page. For more information, see the help topic India Goods and Services Tax
(GST) Reporting.

Norway Tax Reports


The Norway Tax Reports SuiteApp delivers templates to generate the Norway Standard Audit File for Tax
(SAF-T) reports. Submitting these reports on monthly basis is mandatory for all Norwegian companies
with a turnover exceeding 5 million Norwegian Krones. The report structure is based on the SAF-T
standard format by the Organization for Economic Cooperation and Development (OECD).

To install the Norway Tax Reports SuiteApp, you must have the following SuiteApps installed in your
NetSuite account:

■ EMEA Localization
■ Norway Localization
■ International Tax Reports
■ Supplementary Tax Calculation
■ Tax Audit Files
■ Tax Reporting Framework

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 153

For more information, see the help topic Norway Tax Reports SuiteApp.

Philippine Invoicing
Southeast Asia Localization SuiteApp version 3.00 includes the following features and enhancements in
2020.1:

■ Philippine Invoicing Templates


■ Document Numbering
■ Inclusive Serial Number and PTU Number

Note: The following features are targeted to be available in Southeast Asia Localization SuiteApp
version 3.01 by March 2020.

■ VAT Print Option


■ Payments and Credit Applications on Philippine Documents
■ Specifying Liability on Philippine Documents

Philippine Invoicing Templates


In version 3.00, the Southeast Asia Localization SuiteApp comes with localized and customizable
templates for Philippine invoicing. Using the templates, Philippine VAT-registered persons or businesses
can generate and print VAT invoice or VAT official receipt in PDF or HTML, which are pre-formatted to
comply with BIR requirements. Philippine invoicing templates only work with or must be used on the
following document types:

■ Sales Invoice
■ Billing Statement
■ Collection Receipt
■ Official Receipt
■ Credit Memo

You must map these document type templates to corresponding transaction forms. And when you print
those transactions, the output will be pre-formatted based on the template used.

The templates support system-generated documents for users or businesses with Computerized
Accounting System (CAS). You can also print pre-formatted forms for non-CAS users or businesses with
loose-leaf books of accounts.

For more information, see the help topics Philippine Invoicing and Philippine Transaction Form Mapping
and Invoicing Templates.

Document Numbering
In version 3.00, the Philippine Document Numbering feature automatically generates and assigns
a document number to supported document types, which can help further identify transactions. To
enable this feature, you must check the Allow Override box of the document type you want to have
numbering, from Setup > Company > Auto-Generated Numbers page. Then, set up document numbering
on Philippine subsidiary records and on the Philippine Document Numbering page. In the set up, you can
customize document numbering by:

■ Adding a prefix or suffix to the document number


■ Setting an initial number greater than the default minimum of 100,000

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 154

■ Setting the number of digits greater than the default minimum of 6

For more information, see the help topic Philippine Document Numbering Setup.

Inclusive Serial Number and PTU Number


In version 3.00, you can set up and include the serial number or PTU (Permit To Use) information, issued
by the BIR, to your VAT invoice or VAT official receipt to be generated by the invoicing templates. The
serial number or PTU information can be included on transactions according to subsidiary or location,
depending on which classification engages with your customers and is authorized to issue invoices or
receipts for your company.

For more information, see the help topic Philippine Inclusive Serial Number and PTU Information Setup.

VAT Print Option


In version 3.01.0 of the Southeast Asia Localization SuiteApp, a new VAT Print Option field is available
on the Philippine Invoicing subtab of Philippine subsidiary records. If you select the Inclusive option,
the transaction amount with tax will be indicated. If you select the Exclusive option, the transaction
amount without tax will be indicated. Separate columns for Tax Amount and Tax Total are added to the
transaction summary on printed forms. For more information, see the help topic Setting VAT Print Option.

Payments and Credit Applications on Philippine Documents


In version 3.01.0, payments and credit application will be included on Philippine documents. A credit
application table will be shown if a transaction has credits, deposits, or journals applied to a payment.

Specifying Liability on Philippine Documents


In version 3.01.0, new fields for specifying the persons who processed Philippine documents are available
on the Philippine Invoicing subtab of Philippine documents. You can enter in the fields the names of
the users who created, reviewed, and approved the transaction, as well as the person who received
the printout upon submission to the tax agency. The names entered in the fields will be indicated in
the footer of the printouts of Philippine documents that use Philippine invoicing templates. For more
information, see the help topic Specifying Liability on Philippine Documents.

Sweden Tax Reports


The Sweden Tax Reports SuiteApp delivers templates to generate the following Sweden-specific tax
reports:

■ EU Sales List
■ Intrastat
■ Periodic VAT return Form 4700

Sweden Tax Reports works with SuiteTax Reports by providing Sweden tax report templates that you can
select from the list of country-specific templates on the Country Tax Reports page. Installing Sweden Tax
Reports requires EMEA Localization.

For more information, see the help topic Sweden Tax Reports SuiteApp.

United Kingdom Localization


The United Kingdom Localization SuiteApp delivers templates to generate the following UK tax reports:

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 155

■ UK VAT100
■ EC Sales List
■ Intrastat

United Kingdom Localization works with SuiteTax Reports by providing UK tax report templates that you
can select from the list of country-specific templates on the Country Tax Reports page. Installing United
Kingdom Localization requires EMEA Localization.

For more information, see the help topic United Kingdom Localization.

United Kingdom Localization Enhancements


The United Kingdom Localization SuiteApp now delivers the following payment templates provided by the
Electronic Bank Payments SuiteApp:

■ BACSTEL –IP (internet service variation of BACS)


■ BACS (Bacs Payment Schemes Limited)
■ BACS – Albany ALBACS-IP (Albany ePAY Bureau)
■ BACS – Bank of Scotland (Bank of Scotland PLC)
■ BACS DD
■ HSBC Faster Payments
■ HSBC UK CHAPS
■ HSBC UK BACS
■ HSBC BACS or Faster Payments
■ SVB BACS
■ SVB CHAPS
■ SEPA Credit Transfer (SVB)
■ SVB Faster Payments
■ SVB BACS or Faster Payments

For more information, see the help topic United Kingdom Localization.

Manufacturing SuiteApps
Following is the 2020.1 manufacturing enhancement to SuiteApps:

Manufacturing Mobile
The NetSuite 2020.1 Manufacturing Mobile SuiteApp enables you to use mobile scanners to report
manufacturing shop floor data. This solution compliments the existing Advanced Manufacturing scanner
to provide improved performance, scalability, customization support, and streamlined production
activities.

Note: Manufacturing Mobile is targeted to be available in April 2020.

The new scanner solution is not dependent on the Advanced Manufacturing SuiteApp, so you do not have
to purchase an Advanced Manufacturing license. The manufacturing mobile solution is built using the
same mobile technology as NetSuite WMS. Both the WMS and Manufacturing mobile features can coexist
in one scanner solution.

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 156

This initial release of the Manufacturing Mobile SuiteApp enables shop floor operators to use components
to produce assembly items. Operators can start and end assigned work and report production quantity
and consumed component quantity for a date and a shift. Production Managers can review data entered
by production operators and control inventory and financial record updates in NetSuite. They can also
respond to inaccurate data or errors to initiate processes to correct discrepancies and reprocess data.

This release of the Manufacturing Mobile SuiteApp only supports non-WIP work orders. It also supports
Uncontrolled and Lot Controlled Items but does not support Serial Number Controlled Items.

To reduce operator error and fatigue, Manufacturing Mobile scanners are used on the shop floor to
collect only relevant, commonly available information. Operators can focus on reporting only what
happened on the shop floor. For example, system reports can show that no material is staged in the bin.
However, the operator reported that they consumed material from the bin and completed the production
transaction. When the operator ends their work, the NetSuite Manufacturing Mobile SuiteApp checks for
any inconsistencies at the end of the process. This ensures that inventory and financial records are not
updated with inconsistent data.

Administration
To access the Manufacturing Mobile SuiteApp, install the Manufacturing Mobile bundle and the latest
SCM Mobile bundle. To access the Advanced Manufacturing SuiteApp, install the Advanced Manufacturing
bundle.

NetSuite Administrators will need to enable the following NetSuite features: Locations, Bins, Work
Centers, and Work Orders:

■ Work Centers — The Manufacturing Mobile SuiteApp leverages standard NetSuite Work Center
definitions for non-WIP Work Orders.
■ Bins — All consumed quantity is assigned to a staging bin and produced quantities are assigned to
production bins
■ Locations — A work center is associated to a location. A location represents an organization’s
warehouse or production facility.

Setting Work Order Context


Establishing a time bound work effort helps operators and managers to distinguish shop floor data and
scope financial and inventory transactions. Multiple operators can work on one work order at the same
time. Managers can then use the application to identify what each employee produced and consumed for
that work order.

The Manufacturing Mobile SuiteApp enables shop floor operators to choose to tap the Start Work button
to initiate work on the selected work order.

Tapping Resume Work enables operators to resume uncompleted work where they left off. For example,
the shift ended before the work was completed. When the next shift resumes, the operator taps Resume
Work and picks up the job where they previously left it.

After work is started, the Report Work screen (see Reporting Work Order Context) displays the work
order number, assembly number, and the employee who started the work.

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 157

Reporting Work Order Context

The Manufacturing Mobile SuiteApp enables you to separate shop floor activities and reporting from
transaction processing. The Consumption and Production options can be selected independently. You
can also partially report production and consumption.

After completing your assigned work, go to the Report Work screen to formally end your work in the
Manufacturing Mobile SuiteApp.

Inventory and Financial Records


After work has ended, NetSuite automatically transacts and updates all reported production and
consumption data.

■ Adhoc Builds — NetSuite 2020.1 supports expedited updates to inventory and costing anytime
before the work order ends. Production managers can use a NetSuite custom forms to initiate an
Adhoc Build. They cannot do this in the scanner. For example, a customer agreement may require you
to ship products as soon they are finished. Work order production continues as products are shipped.
■ Real-Time Builds — Real-time builds to inventory and costing can be triggered to run automatically
from the work order interface.
■ Backflush Component Quantity During Build — Component quantities can be back flushed based
on the production quantity. This functionality can be set in the work order interface.
■ Validate Data, Review Exceptions, and Correct Data — The 2020.1 Manufacturing Mobile SuiteApp
does not allow data to be corrected from the scanner interface.
Only the Production Manager can correct data recorded in the Manufacturing Mobile SuiteApp.
The manager uses a NetSuite custom form to validate data to ensure the data is consistent in both
NetSuite and the scanner. They will then review the data for any exceptions and potential build errors.

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 158

After a data error is identified, the manager can correct the data, revalidate the data, and then trigger
the build process.

Projects SuiteApps
This release note was updated June 24, 2020.

Following is the 2020.1 projects enhancement to SuiteApps:

■ Preferred First Day of a Week Available for RACG Calendar


■ Project Risk Forecast Now Available

Preferred First Day of a Week Available for RACG Calendar


In NetSuite 2020.1, the Resource Allocation Chart/Grid calendar now respects the First Day of a Week
preference by default.

For more information, see the help topic Resource Allocation Chart/Grid SuiteApp.

Project Risk Forecast Now Available


Project Risk Forecast version 1.00 lets project managers assign a risk level to projects (low, medium, high,
or none). When charge-based projects are assigned a risk level, finance users can generate a report that
can help recognize the financial impact of risks on future revenue.

For more information on this SuiteApp, see the help topic Project Risk Forecast.

Integration SuiteApps
This release note was updated September 16, 2020.

The following are 2020.1 integration enhancements to SuiteApps:

■ NetSuite-Oracle Content and Experience Integration Renamed to Oracle NetSuite Content Cloud
Service
■ NetSuite-Oracle Content and Experience Integration General Availability and Enhancements
■ NetSuite-Oracle Content and Experience Integration (Limited Release) Now Available

NetSuite-Oracle Content and Experience Integration Renamed


to Oracle NetSuite Content Cloud Service
In version 1.00.3, the NetSuite-Oracle Content and Experience Integration SuiteApp is renamed to Oracle
NetSuite Content Cloud Service.

For more information on this SuiteApp, see the help topic Oracle NetSuite Content Cloud Service.

NetSuite-Oracle Content and Experience Integration General


Availability and Enhancements
The NetSuite-Oracle Content and Experience Integration version 1.00.1 is now generally available and
includes the following enhancements:

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 159

■ Using the OAuth2.0 authorization protocol, you must log in through Oracle Identity Cloud Service
(IDCS) using dedicated service administrator credentials to configure the SuiteApp.
■ Using the Single Sign-on feature, you can use Oracle IDCS log in credentials to access NetSuite.
■ You can enter the placeholder {RELATEDRECORDS} in your email template to retrieve information
about any project, project task, or milestone task related to the deleted record.
■ You can use the SuiteApp on project records created from project templates.
■ You can track project records not connected to Oracle Content using a predefined saved search
included in the SuiteApp. This saved search can be added as a reminder on the Reminders portlet or
as a Custom Search portlet on your NetSuite home page.

For more information on this SuiteApp, see the help topic Oracle NetSuite Content Cloud Service.

NetSuite-Oracle Content and Experience Integration (Limited


Release) Now Available

Important: NetSuite-Oracle Content and Experience Integration version 1.00.0 is released on


limited availability. For information about this SuiteApp’s general availability, see NetSuite-Oracle
Content and Experience Integration General Availability and Enhancements.

The NetSuite-Oracle Content and Experience Integration SuiteApp is a cloud-based file repository that
uses Oracle Content and Experience (OCE) Cloud to improve content management and collaboration in
NetSuite. The SuiteApp lets you create corresponding folders in OCE Cloud for your NetSuite records.
When OCE is enabled on a record type, an OCE folder is automatically generated after NetSuite record
creation. You can upload all project-related files in the generated OCE folders, letting you search,
collaborate, and share project documents, digital assets, and content in one location. You can find your
OCE folders and files under the OCE Documents subtab of your NetSuite record. This subtab is available
on supported records and transactions in NetSuite. For this release, the NetSuite-Oracle Content and
Experience Integration SuiteApp can be used on project and project task records only.

For more information about this SuiteApp, see the help topic Oracle NetSuite Content Cloud Service.

Non-Profit SuiteApps
Following are the 2020.1 non-profit enhancements to SuiteApps:

■ Social Impact Standard Edition


■ Non-Profit Finanicals

Social Impact Standard Edition


The Social Impact Standard Edition is the advanced version of Non-profit Social Impact releases. It
provides additional roles and the ability to track relations between two constituents and manage
households.

In addition to the CEO, CFO, and Grant Administrator roles, the Social Impact Standard Edition contains
following new roles:

■ Controller
■ Program Manager
■ A/P Clerk

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 160

■ A/R Clerk

The Constituent Management feature of Social Impact Standard edition consists of the following:

■ Constituent relationships - You can create and track relationships between different constituents.
■ Households -  The Households feature provides the ability to aggregate the information of all the
constituents of a family.

For more information, see the help topic Social Impact Standard Edition.

Non-Profit Finanicals
The following Financial Accounting Standards Board (FASB) Reports which are developed from Financial
Statement Builder are now moved to a separate SuiteApp called NFP Reports:

■ Statement of Activity
■ Statement of Cashflow
■ Statement of Financial Position
■ Statement of Functional Expenses
■ Grant Statement of Activity

Following are the details of the NFP Reports SuiteApp:

■ Bundle Name: NFP Reports


■ Bundle ID: 301502

For more information, see the help topic Non-Profit Financial Management

Food and Beverage SuiteApps


This release note was updated July 15, 2020.

Following is the 2020.1 food and beverages enhancement to SuiteApps:

■ Lot and Serial Number Trace


■ Order Guides Enhancements
■ Static Route Management Enhancements
■ Auto Close Back Orders
■ Route Delivery

Lot and Serial Number Trace


The Lot and Serial Number Trace SuiteApp helps you to trace components, semi-finished, or finished
goods from a raw material supplier through to the customer. You can perform forward trace and
backward trace. For component items, you can use forward trace to trace the source of procurement,
consumption, and delivery transactions. Forward trace also lists the delivery transactions of the assembly
items. For finished goods, you can use backward trace to list the source of manufacturing and delivery
transactions. Backward trace also lists sourcing transactions of component items. The SuiteApp also lists
various quantity details.

Following are the SuiteApp details:

■ Bundle Name: Lot and Serial Number Trace

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 161

■ Bundle ID: 322956


■ Version number: 1.00.0
■ Availability: Public

Note: The Lot and Serial Number Trace SuiteApp supersedes the SuiteSolutions - Lot Traceability
SuiteApp (bundle ID – 132060).

For more details, see the help topic Lot and Serial Number Trace.

Order Guides Enhancements


Order Guides version 2.01.0 includes the following enhancements:

■ Subsidiary-based order guides – You now have the ability to create a separate order guide for each
subsidiary of a customer. You can also maintain preferred and historical order guides per subsidiary of
a customer.  
■ Linked order guides – By default, order guides created from order guide templates now maintain
a link with the template. If you add or remove items from the template, you can propagate those
changes to all linked order guides.
■ Excluded Items list – When creating order guides from order guide template, items that cannot
be included in the order guide are now listed in a separate Excluded Items List popup window. A link is
provided in the banner to view the Excluded Items List popup window.
■ Simplified order entry – Updating the quantities for items is now simplified in the Order Guide Entry
popup window from sales orders. You can change the quantity and press the Down key to update the
quantity and move to the next line item quantity.
■ Fewer prerequisites – The Order Guides SuiteApp now does not require Multiple Units of Measure
and Multiple Prices prerequisites.
■ Last Sale Currency – The Last Sale Currency column is now added to the Order Guide Entry popup
window. The column displays the currency in which the item was invoiced for the selected subsidiary of
the customer.

For more details, see the help topic Order Guides.

Static Route Management Enhancements


The Route Delivery SuiteApp is now renamed as Static Route Management SuiteApp. The Static Route
Management SuiteApp version 2.00.0 includes the following enhancements:

■ Manage Route Shipments page - The Manage Route Shipments page is provided from which you
can perform the following actions:
□ Filter and view routes and orders assigned to the routes
□ Change the stop sequence for orders within a route
□ Move orders between routes as well as ship dates
■ Subsidiary based route and truck records - You can now create route and truck records per
subsidiary.
■ Route determination for intercompany sales orders and CSV imported sales orders – The
SuiteApp now automatically determines the route and ship date when you create intercompany sales
orders or import sales orders using CSV.

For more details, see the help topic Static Route Management.

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 162

Auto Close Back Orders


If a line item on a sales order is partially fulfilled, the remaining quantity is saved as back order. However,
in many organizations, such back order quantities are not fulfilled, and the sales order is closed. The Auto
Close Back Orders SuiteApp enables you to close such partially fulfilled back orders automatically, post
billing. The SuiteApp also enables you to maintain a list of items to exclude from automatic closure of back
orders.

Following are the bundle details:

■ Bundle Name: Auto Close Back Orders


■ Bundle ID: 300047
■ Version number: 1.00.0
■ Availability: Public

For more details, see the help topic Auto Close Back Orders

Route Delivery
Using the Route Delivery SuiteApp, you can create delivery truck and route records and include the route
and truck details to the sales orders. The SuiteApp also determines the earliest possible ship date and
route for specified location and shipping address.

Following are the bundle details:

■ Bundle Name: Route Delivery


■ Bundle ID: 290640
■ Version number: 1.00.0
■ Availability: Public

Route Delivery is a managed SuiteApp that is automatically updated whenever enhancements or new
features are added.

For more details, see the help topic Static Route Management.

Wholesale Distribution SuiteApps


This release note was updated July 15, 2020.

The following are 2020.1 wholesale distribution enhancements to SuiteApps:

Bill of Lading
A bill of lading is a document that primarily serves as a legally binding agreement between the carrier and
shipper or freight owner. It helps the carrier process the cargo according to the original contract. A bill of
lading is presented to the carrier, outlining the individual shipping orders included in a shipment.

The Bill of Lading SuiteApp provides a simplified interface to print the Bill of Lading document for selected
item fulfillments. With this SuiteApp, you can:

■ Search for item fulfillments using different filters.


■ Select desired item fulfillments.
■ Generate PDF files containing standalone bill of lading, master bill of lading, or both.
■ Save bill of lading PDF files to file cabinet.

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 163

■ Print bill of lading directly from the Item Fulfillment page.


■ Select default templates or customized templates for generating standalone as well as master bill of
lading.
■ Manage bill of lading preferences.

Following are the SuiteApp details:

■ Bundle Name: Bill of Lading


■ Bundle ID: 312584
■ Version number: 1.00.0
■ Availability: Public

For more information, see the help topic Bill of Lading.

Vendors, Purchasing, and Receiving SuiteApps


This release note was updated May 27, 2020.

Following is the 2020.1 vendors, purchasing, and receiving enhancement to SuiteApps:

SuiteApprovals Support for Vendor Bills


In SuiteApprovals SuiteApp version 5.01.00, approvers of vendor bills can access records using a
customized Employee Center role.

■ Administrators must customize the Employee Center to allow approvers to use this capability.
□ Customize the Employee Center role to set the Bill permission to View.
□ Assign the customized Employee Center role to vendor bill approvers.
■ The SuiteApprovals portlet is accessible from the Personalize Dashboard palette.
When logged in using the custom Employee Center role, the vendor bill approver can add to the
dashboard the SuiteApprovals | Records for Approval portlet.
■ The SuiteApprovals portlet displays the number of vendor bills for approval, and the link to the page
listing the records.
Approvers must still access each vendor bill record to approve or reject the transaction.

For more information, see the help topic SuiteApprovals Version 5.01.00.

Taxation SuiteApps
This release note was updated September 16, 2020.

Following are the 2020.1 taxation enhancements to SuiteApps:

■ SuiteTax SuiteApps
□ U.S. Sales Tax and Canada GST Now Generally Available
□ SuiteTax Support for Tax Groups
□ SuiteTax Support for Tax Groups for Canada and the United States
□ Canada Data Provisioning Enhancements
□ Automatic Tax Calculation for Shipping in VAT Countries

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 164

□ SuiteTax Reports Enhancements


▬ Tax Point Date Support for SuiteTax Reports
▬ Tax Reporting Category for Country Tax Reports
▬ Expense Transactions in VAT/GST Reporting
□ EMEA Tax Audit Files Support for SuiteTax Reports
□ SuiteTax Country Tax Reports APAC Enhancements
▬ JAPAC Support for SuiteTax Reports
▬ Tax Reporting Category Support for Australia and Philippines Tax Reports
▬ Expense Transaction Support for APAC Tax Reports
□ SuiteTax Reports is now Tax Reporting Framework
■ Legacy Tax SuiteApps
□ Legacy Tax Support in Tax Reporting Framework
□ Tax Audit Files Enhancements
▬ Portugal Tax Audit Files Field Mapping Page Update
▬ France Tax Audit Files Support for Period End Journal Entries
▬ Portugal Standard Audit File for Tax Purposes (SAF-T PT) Grouping Code Mapping Update
▬ Tax Audit Files Generation Update for Enhanced Trial Balance
▬ Support for Norway Standard Audit File for Tax (SAF-T) Financial Report
□ Philippines Certificate of Creditable Tax Withheld at Source (Form 2307) Update
□ International Tax Reports Enhancements
▬ Austria VAT Rate Update
▬ Ireland VAT Rate Update
▬ Saudi Arabia VAT Rate Update
▬ Germany VAT Rate Update
▬ Cyprus VAT Return Enhancement
▬ Singapore Goods and Services (GST) F5 Return Update
▬ Germany VAT Return Update
▬ Belgium VAT Return Enhancement
▬ Slovenia VAT Return Update

SuiteTax SuiteApps

Important: The SuiteTax enhancements in this section are applicable only to NetSuite
production and Sandbox accounts where the SuiteTax feature is enabled. For NetSuite accounts
without SuiteTax, see Legacy Tax SuiteApps.

U.S. Sales Tax and Canada GST Now Generally Available


SuiteTax is now generally available for NetSuite accounts with U.S. and Canada subsidiaries. This feature
is an addition to the existing International VAT feature, which has been available since October 2019. The
SuiteTax Engine and SuiteTax Data Records SuiteApps provide tax codes, tax rates, and tax calculations
for U.S., Canada, and over 100 VAT countries.

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 165

The SuiteTax Engine SuiteApp includes:

■ Tax determination based on ZIP +4


■ Origin and destination-based taxes
■ Intrastate and interstate sales
■ Exemption certificate management, covering both blanket and individual certificates and validity dates
■ Item taxability rules by state

The SuiteTax Data Records SuiteApp includes:

■ Automatic provisioning of tax codes and tax rates for your tax jurisdictions (state, province, county,
city, district)
■ Automated monthly tax rate updates for 110 countries
■ Tax rate change history for each tax code

You also have the option to use an external tax partner solution in SuiteTax. The SuiteCloud Developer
Network (SDN) partners who can integrate with SuiteTax using an API include Avalara, Sovos, Taxjar,
Thomson Reuters, Vertex, and Wolters Kluwer. To learn more about the SDN partners, see SuiteApp.com.

For more information, see the help topics SuiteTax Engine and Tax Records in SuiteTax.

Contact your Account Manager to find out how you can get access to SuiteTax.

SuiteTax Support for Tax Groups


In SuiteTax Engine version 2.00.1, you can now create tax groups. A tax group enables you to combine
and use several tax codes as a single tax code on the tax schedule. The tax group is used either as an
entity default tax code or a nexus default tax code.

Tax groups are beneficial when you need to apply multiple tax codes. For example, you can combine GST
and PST rates for relevant provinces in Canada.

The tax records permission is required to create tax groups.

For further information, see the help topic Setting Up Tax Groups in SuiteTax Engine.

SuiteTax Support for Tax Groups for Canada and the United States
In SuiteTax Engine version 2.00.11, you can now create tax groups for Canada and the United States. To
learn more about tax groups, see the help topic Setting Up Tax Groups in SuiteTax Engine.

Previously, there was a restriction on using the United States and Canada nexuses. The restriction is
removed in this update.

For the United States, monthly tax records updates are supported by the SuiteTax Engine.

For Canada, two tax groups are created for PST and RST provinces, and one for QST province:

■ a tax group for sales containing GST, claimable PST/RST


■ a tax group for purchase containing GST, non-claimable PST/RST
■ a tax group containing GST and QST for sales and purchases

Canada Data Provisioning Enhancements


SuiteTax Engine version 2.00.10 provisions tax related data for Canada nexuses. This update supports
specific tax determination rules in Canada, such as Goods and Services Tax (GST), Provincial Sales Tax

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 166

(PST)/ Retail Sales Tax (RST)/ Quebec Sales Tax (QST), and Harmonized Sales Tax (HST). The SuiteApp
creates separate tax types, tax codes, and tax agencies for each of these Canada sales taxes. In addition,
the Canada nexus default tax codes and tax groups for all the provinces are adjusted based on the new
data structure.

Automatic Tax Calculation for Shipping in VAT Countries


SuiteEngine version 2.00.10 supports automatic tax calculation for shipping items and shipping methods
in countries with VAT.

This feature uses the same logic used in the automatic tax calculation for goods. For example, if an entity
default tax code or nexus default tax codes apply to the transaction, they also apply to the shipping
method or shipping item.

This feature also uses the standard lookup logic for goods.

SuiteTax Reports Enhancements


SuiteTax Reports SuiteApp includes the following enhancements in 2020.1:

■ Tax Point Date Support for SuiteTax Reports


■ Tax Reporting Category for Country Tax Reports
■ Expense Transactions in VAT/GST Reporting

Tax Point Date Support for SuiteTax Reports


SuiteTax Reports version 2.00.0 now supports generation of country tax reports using tax point dates.
The tax point date (time of supply) is the date when VAT becomes due. For more information about tax
point dates in SuiteTax, see the help topic Tax Point Dates.

When you generate a country tax report, you can now choose a tax point start and end date on the
period filters. To learn more about generating a tax report using the tax point date, see the help topic
Generating Localized Country Tax Reports.

The Use Tax Point Date feature is automatically enabled for VAT/GST returns, supplementary VAT/GST
reports, and EU cross-border reports. To set up this feature, see the help topic Setting Up Country Tax
Reporting Preferences.

Tax Reporting Category for Country Tax Reports


SuiteTax Reports version 2.00.2 introduces the Tax Reporting Category feature which enables you to
further classify transactions for VAT reporting requirements. On the Item subtab of transaction records,
you can assign a category according to your local VAT reporting guidelines in the Tax Reporting Category
column.

The Tax Reporting Category varies per country and therefore requires support from the regional or
country-specific localization SuiteApp. For more information about Tax Reporting Category and to see the
list of countries that support this feature, see the help topic Assigning a Tax Reporting Category.

Expense Transactions in VAT/GST Reporting


SuiteTax Reports version 2.00.4 enhances VAT/GST reporting with the inclusion of the following expense
transactions in country tax reports:

■ Billable Expenses in Cash Sale and Invoice


■ Expense Reports with tax details

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 167

■ Expenses entered in Expenses and Items lines of Bill and Bill Credit

Two new Search Type filters are now available in the tax return template to report expenses: Billable
Expenses and Expenses. To learn more about adding these filters to the tax return template, see the
help topic Adding a Tax Return Filter.

EMEA Tax Audit Files Support for SuiteTax Reports


The SuiteTax EMEA Audit Files SuiteApp provides the France and Germany tax audit file support for
SuiteTax Reports version 2.00.0. If you have SuiteTax Reports and you install SuiteTax EMEA Tax
Audit Files in your account, you can generate the France FEC and Germany GoBD reports. For more
information, see the help topic SuiteTax EMEA Audit Files.

SuiteTax Country Tax Reports APAC Enhancements


SuiteTax Country Tax Reports APAC SuiteApp includes the following enhancements in 2020.1:

■ JAPAC Support for SuiteTax Reports


■ Tax Reporting Category Support for Australia and Philippines Tax Reports
■ Expense Transaction Support for APAC Tax Reports

JAPAC Support for SuiteTax Reports


The SuiteTax Country Tax Reports JAPAC SuiteApp provides the JAPAC tax report templates and
localization for SuiteTax Reports version 2.00.0. If you have SuiteTax Reports and you install SuiteTax
Country Tax Reports JAPAC in your account, you can generate localized tax reports for Australia, Japan,
New Zealand, Philippines, and Singapore. For more information, see the help topic SuiteTax Country Tax
Reports APAC.

Tax Reporting Category Support for Australia and Philippines Tax Reports
SuiteTax Country Tax Reports JAPAC version 1.00.1 supports the Tax Reporting Category feature for
Australia and Philippines. You can now segregate purchases of capital goods from other transactions and
report it separately in the tax report by selecting the following categories in the Tax Reporting Category
column:

■ AU – Capital Goods - category for reporting capital purchases in Australia


■ PH - Capital Goods – category for reporting purchases of capital goods in the Philippines

To learn more about assigning a tax reporting category to your transactions, see the help topic Assigning
a Tax Reporting Category.

The tax return templates for Australia and Philippines are also updated with the preselected Tax
Reporting Category filters. For more information about using the Tax Reporting Category as a tax return
filter, see the help topic Customizing Localized Tax Returns.

Expense Transaction Support for APAC Tax Reports


In version 1.00.3, the SuiteTax Country Tax Reports JAPAC SuiteApp is renamed to SuiteTax Country
Tax Reports APAC. This version includes support for reporting expense transactions and updates in the
default tax return templates of the following country tax reports:

■ Business Activity Statement


■ GST Return 101A
■ Philippines VAT Report: Monthly Return Form 2550M

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 168

■ Philippines VAT Report: Quarterly Return Form 2500Q


■ Singapore GST Report: Return Form F5

Expense Reports, Billable Expenses, and expenses entered in Expenses and Items lines of Bill and
Bill Credit transactions are now included in VAT/GST reports of APAC countries using the Billable
Expenses and Expenses Search Type filters. For more information, see the help topic Customizing
Localized Tax Returns.

SuiteTax Reports is now Tax Reporting Framework


SuiteTax Reports SuiteApp changes its name to Tax Reporting Framework. All references to SuiteTax
Reports in the Help Center and SuiteAnswers is changed to Tax Reporting Framework.

If you have the SuiteTax Reports SuiteApp installed in your account, the bundle details are automatically
updated from SuiteTax Reports version 2.00.4 to Tax Reporting Framework version 1.00.0.

For more information about Tax Reporting Framework, see the help topic Tax Reporting Framework.

Legacy Tax SuiteApps

Important: The legacy tax enhancements in this section are applicable only to NetSuite
accounts without the SuiteTax feature. For NetSuite accounts with SuiteTax, see SuiteTax
SuiteApps.

Legacy Tax Support in Tax Reporting Framework


In Tax Reporting Framework version 1.00.0, generating country tax reports in Legacy Tax environments is
supported. You can now generate tax reports using the Country Tax Reports page.

For more information, see the help topic Legacy Tax Support in Tax Reporting Framework.

Tax Audit Files Enhancements


Tax Audit Files SuiteApp includes the following enhancements in 2020.1:

■ Portugal Tax Audit Files Field Mapping Page Update


■ France Tax Audit Files Support for Period End Journal Entries
■ Portugal Standard Audit File for Tax Purposes (SAF-T PT) Grouping Code Mapping Update
■ Tax Audit Files Generation Update for Enhanced Trial Balance
■ Support for Norway Standard Audit File for Tax (SAF-T) Financial Report

Portugal Tax Audit Files Field Mapping Page Update

In Tax Audit Files SuiteApp version 1.76.0, the Audit Files Field Mapping page for PT SAF-T Account
Grouping category is updated with the following added filters:

■ Account Type
■ Subsidiary

You can map Account instead of Account Type to the Grouping Category list available on the Value
column of the Mapping page. Summary Accounts that have sub-accounts can now be mapped with
different Grouping Category values.

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 169

After updating your account to Tax Audit Files SuiteApp version 1.76.0, the previous Grouping Category
values mapped to the Account Type will be retained and applied to all Accounts under that Account Type.

To learn more, see the help topic Mapping Standard NetSuite fields to SAF-T PT Required Categories.

France Tax Audit Files Support for Period End Journal Entries
Tax Audit Files SuiteApp version 1.76.0 includes support for the Period End Journal Entries feature for the
France Fichier d’Ecritures Comptables (FEC) report.

This feature aims to meet subsidiaries’ statutory requirements to record entries in the general ledger for
period end transactions. The following period end journal entries are supported to be included in the
France FEC report:

■ Income Statement
■ Closing Journal Balance Sheet Closing and Opening Journal

To learn more, see the help topic Setting Tax Audit File Report Preferences.

Portugal Standard Audit File for Tax Purposes (SAF-T PT) Grouping Code Mapping Update
Tax Audit Files SuiteApp version 1.76.0.a includes enhancements for the Audit Files Field Mapping for the
Portugal Standard Audit File for Tax Purposes (SAF-T PT) file.

On the Audit Files Field Mapping page, additional columns for the Grouping Code are available so you can
manually input the Grouping Code values and map these values to the applicable Accounts. You can also
map the Grouping Category and Grouping Code through CSV Import.

To learn more, see the help topic Field Mapping for Portugal.

Tax Audit Files Generation Update for Enhanced Trial Balance


Tax Audit Files SuiteApp version 1.77.0 is upgraded to include an additional configuration for Tax Audit
Files (TAF) Enhanced Trial Balance before generating the following tax audit files and reports:

■ Mexico Trial Balance report


■ Mexico Complementary Trial Balance report
■ Mexico Auxiliary Report of Accounts
■ Portugal Standard Audit File for Tax Purposes (SAF-T)
■ Portugal SAF-T Invoicing
■ Portugal SAF-T Accounting

To learn more, see the help topic Generating a Tax Audit File.

Support for Norway Standard Audit File for Tax (SAF-T) Financial Report
Tax Audit Files version 1.78.0 includes enhancements for the Audit Files Field Mapping page to support
the Norway Standard Audit File for Tax (SAF-T) Financial report.

Starting January 1, 2020, companies with a turnover exceeding 5,000,000 Norwegian Krone are mandated
to comply with the submission of the Norway SAF-T report. The Norway SAF-T Financial report is a
standard file format for exporting various types of accounting transactional data in XML format.

The report structure is based on the SAF-T standard format by the Organization for Economic
Cooperation and Development (OECD).

The first version of the Norway SAF-T Financial report is comprised of three main sections:

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 170

■ Header – Shows general information about the company and audit file
■ Master Files – Shows information about general ledger account, suppliers, customers, and tax table
■ General Ledger Entries – Shows accounting transactions

To successfully generate the Norway SAF-T Financial report, you must complete the following tasks:

■ Ensure that you are using Tax Audit Files version 1.78.0
■ Install the latest versions of the following SuiteApps:
□ NetSuite Norway Localization SuiteApp (ID 270800)
□ EMEA Localization SuiteApp (ID 303903)
□ International Tax Reports SuiteApp (ID 43003)
□ Supplementary Tax Calculation SuiteApp (ID 123426)
□ Tax Reporting Framework SuiteApp (ID 237699)
□ Norway Tax Reports SuiteApp (ID 333158)
■ Set the Use Account Numbers preference on the Accounting Preferences page
■ Enable the Multiple Currencies feature on the Enable Features page

Note: When EMEA Localization SuiteApp is installed, ensure that the Registration Number on the
subsidiary record is provided. You must review the related configuration and mandatory fields for
the Norway SAF-T Financial report explained in Norway Standard Audit File for Tax (SAF-T) Financial.

The Account Files Field Mapping page is also updated to support the following account and tax codes
mapping categories for the Norway SAF-T Financial report:

■ NO-SAFT: 2 Digit Standard Accounts


■ NO-SAFT: 4 Digit Standard Accounts
■ NO-SAFT: Income Statement RF-1167
■ NO-SAFT: Income Statement RF-1175
■ NO-SAFT: Income Statement RF-1323
■ NO–SAFT: Standard Tax Codes

To learn more, see the help topic Norway Standard Audit File for Tax (SAF-T) Financial.

Philippines Certificate of Creditable Tax Withheld at Source (Form 2307)


Update
Withholding Tax SuiteApp version 1.44.0 includes enhancements for the Philippine Bureau of Internal
Revenue (BIR) Form No. 2307 as part of the implementation of the Tax Reform for Acceleration and
Inclusion (TRAIN) Law.

Withholding Tax Reports 1.44.0 includes the following enhancements:

Previous 2307 Form Updated 2307 Form

Report footer declaration: Updated to:

We declare, under the penalties of perjury, We declare under the penalties of perjury that this certificate has
that this certificate is made in good faith, been made in good faith, verified by us, and to the best of our
verified by me, and to the best of my knowledge and belief, is true and correct, pursuant to the provisions
knowledge and belief, is true and correct, of the National Internal Revenue Code, as amended, and the

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 171

Previous 2307 Form Updated 2307 Form


pursuant to the provisions of the National regulations issued under authority thereof. Further, we give our
Internal Revenue Code, as amended, and the consent to the processing of our information as contemplated under
regulations issued under authority thereof. the *Data Privacy Act of 2012 (R.A. No. 10173) for legitimate and
lawful purposes.

The updated BIR Form 2307 also includes additional manual input fields to show the Signatory Details in
the PDF format of the form:

■ Payor/Authorized Representative/Tax Agent


■ Tax Agent Accreditation No./Attorney's Roll No.
■ Payee/Authorized Representative/Tax Agent
■ Tax Agent Accreditation No./Attorney's Roll No.

To learn more, see the help topic Setting Up Tax Groups in SuiteTax Engine.

International Tax Reports Enhancements


International Tax Reports SuiteApp includes the following enhancements in 2020.1:

■ Austria VAT Rate Update


■ Ireland VAT Rate Update
■ Saudi Arabia VAT Rate Update
■ Germany VAT Rate Update
■ Cyprus VAT Return Enhancement
■ Singapore Goods and Services (GST) F5 Return Update
■ Germany VAT Return Update
■ Belgium VAT Return Enhancement
■ Slovenia VAT Return Update

Austria VAT Rate Update

International Tax Reports version 3.117.0 includes automatic provisioning of reduced rate tax codes for
newly created Austria subsidiaries and nexuses. These new tax codes are effective from July 1, 2020 until
December 31, 2020:

Tax Code Description Tax Properties

R3-AT Reduced Rate at 5% according to Section 28 Abs. 52 Z 1 from July ■ Rate of 5%


1, 2020 – December 31, 2020
■ Reduced Rate
■ Available on both Sales and
Purchases

ER3-AT EC sales and purchases (goods) - reduced rate at 5% according to ■ Rate of 0%


Section 28 Abs. 52 Z 1 from July 1, 2020 – December 31, 2020
■ EC Code
■ Reduced Rate
■ Available on both Sales and
Purchases
■ Notional Rate Derived from R3-
AT (5%)

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 172

The Austria VAT report will be updated to properly report R3-AT and ER3-AT tax codes in the following
boxes, respectively:

Box Description Reported Tax Code

009 Sales at 5% according to § 28 Abs. 52 Z 1 from July 1, 2020 until December R3–AT
31, 2020

010 5% according to § 28 Abs. 52 Z 1 from July 1, 2020 until December 31, ER3-AT
2020

To learn more about the new tax codes and Austria VAT form update, see the help topics Tax Code Table
for Austria and What goes into each box - Austria VAT report.

Ireland VAT Rate Update


International Tax Reports 3.117.0 supports Ireland’s temporary reduction of standard VAT rates due to
COVID-19 effective from September 1, 2020 until February 28, 2021.
Automatic Provisioning of Temporary Tax Codes
The update includes automatic provisioning of the following tax codes for newly created Ireland
subsidiaries or nexuses:

Tax Code Description Tax Properties

S1-IE Standard Rate at 21% from September 1, 2020 to February 28, ■ Rate of 21%
2021
■ Available on both Sales and
Purchases

RC1-IE Reverse charge sales in country from September 1, 2020 until ■ Rate of 0%
February 28, 2021
■ Reverse Charge Code
■ Notional Rate Derived from S1-IE
(21%)
■ Available on both Sales and
Purchases

I1-IE Purchase of goods from outside of EC from September 1, ■ Rate of 21%


2020 until February 28, 2021
■ Import
■ Available on both Sales and
Purchases

IS1-IE Purchase of services from outside of EC from September 1, ■ Rate of 0%


2020 until February 28, 2021
■ Reverse Charge Code
■ Notional Rate Derived from S1-IE
(21%)
■ Applies to Service Items, Import
■ Available on both Sales and
Purchases

ES1-IE EC sales/purchases to another EC country (goods) from ■ Rate of 0%


September 1, 2020 until February 28, 2021
■ EC Code
■ Notional Rate Derived from S1-IE
(21%)
■ Available on both Sales and
Purchases

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 173

Tax Code Description Tax Properties

ESSP1-IE EC purchases (services) from outside of EC from September 1, ■ Rate of 0%


2020 until February 28, 2021
■ EC Code
■ Reverse Charge Code
Note: This tax code is applicable to intra-
community purchase transaction. ■ Notional Rate Derived from S1-IE
(21%)
■ Applies to Service Items, Available
on both Sales and Purchases

ESS1-IE EC sales (services) from outside of EC from September 1, 2020 ■ Rate of 0%


until February 28, 2021
■ EC Code
■ Notional Rate Derived from S1-IE
Note: This tax code is applicable to intra-
(21%)
community sales transaction.
■ Applies to Service Items
■ Available on both Sales and
Purchases

The Ireland VAT3 form is also updated to properly report the new tax rates in the appropriate boxes.

To learn more about Ireland’s COVID-19 tax response and VAT3 form updates, see the help topics
Temporary Tax Codes for Ireland COVID-19 Tax Response and What goes into each box - Ireland VAT 3
report.

Saudi Arabia VAT Rate Update

International Tax Reports version 3.116.0 includes automatic provisioning of tax codes for newly created
Saudi Arabia subsidiaries and nexuses with the following properties:

Tax Code Description Tax Properties

S-KSA Standard Rate - Domestic ■ 15% Rate


■ Available on both Sales and Purchases

IMG-KSA Standard Rate - Imports (Goods) ■ 15% Rate


■ Available on Purchase transactions

IMS-KSA Standard Rate - Imports (Services) ■ 0% Rate


■ Available on Purchase transactions
■ Reverse Charge Code
■ Notional Rate Derived from IMG-KSA (15%)
■ Applies to Service Items

RCP-KSA Reverse Charge - Purchases ■ 0% Rate


■ Available on Purchase transactions
■ Reverse Charge Code
■ Notional Rate Derived from S-KSA (15%)

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 174

Tax Code Description Tax Properties


■ Applies to Service Items

To learn more, see the help topic Tax Code Table for Saudi Arabia.

Germany VAT Rate Update


International Tax Reports version 3.116.0 supports the temporary reduction of Germany tax rates due to
COVID-19. This tax rate update is applicable to Standard VAT Rate (16%) and Reduced VAT Rate (5%) from
July 1, 2020 until December 31, 2020.

Automatic Provisioning of Temporary Tax Codes

The update includes automatic provisioning of tax codes for newly created Germany subsidiaries or
nexuses with the following properties:

Tax Code Description Tax Properties

S2-DE Standard Rate from July 1, 2020 until December 31, 2020 ■ 16% Rate
■ Available on both Sales and
Purchases

R1-DE Reduced Rate from July 1, 2020 until December 31, 2020 ■ 5% Rate
■ Reduced Rate
■ Available on both Sales and
Purchases

ES1-DE EC Sales/Purchases to another EC country (Goods) - Standard ■ 0% Rate


Rate from July 1, 2020 until December 31, 2020
■ EC Code
■ Notional Rate Derived from S2-DE
(16%)
■ Available on both Sales and
Purchases

ER1-DE EC Sales/Purchases (Goods and Related Services) - Reduced ■ 0% Rate


Rate from July 1, 2020 until December 31, 2020
■ EC Code
■ Notional Rate Derived from R1-DE
(5%)
■ Reduced Rate
■ Available on both Sales and
Purchases

ESSP1-DE EC Purchases (Services) from July 1, 2020 until December 31, ■ 0% Rate
2020
■ EC Code
■ Reverse Charge
■ Applies to Service Items
■ Notional Rate Derived from S2-DE
(16%)
■ Available on both Sales and
Purchases

ESSS1-DE EC Sales (Services) from July 1, 2020 until December 31, 2020 ■ 0% Rate
■ EC Code
■ Applies to Service Items

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 175

Tax Code Description Tax Properties


■ Notional Rate Derived from S2-DE
(16%)
■ Available on both Sales and
Purchases

SS1-DE Applicable for Mobile Devices from July 1, 2020 until December ■ 0% Rate
31, 2020
■ Reverse Charge
■ Notional Rate Derived from S2-DE
(16%)
■ Available on both Sales and
Purchases

RC1-DE Reverse Charge from July 1, 2020 until December 31, 2020 ■ 0% Rate
■ Reverse Charge
■ Notional Rate Derived from S2-DE
(16%)
■ Available on both Sales and
Purchases

IS1-DE Purchases of Services from outside EU from July 1, 2020 until ■ 0% Rate
December 31, 2020
■ Reverse Charge
■ Notional Rate Derived from S2-DE
(16%)
■ Applies to Service Items
■ Import
■ Available on both Sales and
Purchases

For more details, see the help topic Germany COVID-19 Tax Response: Temporary Tax Codes.

The tax codes will be reported in the following boxes of Germany Monthly/Quarterly VAT Return:

Box Description Reported Tax Codes

41 Sales of goods and services transactions within the EU Sales Net Amount of ES1-DE, ER1-DE

35 Sales which are subject to other VAT rates Sales Net Amount of S2-DE, R1-DE

36 Sales which are subject to other VAT rates Sales Tax Amount of S2-DE, R1-DE

95 Intra-community aquisitions, which are subject to other VAT rates Purchases Net Amount of ES1-DE, ER1-DE

98 Intra-community aquisitions, which are subject to other VAT rates Purchases Notional Tax Amount of ES1-
DE, ER1-DE

60 Taxable sales, where recipient is liable for tax payment Sales Net Amount of SS1-DE, RC1-DE

21 Net amount of sales of services within the EU Sales Net Amount of ESSS1-DE

46 Net amount of purchases of services within the EU Purchases Net Amount of ESSP1-DE

47 VAT of purchases of services with standard notional rate within Purchases Notional Amount of ESSP1-DE
the EU

84 Other services (§ 13b para 2 No. 1, 2, 4 to 11 UStG) Purchases Net Amount of SS1-DE, RC1-
DE, IS1-DE

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 176

Box Description Reported Tax Codes

85 Tax amount of other services (§ 13b para 2 No. 1, 2, 4 to 11 UStG) Purchases Notional Amount of SS1-
DE, RC1-DE, IS1-DE

66 Purchase VAT on invoices from other businesses, from services Purchases Tax Amount of S2-DE, R1-DE
provided and from intra-community triangulations

61 Notional tax amount of purchases within the EU Purchases Notional Amount of ES1-
DE, ER1-DE

67 Input VAT from supplies subject to reverse charge Purchases Notional Amount of ESSP1-
DE, IS1-DE, RC1-DE, SS1-DE

To learn more about the details of the VAT form, see the help topic What goes into each box - Germany
Monthly/Quarterly VAT report.

Cyprus VAT Return Enhancement

International Tax Reports version 3.112.0 includes enhancements for the latest VAT return for Cyprus. The
update includes automatic provisioning of the following reduced rates tax codes for newly-created Cyprus
subsidiaries:

Tax Code Description Rate Available On

R1–CY Reduced Rate 9% Both (Sales and Purchases)

R2–CY Special Reduced Rate 5% Both (Sales and Purchases)

The update also reflects the correct reporting of the Cyprus tax codes:

Box Reported Tax Codes

1 Tax amount of sales S, R1, R2

Notional tax amount of purchases RC, IS

4 Tax amount of purchases S, R1, R2

Notional tax amount of purchases ES, RC, IS, ESSP, ESSS

6 Net amount of sales S, R1, R2, E,O, Z, ES, ESSS, EZ, RC

Net amount of purchases IS, ESSP

7 Net amount of purchases S, R1, R2, E, Z, I, IS, ES, ESSS, EZ, ESSP, RC

9 Net amount of sales Z, O

To learn more, see the help topics Cyprus Tax Codes and Cyprus VAT Report.

Singapore Goods and Services (GST) F5 Return Update

International Tax Reports version 3.112.0 includes support for Singapore's implementation of reverse
charge on imported services and taxing B2C digital services (overseas vendor registration regime).

Effective January 1, 2020, Singapore implements Goods and Services Tax (GST) on the following imported
services:

■ Reverse Charge (RC) mechanism to tax services imported by GST-registered persons (B2B)

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 177

■ Overseas Vendor Registration (OVR) regime to tax digital services imported by non-GST persons
including private individuals

The GST F5 return update supports the new boxes related to the new tax codes:

Tax Code Description Rate Available On

SRRC-SG GST on imported services by way of reverse charge 0% Purchases

SROVR-SG GST on digital services by way of an overseas vendor 7% Sales


registration regime

The SRRC-SG and SROVR-SG tax codes are reported in the following boxes of the GST F5 return:

Box Number Label/Description Reported Tax Codes

1 Total value of standard-rated supplies Net amount SROVR-SG, SRRC-SG

5 Total value of taxable purchases Net amount purchase SRRC-SG

6 Output tax due Tax amount SROVR-SG, notional tax amount SRRC-
SG

7 Input tax and refunds claimed Notional tax amount SRRC-SG

■ Box 14: Did you import services subject to GST under Reverse Charge?
■ Box 15: Did you operate an electronic marketplace to supply digital services subject to GST on behalf
of third-party suppliers?

To learn more, see the help topic Singapore GST Report.

Germany VAT Return Update

International Tax Reports version 3.112.0 includes updates to enhance the XML version of the Germany
Monthly/Quarterly and Annual VAT returns.

The update for the XML version is necessary to align it with the new FormularDepotXI version 15, which
enables you to continue submitting your VAT returns online.

To learn more, see the help topic Submission of VAT Returns in Germany.

Belgium VAT Return Enhancement

International Tax Reports version 3.114.0 includes enhancements for the latest VAT return for Belgium.

The update includes automatic provisioning of tax code and tax reporting of the purchase of direct cost
service items (for example, software license products). The new tax code EDCSP-BE has the following
properties:

■ Description: Tax code for purchase of direct cost service items within EC
■ Rate: 0%
■ EC Code
■ Reverse Charge Code
■ Notional rate derived from S-BE (21%)
■ Applies to direct cost service items
■ Available on Purchases

ReleaseNotes_2020.1.0.pdf — Subject to Change


SuiteApps (Bundles) Released by NetSuite 178

EDCSP-BE tax code will be reported in the following boxes of Belgium VAT return:

Box / Description Reporting of EDCSP-BE

81 Goods and raw materials and components Net amount of purchase EDCSP

88 Services purchased from EU member countries Net amount of purchase EDCSP

55 VAT due on Intra-Community acquisition and services Notional tax amount of purchases EDCSP

59 Deductible VAT Notional tax amount of purchase EDCSP

To learn more, see the help topics Belgium Tax Codes and What goes into each box - Belgium VAT report.

Slovenia VAT Return Update

International Tax Reports version 3.114.0 includes support for Slovenia’s super reduced tax rate of 5%.

Provisioning of Super Reduced Tax Code

The update includes automatic provisioning of super reduced rate tax codes for newly-created Slovenia
subsidiaries or nexuses with the following properties:

Tax Code Description EC Code Rate Notional Rate Available On

SR-SI Super reduced rate — 5% — Available on both Sales


and Purchases

ESR-SI EC sales/purchases to another EC Enabled 0% SR-SI (5%) Available on both Sales


country (goods) - super reduced and Purchases
rate

ESSP3-SI EC Purchases (services) - super Enabled 0% SR-SI (5%) Available on both Sales
reduced rate and Purchases

Applies to Service Items

The update will also reflect the correct reporting of the Slovenia tax codes:

Box / Description Reporting of SR-SI, ESR-SI, and ESSP3-SI

22a VAT charged at a rate of 5% Tax amount of sales SR-SI

24b From acquisition of goods from other EU Member States at a Notional tax amount of purchases ESR-SI
rate of 5%

24c For services received from other EU Member States at a rate of Notional tax amount of purchases ESSP3-SI
5%

25b On the grounds of self-assessment as recipients of goods and Editable field for user manual input of
services at a rate of 5% reporting of Box 25b

To learn more, see the help topics Slovenia Tax Codes and What goes into each box - Slovenia VAT Report.

ReleaseNotes_2020.1.0.pdf — Subject to Change

You might also like