Skip to main content

Admin: Configure NetSuite for ExtendInsights Financial Reporting Engine (XAVI)

ExtendInsights FRE | Configure NetSuite user permissions

This guide walks NetSuite administrators through the additional configuration required to use ExtendInsights Financial Reporting Engine (XAVI).

Unlike ExtendInsights Data Management and Analytics, Financial Reporting Engine queries NetSuite's General Ledger directly. As a result, it requires additional NetSuite features, accounting preferences, and role permissions before users can build financial reports in Excel.


Who Should Complete This Guide?

NetSuite Administrator

You must have permission to modify NetSuite features, accounting preferences, and user roles.


Before You Begin

Before completing this guide, ensure that:

  • The ExtendInsights Excel add-in has been installed.

  • The CloudExtend NetSuite bundle has been installed.

  • Standard ExtendInsights NetSuite prerequisites have already been completed.

  • Users have been assigned a Financial Reporting Engine license.

If you have not completed the standard deployment, see:


Step 1: Enable SuiteAnalytics Workbook

  1. Navigate to Setup → Company → Enable Features and then choose the Analytics subtab.

  2. If the SuiteAnalytics Workbook is not enabled, check the box to enable it and click Save.

Step 2: Accounting Preferences

Navigate to Setup > Accounting > Accounting Preferences

Verify that:

  • Use Account Numbers is enabled.

This setting allows XAVI formulas to correctly resolve account references in financial reports.

Step 3: Configure Required Role Permissions

Open each NetSuite role that Financial Reporting Engine users will sign in with.

Navigate to:

Setup → Users/Roles → Manage Roles

⚠️ Important: For any transaction type that posts to the General Ledger in your account, the role must have at least View access. If a posting transaction type exists in your account but is missing from the role, NetSuite will silently omit those transactions from query results — your reports will show understated figures with no error or warning. This is NetSuite behavior, not a XAVI bug.

Setup Tab

These permissions cover authentication, API access, and configuration data required for XAVI formulas to connect to and query NetSuite.

Permission

Access Level

Purpose

User Access Tokens

Full

Allows the authenticated user to create and manage their own personal NetSuite access tokens required for login. Applies only to the individual user's own tokens — does not grant access to other users' tokens.

Log in using Access Tokens

Full

Required for authenticating to NetSuite via Token-Based Authentication.

Log in using OAuth 2.0 Access Tokens

Full

Required for authenticating to NetSuite via OAuth 2.0.

REST Web Services

Full

Required for all XAVI data queries to NetSuite.

SOAP Web Services

Full

Required for budget data retrieval.

Manage Accounting Periods

View

Allows XAVI to resolve accounting periods. Without this, XAVI formulas return a "period not found" error even when the period exists in your account.

Accounting Book

View

Required only if the Adjustment Only Books feature is enabled in your account, for multi-book functionality.

Accounting Lists

View

Required for reading budget category data.

Custom Fields

View

Required for XAVI to recognize custom fields in your account.

Custom Segments

View

Required only if the Custom Segments feature is enabled in your account (this feature is coming soon)

Records Catalog

View

Required for retrieving table metadata used in query construction

Lists Tab

These permissions provide access to core record data required by XAVI formulas.

Permission

Access Level

Purpose

Accounts

View

Required for accessing GL account records and resolving account names.

Classes

View

Required for class segment filtering in financial reports.

Company Feature Setup

View

Allows XAVI to check which NetSuite features are enabled so queries can adapt to your account's data structure. This does not grant access to the Enable Features page or the ability to change feature settings.

Contacts

View

Required for entity segment functionality.

Currency

View

Allows XAVI to resolve currency symbols and names for multi-currency reports.

Customers

View

Required for entity segment functionality.

Departments

View

Required for department segment filtering in financial reports.

Fiscal Calendars

View

Required for accounts using multiple fiscal calendars.

Items

View

Required for item segment functionality.

Locations

View

Required for location segment filtering in financial reports.

Perform Search

Full

Required for entity table access, working in conjunction with the Contacts, Customers, Employees, Projects, and Vendors permissions.

Projects

View

Required for project segment functionality.

Subsidiaries

View

