NetSuite Onboarding Part 2: Authenticate NetSuite with ServiceTitan

Prev Next

Overview

The next step in integrating your NetSuite account with your ServiceTitan account is to authenticate your NetSuite account in ServiceTitan and then verify the configuration in your ServiceTitan account.


Who uses this feature

  • Administrators, office employees, managers, accountants, and bookkeepers

  • Applies to all business types

Feature configuration

  • This feature is currently in Private Preview and available for specific accounts. It is subject to change. If you want to enable this feature for your account, join the waitlist here.

Before you get started

The ServiceTitan SuiteApp enables secure syncing between ServiceTitan and NetSuite. Like all NetSuite SuiteApps, the ServiceTitan SuiteApp requires that certain NetSuite features be enabled to support integration and data sync.

  1. Enable features in NetSuite.

  2. Enable Accounting Features/Preferences in NetSuite

  3. Install ServiceTitan SuiteApp

  4. Enable the ServiceTitan SuiteGL plugin

  5. Select the Default Income & Expense Accounts

  6. Configure required manual setup items

Step 1: Enable features in NetSuite

To enable the required features, go to the NetSuite main menu:

  1. Enable the SuiteCloud features by going to Setup > Company > Enable Features > SuiteCloud tab.

  2. Make sure the following options are selected:        

    1. Server SuiteScript

    2. Custom Records

    3. Custom GL Lines

  3. Enable the transaction features by going to Setup > Company > Enable Features > Transactions tab

  4. Make sure the Advanced Receiving option is selected.

  5. Enable the accounting features by going to Setup > Company > Enable Features > Accounting tab.

  6. Make sure the following options are selected:        

    1. A/R (Accounts Receivable)

    2. A/P (Accounts Payable)

  7. Enable customer naming convention by going to Setup > Company > Auto-Generated Numbers > Entities.

  8. Make sure the Customer option is selected under Enable.

  9. Click Save.

Step 2: Enable Accounting Features

To enable the required features, go to the NetSuite main menu:

  1. Enable the Accounting features by going to Setup > Accounting > Accounting Preferences > General Ledger Section.

  2. Make sure the following options are selected:        

    1. Use Account Numbers

    2. Expand Account Lists

  3. Enable the Accounting features by going to Setup > Accounting > Accounting Preferences > Classifications Section.

  4. Make sure the following options are selected:        

    1. Allow Per-Line Departments

    2. Allow Per-Line Classes

Step 3: Install the ServiceTitan SuiteApp in NetSuite

To begin the integration, install the ServiceTitan Integration SuiteApp from the NetSuite SuiteApps Marketplace. This SuiteApp enables a secure connection between ServiceTitan and NetSuite and provides all the tools needed for data sync and configuration.

What you'll need

To install the ServiceTitan SuiteApp, make sure you have the following:

  • NetSuite Administrator role

  • Access to the SuiteApps tab in NetSuite

  • Confirmation that your NetSuite account is eligible for SuiteApp installation

  • The correct NetSuite environment (sandbox or production)

Install the SuiteApp

  1. Log in to NetSuite with an administrator role.

  2. From the main navigation menu, go to the SuiteApps tab.

  3. Use the search bar to find ServiceTitan.

  4. Locate the ServiceTitan Integration SuiteApp, and click Install.

  5. Review the installation manifest to confirm:        

    1. Your account is eligible for installation

    2. The SuiteApp supports your current environment

  6. Follow the on-screen instructions to complete the installation.

After installation, the SuiteApp will be available in your NetSuite account and includes:

  • A tenant configuration record

  • Mapping interfaces for vendors, customers, GL accounts, and business units

  • Access to sync error logs and audit dashboards

Step 4: Enable SuiteGL plugin

To make sure proper GL impact for inventory-related transactions, the ServiceTitan SuiteApp requires the ServiceTitan Inventory GL Impact SuiteGL plugin to be enabled in your NetSuite account.

To enable the SuiteGL plugin in NetSuite:

  1. Go to Customization > Plug-ins > Manage Plug-ins.

  2. Locate ServiceTitan Inventory GL Impact in the list.

  3. Select the box to enable the plugin.

  4. Click Save to confirm the configuration.

  5. Go to Customization > Plug-ins > Plug-In Implementations.

  6. Look for the ServiceTitan Inventory GL Impact in the list and click View.

  7. In the next screen, click Configure.

  8. At the bottom of the next screen, select the Credit Memo and Invoice transaction types.

  9. Select All under the Subsidiaries option.

  10. Click Save.

This plugin enables custom GL line creation for inventory adjustments and ensures accurate financial posting without requiring quantity-level inventory sync.

Step 5: Set Default Income/Expense accounts

Before the first sync, make sure NetSuite has a Default Income Account set and valid Income and Expense accounts available for any resale items. Otherwise account item creation will fail.

To do this:

  1. Go to Setup > Accounting > Accounting Preferences > Items/Transactions subtab.

  2. Confirm Default Income Account is selected.

  3. For resale items, confirm each item has an Income and an Expense account on its Accounting/Account Information subtab or ensure a process populates them.

  4. Re-run the sync after accounts are set.

Step 6: Configure required manual setup items

In addition to enabling NetSuite features, certain data elements must be manually created and aligned between both systems to ensure proper synchronization.

