Overview
The Journal Entry Accounts Receivable and document-based Accounts Payable configuration syncs both revenue-side and expense-side activity from ServiceTitan to NetSuite using a combination of journal entries and native NetSuite documents.
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.
Things to know
This option is ideal for teams that:
Handle invoicing, payments, and refunds operationally in ServiceTitan
Maintain financial records and reporting within NetSuite
Includes all functionality from the Journal Entry Accounts Receivable configuration
Adds document-level syncing for Accounts Payable and operational records such as jobs and inventory adjustments
Summary vs detailed journal entries
You can configure each tenant to use either summary or detailed journal entries:
Summary journal entries: Consolidated by GL account and Business Unit. Each GL account appears as a single line per BU.
Detailed journal entries: Line-level detail is preserved. Each journal line shows individual components of a transaction, including:
Customer name for traceability
Amount and account detail
Dimension/segment, or department/class/location in ServiceTitan, stamping, if mapped
Customer creation in detailed mode
When detailed journal entry sync is enabled instead of summary mode, customer records are automatically created or synced in NetSuite based on ServiceTitan transaction activity. Because each transaction line retains customer-level detail, the referenced customer must exist in NetSuite to ensure accurate GL impact and reporting.
As a result, customer sync runs automatically as part of the detailed journal entry sync process. Customers are created or matched in NetSuite following the customer sync logic described above, including the use of the Legacy ID field, subsidiary verification, and Customer Sync Record creation.
What syncs in this configuration
The Journal Entry Accounts Receivable and Accounts Payable configuration syncs both revenue-side and expense-side activity between ServiceTitan and NetSuite. Revenue-related activity is synced as journal entries, while expense-side activity is generally synced as native NetSuite documents.
Accounts Receivable transactions
ServiceTitan transaction | NetSuite sync behavior |
|---|---|
Customer invoices | Sync as journal entries to record accounts receivable and revenue impact. |
Customer payments | Sync as journal entries to reduce AR and increase cash or undeposited funds. |
Customer refunds | Sync as AR journal entries to reflect refund activity. |
Adjustment/negative invoices | Sync as journal entries to record adjustments such as write-offs or corrections. |
Payment applications | Reflected in journal entries that apply payments against AR balances.
|
Bank deposits | Sync as journal entries that move funds from undeposited funds to the appropriate bank account. |
Accounts Payable transactions
ServiceTitan transaction | NetSuite sync behavior |
|---|---|
Purchase orders (Optional) | A purchase order created in ServiceTitan syncs as a native Purchase Order in NetSuite. POs in ServiceTitan are only created upon partial or full receipt, so they cannot sync to NetSuite before that point. Vendor Bills may also sync without POs if the corresponding setting is enabled. |
Item receipts | When items are received in ServiceTitan, they sync as Item Receipts in NetSuite. |
Vendor bills | Vendor Bills created in ServiceTitan sync to NetSuite, linked to their corresponding Item Receipts and Purchase Orders (if POs are synced). |
Standalone Vendor Bills | When the Accounts Payable Sync option is configured to enable the sync of Vendor Bills and Returns only, Vendor Bills created in ServiceTitan can sync to NetSuite without the associated POs and Receipts. |
Vendor returns | When vendor returns are recorded in ServiceTitan, they sync to NetSuite as Vendor Credits (Bill Credits).
|
Additional operational data
ServiceTitan transaction | NetSuite sync behavior |
|---|---|
Jobs | Jobs sync to NetSuite as projects during the next integration run. The sync creates the project and linked customer, even without related transactions. Later transactions, such as invoices, automatically link to the existing project. The SuiteApp syncs only those jobs with Scheduled, Dispatched, InProgress, or Hold statuses. The sync excludes jobs with Completed or Canceled statuses. |
Inventory adjustments | Synced as journal entries, reflecting the financial impact of the adjustment, for example, shrinkage, damage, corrections. |
Sync process overview
The sync process for this configuration uses a combination of journal entry sync and transaction batching sync, depending on the record type and how your ServiceTitan environment is set up. Your organization's auto-batching and auto-sync settings determine how records are prepared for export to NetSuite and whether the sync occurs manually or automatically.
There are two separate sync workflows associated with this configuration:
Journal entry sync workflow: AR transactions created as journal entries
Document sync workflow: AP transactions created as transactions in NetSuite
Journal entry sync workflow
Before enabling journal entry sync, complete the following configuration steps to ensure proper alignment between ServiceTitan and NetSuite:
Step 1: Business Unit to Subsidiary mapping
Map each ServiceTitan Business Unit (BU) to its corresponding NetSuite Subsidiary. This ensures that financial transactions post to the correct legal entity in NetSuite.
Step 2: GL Account sync and mapping
Mark all GL accounts used in journal entries as Available to ServiceTitan in NetSuite and map them to their corresponding ServiceTitan accounts. This prevents sync errors and ensures proper account posting.
Step 3: Optional segment mapping
Optionally, map Business Units to NetSuite Department, Class, and Location segments to support segmented financial reporting.
Step 4: Manually sync journal entries
Journal entries in ServiceTitan are prepared based on your organization's configuration rules. These rules define when transactions are added to journal entries and how they are grouped or combined. The grouping can vary depending on your batching method (manual, semi-automated, or automated) and operational preferences.
To manually sync journal entries from ServiceTitan to NetSuite:
In ServiceTitan, go to the navigation bar, and click Accounting > Journal Entries.
Select one or more journal entries you want to sync.
From the Actions menu, choose Start Syncing. The selected entries are updated to a Pending sync status.
Sync the journal entries to NetSuite by either:
Manually triggering the sync in the NetSuite SuiteApp, or
Allowing the automated/scheduled sync process to run, if Auto-sync Journals is enabled in the SuiteApp configuration.
Document sync workflow
The AP document sync in ServiceTitan creates corresponding native NetSuite transactions, including Purchase Orders, Item Receipts, Vendor Bills, and Vendor Returns. In Release 1, Inventory Transfers are supported only via journal entry sync.
ServiceTitan uses a batching workflow to group transactions, post batches, and trigger the sync to NetSuite through the SuiteApp.
Batches can be created automatically based on your organization's configuration rules or manually as needed.
Access batching in ServiceTitan by navigating to Accounting > Batch / Export Transactions.
Sync type | Trigger in ServiceTitan | NetSuite result | Key notes |
|---|---|---|---|
Purchase order sync | PO created and items received, Item Receipt posted | Creates Purchase Order in NetSuite | POs do not sync until an Item Receipt is synced. Optional at tenant level |
Item receipt sync | Items received against PO and Item Receipt created | Creates Item Receipt and Purchase Order in NetSuite, if PO does not exist | Requires PO marked as sent. Add to batch then post and sync. |
Vendor bill sync | Vendor Bill created after Item Receipt, auto or manual | Creates Vendor Bill in NetSuite, linked to PO and Item Receipt | Bills can sync in the same batch as Item Receipts or separately. PO sync must be enabled |
Vendor return sync | Vendor Return marked as Returned and Credit Received | Creates Vendor Credit/Bill Credit in NetSuite | Must include Vendor, BU, and items. Optional PO link. Bill Credit and Vendor Credit are the same in NetSuite |
Inventory adjustments | Adjustment created in Inventory > Manage Adjustments | Creates journal entry in NetSuite | Reflects financial impact only. Does not adjust quantities in NetSuite |
Inventory transfers | Transfer created in ServiceTitan | Creates journal entry in NetSuite | Supported as financial entries only in Release 1. No impact on stock quantities. |
Manually sync transactions
In ServiceTitan, go to Accounting > Batch / Export Transactions > Create Batch.
Add the transactions you want to the batch.
From the batch dropdown menu, select Post Batch.
In NetSuite, open the SuiteApp and start the sync for the tenant.
This workflow provides flexibility to control when and how transactions flow from ServiceTitan to NetSuite.
Purchase order sync
When the optional Purchase Order (PO) sync is enabled, POs created in ServiceTitan will generate Purchase Orders in NetSuite but only after items have been received. POs do not sync on their own.
PO sync is optional and configured at the tenant level.
A PO created in ServiceTitan triggers a corresponding PO in NetSuite only when an Item Receipt is created and synced.
The synced Item Receipt drives the creation of the NetSuite PO as part of the overall transaction chain.
This ensures that only actionable, fulfilled POs are pushed into NetSuite, keeping both systems aligned.
Rollover purchase orders
When you partially receive a purchase order (PO) in ServiceTitan, you have the option to roll over the remaining, unreceived quantities to a new PO.
For more, see Rollover purchase orders in ServiceTitan.
Item receipt sync
Item receipts are created in ServiceTitan when items are received against a PO. These receipts drive the creation of both the item receipt and the related purchase order in NetSuite.
In ServiceTitan, the PO must be marked as sent, and items must be received before an Item Receipt can be created.
To sync an item receipt:
Create the item receipt in ServiceTitan.
Add it to a batch in Accounting > Batch / Export Transactions.
Post the batch.
Run the sync in the NetSuite SuiteApp for the tenant.
This will create both the item receipt and the corresponding purchase order in NetSuite if they do not already exist.
Note: PO sync is optional and must be enabled.
This ensures NetSuite only receives POs and item receipts that reflect actual fulfillment activity.
Vendor bill sync
Vendor Bills are created in ServiceTitan after an Item Receipt is recorded and sync to NetSuite as native Vendor Bill records.
Vendor Bills can be created in ServiceTitan automatically (based on configuration) or manually after an Item Receipt exists.
Automatically created bills can be included in the same batch as the Item Receipt or synced later in a separate batch.
To sync a Vendor Bill manually:
Add the bill to a batch.
Post the batch.
Run the sync in the NetSuite SuiteApp.
The synced bill appears in NetSuite as a Vendor Bill, tied to the corresponding PO and Item Receipt.
Note: PO sync is optional and must be enabled.
Vendor return sync
Vendor Returns in ServiceTitan create Vendor Credits/Bill Credits in NetSuite, reversing the impact of previously synced Vendor Bills.
Vendor Returns are created in Inventory > Returns.
A Vendor Return must include:
Vendor
Business unit
Items to be returned with optional link to a PO
Once a return is marked as Returned and Credit Received in ServiceTitan, it becomes eligible for sync.
To sync a Vendor Return:
Open Accounting > Batch / Export Transactions.
Add the return to a batch and post it.
Run the sync in the NetSuite SuiteApp.
The synced return creates a Vendor Credit/Bill Credit in NetSuite, reflecting the reversal of the associated Vendor Bill.
Note: In NetSuite, Vendor Credit and Bill Credit are the same transaction type.
Inventory adjustments
In the initial release, the ServiceTitan SuiteApp supports only the financial impact of inventory adjustments and transfers—not actual stock or quantity-level changes in NetSuite.
Inventory Adjustments in ServiceTitan (Inventory > Manage Adjustments) sync to NetSuite as journal entries.
These journal entries reflect financial/accounting impact only and do not adjust inventory quantities in NetSuite.
To sync an inventory adjustment:
Create the adjustment in ServiceTitan.
Go to Accounting > Financials > Journal Entry.
Add the adjustment to a batch, post the batch, and sync to NetSuite.
The resulting journal entry in NetSuite will include the adjustment details and segmentation (for example, Class, Department, Location) based on your tenant's journal sync configuration.
Note: In Release 1, Inventory Transfers are also supported only as journal entries, with no impact on NetSuite stock quantities.
Rollover purchase orders in ServiceTitan
This feature closes the original PO and creates a new one, allowing you to continue receiving remaining items without manually editing the original record.
Using the Rollover feature helps maintain clean purchasing records and ensures data stays in sync with NetSuite.
When to use Rollover
Use the Rollover action if:
You've partially received a PO
You do not plan to receive the remaining items on the original PO
You want to track the unreceived items on a separate PO
Rollover is helpful when dealing with long-lead items, canceled backorders, or staggered fulfillment.
How it works with NetSuite
When you roll over a PO, ServiceTitan:
Closes the original PO based on what's been received
Creates a new PO for the remaining quantity
When synced to NetSuite:
The original PO is updated to reflect only the received quantities and is marked closed
A new PO is created for the remaining items
NetSuite generates a new item receipt and vendor bill for the rolled-over PO
Example
You create a PO for 10 filters.
You receive 4 filters without selecting Rollover.
The original PO remains open in ServiceTitan and NetSuite.
Later, you receive 2 more filters and select Rollover.
The original PO is updated to show 6 filters received and is marked closed.
A new PO is created for the remaining 4 filters.