Allows XAVI to resolve subsidiary names and structure for multi-subsidiary reports and consolidations. Without this, subsidiary-level queries will not return correct results.

Vendors

View

Required for entity segment functionality.

Reports Tab

Permission

Access Level

Purpose

SuiteAnalytics Workbook

Edit (minimum)

Required for XAVI to execute queries and retrieve data from NetSuite.

General Ledger

View (minimum)

Required for XAVI to access General Ledger data.

Step 4: Configure Transactions Permissions

These permissions govern access to all GL-posting activity. Not every transaction type listed below will exist in every NetSuite account — if a type is not enabled in your account, you can skip it.

💡 Why XAVI needs transaction-level access

XAVI formulas query transaction-level detail directly from the NetSuite General Ledger to deliver penny-perfect accuracy and the ability to drill down to originating transactions. This is what allows a controller to trace a balance sheet figure all the way back to the individual journal entry, invoice, or payment that created it, all without leaving Excel.


This level of access is not required for high-level reporting tools that rely on pre-aggregated NetSuite report data. XAVI formulas are different: they read the underlying transactions, they can reflect real-time balances, support multi-subsidiary consolidation, and enable full audit traceability, all capabilities that depend on granular read access to the GL.

Transaction Permissions for XAVI Formulas

  • Financial Reporting Engine reads transaction-level data directly from the NetSuite General Ledger.

  • For every transaction type that posts to the General Ledger in your NetSuite account, grant at least View access.

Recommended approach

  • Rather than configuring every transaction permission manually, create a customized copy of NetSuite's built-in Accountant role.

  • The Accountant role already includes View access to most standard General Ledger transaction types.

  • After creating the custom role, add the additional XAVI permissions described in this guide before assigning the role to users.

See the full transaction permission tables in the section below.

  1. Go to Setup → Users/Roles → Manage Roles.

  2. Find the Accountant role and click Customize to create a copy.

  3. Add the XAVI-specific permissions listed above (TBA, REST/SOAP Web Services, Manage Accounting Periods, Currencies, Subsidiaries, Find Transaction, SuiteAnalytics Workbook, General Ledger).

  4. Save the customized role and assign it to your XAVI users.

If you prefer to configure permissions manually or need to verify coverage against a custom role, use the tables below. Grant View for each type that posts to the GL in your account. You can skip the types your organization does not use.

⚠️ If a transaction type is missing from the role's permissions, NetSuite will silently exclude those transactions from query results — reports will show understated figures with no error or warning. This is a NetSuite behavior, not a XAVI bug.

General Ledger, Cash, and Journals

Permission

NetSuite Feature

Access Level

Purpose

Make Journal Entry

Accounting

View

Captures journal entry postings in GL queries

System Journal

Accounting

View

Captures system-generated journal postings in GL queries

Balancing Journal

Balancing Journals

View

Captures balancing journal postings in GL queries

Cross Charge Journal

Intercompany Framework

View

Captures cross-charge journal postings in GL queries

Netting Settlement

Intercompany Framework

View

Captures netting settlement postings in GL queries

Currency Revaluation

Multiple Currencies

View

Captures revaluation postings in GL queries

Check

Accounting

View

Captures check postings in GL queries

Deposit

A/R

View

Captures deposit postings in GL queries

Deposit Application

A/R

View

Captures deposit application postings in GL queries

Transfer Funds

View

Captures fund transfer postings in GL queries

Credit Card

View

Captures credit card postings in GL queries

Credit Card Refund

View

Captures credit card refund postings in GL queries

Enter Opening Balances

View

Captures opening balance postings in GL queries

Pay Sales Tax

View

Captures sales tax payment postings in GL queries

Tax Liability Payment

SuiteTax

View

Captures tax liability payment postings in GL queries

Find Transaction

Full

Required for XAVI to query any transaction data from NetSuite. Without this, all XAVI formulas return a "record not found" error.

Set Up Budgets

Accounting

View

Allows XAVI to read budget data for Budget vs. Actual reports.

Accounts Receivable and Revenue

Permission

NetSuite Feature

Access Level

Purpose

Invoice

A/R

View

Captures invoice postings in GL queries

