Integration Overview & Prerequisites
This integration connects your ServiceTitan and ArcSite accounts, allowing for a seamless flow of project information that eliminates double-entry and keeps your job details automatically in sync.
How the Integration Works
At a high level, the integration follows a simple, three-step workflow:
Dispatch from ServiceTitan: When a job is dispatched to a technician in ServiceTitan, a corresponding project is automatically created in that technician's ArcSite account.
Complete Work in ArcSite: The technician opens the project in ArcSite, completes their takeoff or estimate, and finalizes the proposal document.
Sync Back to ServiceTitan: Once the proposal is generated in ArcSite, the drawing PDF is automatically pushed to the 'Photos/Attachments' section of the ServiceTitan job. Proposals can be pushed manually from the User Site or mobile app, or automatically upon customer signature or eSign completion..
Prerequisites
Before you begin the setup process, please ensure you have the following:
An active, Enterprise-level ArcSite account.
Administrator-level access to both your ArcSite and ServiceTitan accounts.
Your ServiceTitan Tenant ID and Client ID. (This guide will show you how to find these if you don't have them).
Step-by-Step Setup Guide
This guide provides the detailed instructions for connecting your ServiceTitan and ArcSite accounts. The process involves authorizing the connection, retrieving your credentials from ServiceTitan, and connecting them within ArcSite.
Part A: Authorize the Connection (Webhook Setup)
Before you can connect the apps, you must first email the ServiceTitan API team to have them enable a webhook for your account. This is a one-time setup step that allows ServiceTitan to automatically send job information to ArcSite.
Step 1: Send an Email to the ServiceTitan API Team
Draft an email to integrations@servicetitan.com requesting a webhook setup. You must include the following information in your email:
Tenant ID:
[Your Tenant ID]Webhook Event Type:
JobScheduledWebhook Endpoint: https://user.arcsite.com/user/service/servicetitan/webhooks/
Note: The ServiceTitan API team typically responds within 1–3 business days. You do not need to wait for confirmation before completing Parts B and C — however, the integration will not receive job dispatches until the webhook is active.
Part B: Retrieve Your Credentials from ServiceTitan
Next, you will need to log in to your ServiceTitan account to retrieve two key pieces of information: your Tenant ID (the same one used in the email) and a newly generated Client Secret.
Step 2: Navigate to API Application Access in ServiceTitan
Log in to your ServiceTitan account.
Click the Gear Icon in the upper right corner to access Settings.
In the left menu, navigate to Integrations > API Application Access.
Step 3: Retrieve Your Tenant ID
On the "API Application Access" page, you will find your Tenant ID. Select and copy this ID, as you will need it in a later step.
Step 4: Generate a New Client Secret
Within the "API Application Access" page, click "Connect New App".
The "Connect New App" window will open. Select the ArcSite App from the list and click "Connect".
You will be shown the Terms and Conditions. Click "Accept" to proceed.
On the "Application Details" screen, click the "Generate" button to create a new Client Secret.
Immediately click "Copy" to copy the generated secret to your clipboard. This secret is only shown once, so it is critical to copy it now.
Part C: Connect to ArcSite
With your Tenant ID and Client Secret copied, you are now ready to complete the connection inside your ArcSite account.
Step 5: Navigate to Integrations in ArcSite
Log in to your ArcSite account at user.arcsite.com.
Click on "Settings" in the left-hand menu.
Click on "Integrations", then click on "Apps".
From the list of available apps, find ServiceTitan and click "Connect to ServiceTitan".
Step 6: Enter Your Credentials and Connect
A "Connect to ServiceTitan" dialog box will appear.
Paste the Client Secret you copied from ServiceTitan into the Client ID field. Note: ArcSite labels this field 'Client ID' in the interface, but the value you are entering is the Client Secret generated in ServiceTitan.
Paste your Tenant ID into its field.
Select a Project Owner from the dropdown menu. This will be the default user assigned as the owner for all projects created via the integration.
Click the "Connect" button.
Project Information to ServiceTitan Job Information Mapping
Once connected, ArcSite creates corresponding projects by listening for ServiceTitan's JobScheduled webhook event. The diagram below illustrates how the specific information from a ServiceTitan job is mapped to the fields of a newly created ArcSite project.
Key Integration Features
Once your ArcSite and ServiceTitan accounts are connected, the integration enables several powerful features to streamline your workflow.
1. Automatic Project Creation from Booked ServiceTitan Jobs
When a job is booked and dispatched to a technician in ServiceTitan, ArcSite receives a notification. It automatically creates a corresponding project in the assigned technician's ArcSite account, linking it directly to the ServiceTitan job information. This ensures that your team always has the most up-to-date job details in ArcSite without manual entry.
2. Automatic PDF Push of Drawings to ServiceTitan
Whenever a new version of an ArcSite drawing is uploaded to the ArcSite Cloud, the integration will automatically push the latest PDF of that drawing to the corresponding job in ServiceTitan. Each drawing version uploaded will appear as a new attachment in the ServiceTitan job.
3. Manual Push of ArcSite Proposals to ServiceTitan Estimates
Users have the flexibility to manually push an ArcSite proposal to create a ServiceTitan estimate in two ways:
From the User Site: Send the proposal via the "Send to ServiceTitan" button on the ArcSite User Site.
From the Mobile App: After exporting the proposal in the ArcSite mobile app, you will be prompted to send it to ServiceTitan. Confirm "Yes" when prompted.
This action will create a corresponding estimate in ServiceTitan. If the drawing is updated later and pushed again, the latest drawing data will update the estimate in ServiceTitan as long as the linked estimate in ServiceTitan has not been marked as Sold.
Important – Sold estimates cannot be updated
Once a ServiceTitan estimate created from ArcSite has been marked as Sold in ServiceTitan, ArcSite will block any further pushes to that estimate. This prevents overwriting finalized sales records and protects your historical data.
4. Automatic Push of a Signed Proposal to ServiceTitan
The system can automatically push a signed proposal to ServiceTitan, triggered at two key points:
Upon Uploading a "Signed on Device" Proposal: After a customer signs a proposal directly on the device in the ArcSite app, and it's uploaded.
Upon eSign Completion: When the electronic signature (eSign) process is complete, and the proposal status changes to "Online Approved."
How are the files named?
Signed on Device:
[Proposal Name] - Signed on Device.pdfeSigned:
[Proposal Name] - eSigned.pdf
Where does the signed Proposal get placed?
All signed proposals pushed to ServiceTitan will be found in the "Photos/Attachments" section of the relevant ServiceTitan Job File.
5. How Multiple Technicians Are Handled
If multiple technicians are selected when booking a job in ServiceTitan, ArcSite will check whether the emails of these specified technicians already exist as ArcSite accounts within your company's plan. These existing ArcSite accounts will then be automatically added to the project's collaborator list, giving them shared access to the project.
6. Automatic Sync of Approved Change Orders to ServiceTitan Estimates
When a change order is created and approved in ArcSite for a job that is already active in ServiceTitan, ArcSite now automatically updates the linked ServiceTitan estimate to reflect the revised scope — no manual action required.
What this solves: Previously, if an ArcSite estimate had already been marked as Sold in ServiceTitan, attempting to sync an updated proposal after a change order would return an error prompting you to "unsell" the estimate first. This was operationally confusing for jobs already in progress and did not align with standard change order workflows.
How it works now: Once a change order is approved in ArcSite, the update is pushed to the associated ServiceTitan estimate automatically in the backend. No action is needed by the user.
Important notes:
The drawing PDF will continue to sync to ServiceTitan as it always has — the change order update applies specifically to the estimate line items.
This update happens automatically after change order approval. There is no button to push or additional step to take.
Project managers in ServiceTitan will see the updated estimate scope reflect the approved change order, keeping job records accurate without disrupting the active job.
Product to Item Matching
After connecting the applications, you must map your ArcSite products to their corresponding items in ServiceTitan. This step is critical for ensuring that pricing and material information are accurately transferred when you push a proposal from ArcSite to create a ServiceTitan estimate.
Important Consideration: Pricing & Cost
There are certain pricing and cost considerations to take into account given how the two different softwares manage these objects. While ArcSite allows you to capture both a Price and Cost on any product, ServiceTitan does not support this for all item types.
Material Items: By default, ServiceTitan does not support a Unit Price on Material Items. Therefore, we recommend setting a Unit Cost and using the Pricing Method "Calculated Price" for any ArcSite Products that will be matched with a ServiceTitan Material Item.
Service Items: ServiceTitan does not support a Unit Cost on Service Items. Therefore, we recommend setting a Unit Price and using the Pricing Method "Input Price" for any ArcSite Products that will be matched with a ServiceTitan Service Item.
Step-by-Step Mapping Instructions
Step 1: Navigate to the Product Manager
In the ArcSite User Site, navigate to Integrations > Product Manager.
Step 2: Locate the Product to Match
Select the relevant ArcSite Product Category to find the product you wish to map.
Step 3: Initiate the Connection
For the desired product, click "Connect" to create a new link to a ServiceTitan item, or click "Update" to change an existing mapping.
Step 4: Connect to a ServiceTitan Item
In the connection dialog box, you can search for and select an existing ServiceTitan Item to connect to, or you can choose to create a new item in ServiceTitan directly from this screen.
Repeat this process for all products that need to be included in your ServiceTitan estimates.
Bulk Product Mapping with Excel
For companies with large product libraries, the bulk mapping feature that allows you to map multiple products to ServiceTitan items simultaneously using Excel. This eliminates the need to map products one-by-one and enables you to efficiently manage product mappings during off-hours or updates.
When to Use Bulk Mapping
You have a large product catalog that needs to be mapped to ServiceTitan
You need to update multiple product mappings at once
You want to manage product mappings independently without developer assistance
You need to make changes during weekends or off-hours
How to Access Bulk Mapping
Navigate to Integrations > Product Manager in the ArcSite User Site
Click the "Bulk Mapping with Excel" button to open the bulk mapping panel
Export Your Current Product List
In the bulk mapping panel, click "Export Current Mappings"
Download the Excel file containing your current ArcSite products
The file includes the following columns:
Product ID (do not change)
Product Name (do not change)
Category Name (do not change)
Item Code (editable)
Important: Always export the latest version before making changes to ensure you're working with current data.
Working with the Excel File
For Existing ServiceTitan Items
Locate the product you want to map in the Excel file
In the "Item Code" column, enter the exact Item ID from your ServiceTitan pricebook
Repeat for all products you wish to map
For New ServiceTitan Items
To create a new item in ServiceTitan, enter a new unique code in the "Item Code" column
The new item will be created in ServiceTitan when you import the file
Important: Do not modify the Product ID, Product Name, or Category Name columns. Only update the Item Code column.
Import Your Completed Excel File
Return to Product Manager > Bulk Mapping with Excel panel
Click "Import Excel" and select your completed file
Review the preview step that shows:
Number of new mappings
Number of updated mappings
Any detected errors or warnings
If the preview looks correct, click "Confirm Import"
You will receive an email notification when the import process is complete
Best Practices
Test with a small batch first: Import 5-10 products initially to verify the process works correctly
Double-check Item IDs: Ensure accuracy before importing to avoid errors
Keep backups: Save copies of your Excel files with dates for reference
Schedule during off-hours: Make updates during evenings or weekends to minimize disruption
Understanding Error Messages
When you import your Excel file, the system will validate your data and display any errors in the preview step. Error messages will also be included in the email notification you receive after import.
Result Types:
Error: The row cannot be processed. You must fix the issue and re-import.
Duplicate: The row is identical to another entry in the file or an existing mapping.
Skipped: No changes needed (mapping already exists with same values, or both ServiceTitan fields are empty).
Created/Updated: Mapping was successfully created or updated.
File Format Errors
These errors prevent the entire import from proceeding. You must fix the file before trying again.
Error Message | Why This Happens | How to Solve |
"Please select a valid Excel file." | File is corrupted or not an Excel file | 1. Re-export a fresh file from ArcSite |
Ensure file has
.xlsxextensionDon't open file in other programs while uploading | | "The import does not support older versions of the Excel format. Please save as .xlsx and try again." | File is saved as
.xls(old Excel format) | 1. Open the file in ExcelClick File > Save As
Choose Excel Workbook (.xlsx) format
Save and re-import | | "Excel file does not contain any worksheets" | Workbook is empty or all sheets deleted | 1. Re-export a fresh file from ArcSite
Don't delete any worksheets from the exported file | | "Excel file does not contain headers" | Header row (row 2) is missing | 1. Re-export a fresh file from ArcSite
Don't delete or modify row 2 (the header row) | | "A required column is missing. This spreadsheet cannot be uploaded." | One or more required columns were deleted or renamed | 1. Re-export a fresh file from ArcSite
Don't delete, rename, or reorder any columns
Required columns are: • Product ID • Product Name • Category Name • ServiceTitan Product Type • ServiceTitan Product ID |
Data Validation Errors
These errors affect individual rows. The import will continue, but rows with errors won't be processed.
Error Message | Why This Happens | How to Solve |
"ServiceTitan Product Item Type and ID are required together" | You filled in ServiceTitan Product Type but not Product ID (or vice versa) | Fill in both fields: |
ServiceTitan Product Type (Material or Service)
Item Code Or leave both empty if you don't want to map this product | | "Invalid Product Type '{type}'. Must be one of: {valid_types}" | ServiceTitan Product Type contains invalid text | Use only these values: • Material (for Material Items) • Service (for Service Items) Copy the exact spelling (case-sensitive) | | "Product Name mismatch: Excel has '{excel_name}', but database has '{db_name}'" | Product Name in Excel doesn't match what's in ArcSite | 1. Don't modify the Product Name column
Re-export a fresh file to get correct names
Copy your ServiceTitan data into the new file | | "Category Name mismatch: Excel has '{excel_category}', but database has '{db_category}'" | Category Name in Excel doesn't match what's in ArcSite | 1. Don't modify the Category Name column
Re-export a fresh file to get correct categories
Copy your ServiceTitan data into the new file |
Product Identification Errors
These errors affect individual rows. The import will continue, but rows with errors won't be processed.
Error Message | Why This Happens | How to Solve |
"Product ID is required and must be in 'id:xxxx' format" | Product ID is missing, empty, or in wrong format | 1. Don't modify the Product ID column |
Re-export a fresh file from ArcSite
Product IDs should look like:
id:1234Copy your ServiceTitan data into the new file | | "Product ID: {product_id} is not found." | Product ID doesn't exist in your ArcSite account | 1. The product may have been deleted from ArcSite
Re-export a fresh file to get current products
Remove this row if the product no longer exists |
Duplicate Detection Errors
These rows are marked as duplicates and will be skipped during import.
Error Message | Why This Happens | How to Solve |
"Duplicate Row: Product ID {product_id} already exists" | The same Product ID appears multiple times in your Excel file | 1. Find all rows with this Product ID |
Keep only one row per Product ID
Delete the duplicate rows4. Re-import the file | | "Duplicate Row: ServiceTitan Item ID {st_id} and Type {st_type} already exists" | The same ServiceTitan Product ID + Type combination appears multiple times | 1. Find all rows with this ServiceTitan ID and Type
Decide which ArcSite product should map to this ServiceTitan item
Remove the duplicate mappings4. Re-import the file |
ServiceTitan Connection Errors
These errors indicate issues with ServiceTitan data or connectivity.
Error Message | Why This Happens | How to Solve |
"ServiceTitan Pricebook Item ID: {st_id} not found with type {st_type}." | The ServiceTitan Product ID doesn't exist in your ServiceTitan pricebook | 1. Log in to ServiceTitan |
Go to Settings > Pricebook
Verify the Item Code exists
Check for typos or extra spaces
Ensure you selected the correct Product Type (Material vs Service)
Update the Excel file with the correct information | | "ServiceTitan API Error: failed to validate item ID {st_id} with type {st_type}." | ServiceTitan couldn't verify the item due to a connection issue | 1. Wait a few minutes and try importing again
Check that your ServiceTitan integration is active:• Go to Settings > Integrations > Apps• Verify ServiceTitan shows as "Connected"
If still failing, contact ArcSite support | | "ServiceTitan integration not configured for this organization" | ServiceTitan integration is not set up or was disconnected | 1. Go to Settings > Integrations > Apps
Find ServiceTitan and click "Connect"
Follow the connection setup steps
See the ArcSite + ServiceTitan article for detailed instructions |
Common Issues and Quick Fixes
❌File import fails: Make sure your file is saved as
.xlsx(not.xlsor.csv), contains all required columns, and isn’t open in another program during upload.❌Product not mapping: Double-check that both ServiceTitan Product Type and ID fields are filled in for every product you want to map.
❌Error message in preview: Download the error report, fix issues indicated, and re-import only the corrected rows.
Best Practices
✅ Only edit the ServiceTitan Product Type and ID columns in the Excel file.
✅ Always export the latest template from ArcSite before making changes.
✅ Test with a small batch before doing a large import.
✅ Double-check Item Codes for accuracy before importing.
Advanced Considerations & Troubleshooting
This section covers important details for advanced setup, specific usage scenarios, and troubleshooting potential issues.
Setup Considerations
Mapping Service Items to GL Accounts
The ArcSite to ServiceTitan product mapping does not automatically define the GL account it will be associated with in ServiceTitan. The GL account association must be configured manually within your ServiceTitan account after the items are mapped.
Existing Cross-Associated ServiceTitan Items
Some of your existing ServiceTitan Services or Equipment items may already be associated with specific Materials. In this context, inconsistencies can arise in both the ArcSite drawing and the pricing defined in ServiceTitan. This is because services with associated materials will automatically add those materials when added to an estimate, which can lead to conflicts with items already drawn in ArcSite.
Solution 1: Avoid associating such services with materials in ServiceTitan to prevent unexpected results. If they are already associated, manually delete the duplicate equipment or materials from the ArcSite estimate before pushing it to ServiceTitan.
Solution 2: To avoid affecting the estimate's total price, set the price and cost of the associated materials or equipment to 0 in ServiceTitan.
Account Permission Issues
Due to ServiceTitan's authorization process, users cannot independently complete the connection. The process must be completed in conjunction with an ArcSite resource. Specifically, obtaining the user's Tenant ID and adding it to the ArcSite App cannot be completed independently.
Tenant Account Requirements
ServiceTitan has strict control over account permissions. The tenant account used for the integration must have admin privileges in ServiceTitan. The integration functionality will require the following permissions:
Read jobs
Create and read estimates
Create, read, and modify price books
Query technicians
Query vendors
Create forms (Job PDF Attachment)
Tenant Connection to a Single ArcSite Company Account
Currently, a ServiceTitan tenant can only correspond to one ArcSite company in ArcSite. If a tenant is associated with multiple companies, it can cause data confusion and prevent the system from determining which company's project to create.
ServiceTitan Purchasing Module
If the ServiceTitan Purchasing module is enabled, a preferred Primary Vendor must be identified. This information will be used during the final setup to create the necessary Custom Pricing Equipment Products — these are ServiceTitan pricebook items that ArcSite generates automatically to represent equipment with vendor-specific pricing.
If enabled: The Product Mapping page will display the Primary Vendor field as a required entry.
If not enabled: No action is required, as the Primary Vendor field is hidden.
Managing Collaborators
To maintain up-to-date user access, ArcSite allows you to manage your collaborators directly through the ServiceTitan integration. You can remove collaborators who no longer need access and reassign their work.
How to Remove and Reassign a Collaborator:
Navigate to Integration Settings: Access the ServiceTitan integration panel within your ArcSite settings.
Identify the Collaborator: Locate the list of active collaborators and find the user you wish to remove.
Initiate Removal: Select the option to remove the chosen collaborator.
Reassign Projects: You will be prompted to select a new collaborator from the list of available users. All projects and tasks previously assigned to the removed user will be transferred to this new assignee.
Confirm the Change: Review the changes and confirm the reassignment. The new collaborator will now have access to all transferred projects.
Usage Scenarios, Error Handling, and FAQ
Will the Latest Drawing Automatically Push to ServiceTitan if the Drawing is Updated?
Yes. By default, whenever a new drawing version is uploaded to the ArcSite cloud, the latest Drawing PDF will be automatically pushed to the corresponding job in ServiceTitan.
Drawing PDF Push in a Project with Multiple Drawings
When a project is associated with a job, if there are multiple drawings under the project, by default, whenever there is an update to the drawings in the project and it is uploaded to the cloud, the latest Drawing PDF of the corresponding drawing will be pushed to the job.
If there are multiple drawings under the project and frequent updates, there will be the same number of attached PDFs in the corresponding job in ServiceTitan. Each drawing version will correspond to an attachment PDF. This is because the ServiceTitan API does not support deleting and modifying attachments, so users can only manually maintain these attachments.
ArcSite Project Ownership
Every ArcSite project must have a Project Owner. In the context of the ServiceTitan integration, the Default Owner set during the connection setup will be assigned as the project owner. However, technicians will not be assigned as the project owner. Instead, they will be added as collaborators on the project, giving them access and editing permissions.
Note: The "Project Owner" in ArcSite does not carry any functional business logic; it simply indicates the project creator.
Access to ArcSite Projects
If Technicians are specified within ServiceTitan, ArcSite will check and attempt to add them one by one as Project Collaborators. For each Technician, their email must match an active ArcSite user account with the same username within the same company. If this condition is not met, the addition of that Technician will fail.
Potential Error Conditions
Unmapped Products
Error Message Seen: "Failed to Push Line Items from [Job Drawing] - v2 for ServiceTitan Integration Testing; Some products used in this drawing are not connected to ServiceTitan: Service Product Non Taxable."
Solution: You must map all ArcSite products to a ServiceTitan product from the Integration > Product Manager screen on the ArcSite User Site.
Duplicate Project Names
Issue: ArcSite requires a unique name for each project. If a project creation request uses an existing name, it will fail.
Solution: Ensure project names are unique when pushing from ServiceTitan.
Additional Questions and Answers (FAQ)
How Are Discounts and Markups Mapped?
ArcSite uses ServiceTitan's discounts and fees features to complete the mapping of estimates' discounts and markups. If the corresponding discount item and fee item have been created in ServiceTitan, they will be used. If not, ArcSite will create them and the corresponding taxable discount item and non-tax discount item according to whether it is taxable.
Their codes are:
Discount(ArcSite) -> Non-Tax Discount(ArcSite)
Markup(ArcSite) -> Markup(ArcSite)
Note: Do not delete from within ServiceTitan, or errors will occur.
Can Proposal PDFs Be Pushed Repeatedly? What is the Push Logic?
By default, their push can be initiated on the User Site and in the App. Each Drawing Version will only push one Proposal PDF to the Job. ArcSite will check if a Proposal PDF has already been pushed for that specific Drawing Version, and if it has, it will not push it again.
Note: If the corresponding ServiceTitan estimate has been marked as Sold, ArcSite will block any further pushes to that estimate until it is marked as Unsold in ServiceTitan.
Who Is the Owner of the Created Project, and Who Will See the Project?
In ArcSite, each project needs a definite owner. When connecting to ServiceTitan, the page will specify the project owner. This owner will act as the owner of all projects created from ServiceTitan. The projects will be visible to the owner, project manager, and collaborators.
How is Sales Rep Information Handled?
Sales representatives from ServiceTitan can be mapped to corresponding information in ArcSite. This includes the sales rep's name and email address.
This article helps you identify and resolve errors that may occur when using the bulk product mapping feature with ServiceTitan. If you encounter an error during the import process, use this guide to find the solution.