Standardize tenant sync record sublists

To ensure consistency across all tenant sync sublists, we recommend customizing the form layout for the following record types:

  • Transaction

  • Customer

  • Vendor

  • Job

  • GL Account

This standardizes the columns shown in each sublist at the bottom of the Tenant screen. Apply the following settings to each sublist:

  • Show Creation Date: Deselect or clear this option for both on record and list view

  • Show Last Modified: Deselect or clear this option for both on record and list view

  • Sync Error: Set Show in List to Yes

This ensures all sublists display the Sync Error column for troubleshooting while reducing clutter from inconsistent metadata fields.

Manually set up payment terms and methods in NetSuite

Payment terms and payment methods used in ServiceTitan must be manually created and maintained in NetSuite with exact name matches. The SuiteApp does not create or sync these records, but it will include them on transactions if they exist in both systems.

To ensure successful syncing, add and manage these records in NetSuite under Setup > Accounting > Accounting Lists, and keep them aligned with what's used in ServiceTitan.

Manually align warehouses and locations between ServiceTitan and NetSuite

If location mapping is enabled to link ServiceTitan warehouses to NetSuite locations, the records must be manually created and kept aligned in both systems. These lists are not automatically synced.

  • In NetSuite, manage locations under Setup > Company > Locations.

  • In ServiceTitan, manage warehouses under Settings > Inventory > Inventory Locations.

To avoid sync errors or incorrect inventory postings, ensure the names match exactly and all relevant records exist in both systems.

Understand the integration architecture

Before configuring the integration, it's important to understand how the ServiceTitan SuiteApp creates and manages the connection between your NetSuite and ServiceTitan systems.

ServiceTitan SuiteApp record structure

As part of the sync process, the SuiteApp creates custom ServiceTitan sync records in NetSuite to track the alignment of supported transactions and journal entries between the two systems. For each record type (for example, purchase order, invoice, customer payment, job) and entity (for example, customer, vendor), the SuiteApp generates a corresponding sync record to store sync status, related metadata, and links between ServiceTitan and NetSuite records.

These records are searchable and can be used to troubleshoot sync errors and monitor sync activity.

Each sync record includes:

  • ServiceTitan record ID and type

  • NetSuite record ID

  • Sync transaction ID, unique identifier for the sync event

  • Originating ServiceTitan tenant

  • Sync status, for example, Pending, Processing, Complete, Failed

  • Sync errors, if applicable

  • Timestamps for sync activity

  • Optional metadata, such as batch ID and segment stamping, for example, department, class, location, when supported by the ServiceTitan API

You can use sync records to:

  • Confirm whether a record synced successfully

  • Navigate between linked ServiceTitan and NetSuite records

  • Diagnose and resolve sync errors

  • Audit transaction history across systems

This sync architecture provides traceability, transparency, and control to support accurate and reliable integration between ServiceTitan and NetSuite.

Key SuiteApp components

The ServiceTitan SuiteApp includes several key interface components that you'll use to manage authentication, configuration, and monitoring of your integration.

These components include:

  • The tenant dashboard

  • The tenant settings manager

Manage connection from the ServiceTitan dashboard in NetSuite

The ServiceTitan dashboard is the central hub for managing the connection to each ServiceTitan tenant. From this screen, you can authenticate tenants, view sync settings, and manually trigger syncs.

To access the dashboard in NetSuite, go to ServiceTitan > Integration > ServiceTitan Dashboard

Use the dashboard to:

  • Authenticate and connect a ServiceTitan tenant to your NetSuite environment

  • View and manage tenant-specific configuration options

  • Manually initiate syncs for vendors, customers, and transactions

  • Monitor the status and results of recent sync operations

This dashboard ensures each tenant is properly linked and gives you direct control over when and how sync operations are performed.

Configure tenant-specific settings in NetSuite

The tenant settings manager is the central configuration screen for each connected ServiceTitan tenant. The SuiteApp supports unique settings per tenant, giving you control over sync behavior, financial mappings, and integration preferences.

To access the tenant settings manager, go to ServiceTitan > Integration > ServiceTitan Dashboard in NetSuite, then click the tenant you want to configure.

From the tenant settings manager, you can:

  • Access business unit mapping for the tenant

  • Configure GL account mapping for the tenant

  • Launch and manage vendor sync

  • Update or change ServiceTitan authentication credentials

  • View, enable, or modify key configuration options, such as sync types, tax item handling, and custom field preferences

  • View sync errors and review sync history for the tenant

This screen ensures each tenant is set up correctly and provides centralized access to key integration settings.

For more information on available options and how they impact sync behavior, see the NetSuite Onboarding Part 4: Configure sync settings.

Sync processing overview

When a sync begins, whether triggered manually or by an automated schedule, the status changes to Pending on the tenant dashboard.

To monitor an active sync:

  • Locate the tenant row with the Processing status

  • Click the Processing link to open the sync processor view

The sync processor screen shows detailed information about the current integration run, including:

  • Which sync processes are actively running (for example, invoices, payments, vendor bills)

  • The number of records being processed for each transaction type

  • The current status of each record type: Pending, Processing, or Complete

Use the Refresh button in the top-right corner to update the screen and view the latest progress for all sync processors.

Want to learn more?