Credit Memo

A/R

View

Captures credit memo postings in GL queries

Cash Sale

View

Captures cash sale postings in GL queries

Cash Sale Refund

View

Captures cash sale refund postings in GL queries

Customer Payment

A/R

View

Captures customer payment postings in GL queries

Customer Deposit

A/R

View

Captures customer deposit postings in GL queries

Customer Refund

A/R

View

Captures customer refund postings in GL queries

Return Authorization

Return Authorizations

View

Captures return authorization activity in GL queries

Statement Charge

A/R

View

Captures statement charge postings in GL queries

Employee Commission Transaction

Employee Commissions

View

Captures commission postings in GL queries

Partner Commission Transaction

Employee Commissions

View

Captures partner commission postings in GL queries

Accounts Payable and Expenses

Permission

NetSuite Feature

Access Level

Purpose

Bills

A/P

View

Captures vendor bill postings in GL queries

Enter Vendor Credits

A/P

View

Captures vendor credit postings in GL queries

Pay Bills

A/P

View

Captures bill payment postings in GL queries

Expense Report

Expense Reports

View

Captures expense report postings in GL queries

Vendor Prepayment

Vendor Prepayments

View

Captures vendor prepayment postings in GL queries

Vendor Prepayment Application

Vendor Prepayments

View

Captures vendor prepayment application postings in GL queries

Inventory and Manufacturing (if enabled in NetSuite)

Permission

NetSuite Feature

Access Level

Purpose

Adjust Inventory

Inventory

View

Captures inventory adjustment postings in GL queries

Adjust Inventory Worksheet

Inventory

View

Captures inventory worksheet postings in GL queries

Inventory Status Change

Standard Costing

View

Captures inventory status change postings in GL queries

Revalue Inventory Cost

Standard Costing

View

Captures inventory cost revaluation postings in GL queries

Transfer Inventory

Multi-Location Inventory

View

Captures inventory transfer postings in GL queries

Item Receipt

Advanced Receiving

View

Captures item receipt postings in GL queries

Item Fulfillment

Advanced Shipping

View

Captures fulfillment postings in GL queries

Build Assemblies

Assembly Items

View

Captures assembly build postings in GL queries

Unbuild Assemblies

Assembly Items

View

Captures assembly unbuild postings in GL queries

Bin Transfer

Bin Management

View

Captures bin transfer postings in GL queries

Bin Putaway Worksheet

Bin Management

View

Captures bin putaway postings in GL queries

Wave

Warehouse Management

View

Captures warehouse wave postings in GL queries

Work Order Issue

Manufacturing Work In Process

View

Captures work order issue postings in GL queries

Work Order Completion

Manufacturing Work In Process

View

Captures work order completion postings in GL queries

Work Order Close

Manufacturing Work In Process

View

Captures work order close postings in GL queries

Payroll (if payroll posts to your GL)

Permission

NetSuite Feature

Access Level

Purpose

Paycheck / Payroll Journals

Payroll

View

Captures payroll journal postings in GL queries

Revenue Recognition and Advanced (if enabled in NetSuite)

Permission

NetSuite Feature

Access Level

Purpose

Revenue Recognition Postings

Revenue Recognition

View

Captures revenue recognition postings in GL queries

Amortization / Allocation Journals

Amortization

View

Captures amortization and allocation journal postings in GL queries

Custom Transaction Types

If your account includes custom transaction types that post to the GL, add View access for each one. Custom transaction types are managed under Setup → Custom Transaction Types.


✅ Verification

Configuration is complete when:

  • SuiteAnalytics Workbook is enabled.

  • Use Account Numbers is enabled.

  • Users have a role containing the required Setup, Lists, Reports, and Transaction permissions.

  • Users can successfully sign in to ExtendInsights Financial Reporting Engine.

  • XAVI formulas return financial data without permission errors.


💡 Best Practices

  • Create a dedicated NetSuite role for Financial Reporting Engine users.

  • Start with a customized Accountant role whenever possible.

  • Review role permissions whenever new transaction types or NetSuite features are enabled.

  • Assign View access to every transaction type that posts to your General Ledger to ensure complete financial reporting.

Did this answer your question?