This guide explains how to connect ArcSite to Housecall Pro (HCP), automatically create ArcSite Projects from HCP Estimates, and push ArcSite Drawing outputs (PDF + line items) back into HCP.
This step-by-step guide is designed for operational, non-technical users.
1. Setup
1.1 Prerequisites
Before you begin, confirm the following:
Active ArcSite account
You can sign in to ArcSite Web.
You are in the correct ArcSite company/organization where projects should be created.
Active Housecall Pro (HCP) account
You can sign in to HCP.
You can access the company that will send webhooks and receive ArcSite pushes.
Required permissions
In HCP, you can:
Create / manage API keys (or “tokens”) for API access.
Create / edit Webhooks (including setting a webhook secret).
View Estimates, Options, and edit Option line items.
Upload attachments to Estimate Options.
In ArcSite, you can:
Manage Integrations / App connections for your company.
Choose a Default Project Owner.
Create projects, or have permissions that allow ArcSite to create projects on your behalf.
Data hygiene recommendation (important for Sales Rep matching)
The employees assigned to an HCP Estimate should have email addresses.
To ensure employees are automatically added as collaborators, their HCP email addresses must match active user emails in the same ArcSite company.
1.2 Generating an API Key in HCP (do this first)
ArcSite uses an HCP API key to:
Validate the connection
Retrieve company information
Read Estimates and Options
Update Option line items
Upload drawing PDF attachments to an Option
In Housecall Pro, navigate to the Apps → Integrations App
Create a new API key. Generate new API key with Full-access Permission.
Ensure the API key has permissions to:
Read company information (ArcSite reads
/companyduring setup)Read customers (ArcSite validates the key by reading
/customers)Read estimates (ArcSite reads
/estimates/{estimate_id})Update estimate option line items (bulk update)
Upload attachments to estimate options (PDF uploads)
Copy the API key and keep it secure.
1.3 Configuring Webhooks in HCP (required for project creation)
ArcSite creates a Project automatically when HCP notifies ArcSite that an Estimate has been scheduled.
In Housecall Pro, navigate to the Webhook App page.
Create a new webhook with these settings:
Activate the Webhook App.
Enter the Webhook URL (ArcSite endpoint):
https://user.arcsite.com/user/service/housecall_pro/webhooks/Webhook Secret (Signing Secret):
Copy the Signing Secret. You will paste the exact same value into ArcSite during connection.
Enable the required event(s):
Estimate scheduled event:
The event name used by this integration is
estimate.scheduled.
Save the changes by clicking the Save button at the bottom of the page.
Why webhooks are required:
ArcSite Project creation is triggered only by the HCP webhook event
estimate.scheduled.Without this webhook, ArcSite will not automatically create Projects from HCP Estimates.
Technical note (for troubleshooting):
HCP signs webhook requests using HMAC-SHA256 with your webhook secret.
ArcSite expects these headers from HCP:
Api-TimestampApi-Signature
If webhook delivery fails, the most common cause is a secret mismatch between HCP and ArcSite.
1.4 Connecting ArcSite to HCP (paste API Key + Webhook Secret)
You initiate the connection from ArcSite, after you have prepared the HCP API Key and Webhook Secret.
In ArcSite Web, go to:
Paste the required information:
Save / Connect.
What you should expect after a successful connection:
ArcSite shows the integration as Connected.
ArcSite stores your HCP Company ID and Company Name (retrieved from HCP automatically).
1.5 Validating the connection (what ArcSite checks)
In ArcSite Web → Settings → Integrations → Housecall Pro:
ArcSite validates the API key by making a lightweight API request to HCP.
ArcSite fetches HCP Company information and stores:
Company ID
Company Name
Common connection errors and how to resolve them:
“The API Key is invalid”
Regenerate the key in HCP and paste the new key in ArcSite.
“The API Key does not have permission”
Ensure the key has access to Estimates / Options / attachments.
Webhook signature errors later (during project creation)
Double-check the webhook secret matches exactly on both sides (HCP webhook and ArcSite integration screen).
1.6 Default Project Owner Setting (Important)
ArcSite needs a default person to “own” new Projects created automatically from HCP webhooks.
What “Default Project Owner” means
It is the ArcSite user who will be set as the Project Owner for Projects created from HCP
estimate.scheduledevents.
When it is used
2. Workflow
2.1 Scheduling an Estimate in HCP (what triggers ArcSite project creation)
ArcSite creates the Project when the Estimate is scheduled in HCP.
In Housecall Pro, create an Estimate for the customer.
Add/confirm required customer/job data:
Customer first name and last name
Customer email (recommended)
Service address (street, city, state, zip)
Assign employees (strongly recommended):
Add one or more Assigned Employees to the Estimate.
Ensure each assigned employee has an email in HCP.
Best practice: those emails should match ArcSite user emails in your ArcSite company.
Schedule the Estimate.
When scheduled, HCP sends the webhook event
estimate.scheduledto ArcSite.
You can schedule an Estimate in Estimate Detail Page:
Or in the Pipeline table:
2.2 Automatic ArcSite Project Creation
This step is automatic after the HCP webhook is configured and working.
What happens automatically:
HCP sends
estimate.scheduledto ArcSite.ArcSite creates a new Project.
ArcSite links the Project to the HCP Estimate ID internally.
What users should expect to see in ArcSite:
A new Project appears in ArcSite (typically within minutes).
The Project owner is the configured Default Project Owner.
Duplicate prevention:
If an ArcSite Project already exists for the same HCP Estimate, ArcSite will not create another one.
2.3 Project Naming Rules
ArcSite generates the Project name from the scheduled HCP Estimate.
Naming format:
Estimate # {estimate_number} - {customer_name} - {address_street}
Fields used from HCP:
estimate.estimate_numberestimate.customer.first_name+estimate.customer.last_nameestimate.address.street
Notes / limitations:
If a field is missing, ArcSite omits that part.
If all parts are missing, ArcSite uses a generic name:
HCP Estimate.
2.4 Project Profile Mapping (HCP → ArcSite)
When the Project is created, ArcSite maps HCP fields into the ArcSite Project Profile.
Mapping behavior:
Customer and address fields are copied into the ArcSite Project’s client profile.
“Support contact” fields are populated from the first assigned employee (if any).
Optional mapping table:
ArcSite Project Profile Field | Source in HCP Estimate payload |
Client name |
|
Client email |
|
Phone |
|
Second phone |
|
Street |
|
City |
|
State |
|
ZIP |
|
Support name | First item in |
Support email | First item in |
Support phone | First item in |
2.5 Sales Rep and Collaborator Assignment Logic
ArcSite uses HCP “Assigned Employees” to add collaborators to the ArcSite Project.
Matching method:
ArcSite takes the list of
assigned_employeesfrom the HCP Estimate payload.ArcSite extracts their
emailvalues.ArcSite searches for active ArcSite users within the same ArcSite company with matching emails.
What happens when there is a match:
Each matched user is added to the Project as a Collaborator.
If at least one match succeeds:
What happens when there is no match:
The Project is still created.
No collaborators are added for missing/unmatched emails.
Support contact remains:
Set from HCP first assigned employee fields (if present), but not linked to an ArcSite user; or
Blank, if no assigned employees were provided.
Common causes of missing matches:
Assigned employee has no email in HCP.
Assigned employee email does not match the ArcSite user’s email.
The ArcSite user exists but is not active or not in the same ArcSite company.
2.6 Creating Drawings in ArcSite
Open the automatically created Project in ArcSite.
Create or update Drawings in the Project:
Add measurements and takeoffs as needed.
Ensure products and custom price items are correctly set up, if you want them pushed as line items.
Prepare content for export/push:
Confirm the drawing version is ready to be exported (the push is version-aware for PDF uploads).
2.7 Pushing Drawings and Line Items to HCP
In the ArcSite App, trigger the push by clicking “Yes” on the pop-up that asks, “Do you want to push this proposal to Housecall Pro?”
ArcSite pushes data to HCP from ArcSite during the export flow.
Where the push action happens in ArcSite:
In the Project, export your Proposal / output.
During export, ArcSite will trigger the Housecall Pro push for the drawing version being exported.
What data is pushed to HCP:
Drawing PDF uploaded as an attachment to an HCP Estimate Option
Line Items written into the same HCP Estimate Option, including:
Important behavior:
The push targets an Estimate Option inside the linked HCP Estimate.
Option selection rules are critical and explained in the next section.
Line item update behavior (important):
ArcSite updates line items using a bulk replace strategy (it replaces the option’s line items with ArcSite-generated line items).
If ArcSite generates no line items for the drawing, ArcSite does not modify existing HCP line items for that option.
2.8 Estimate Option Selection Logic (Critical)
ArcSite must choose which HCP Estimate Option to write to. This selection has strict rules.
First push for a Project (no previous record):
ArcSite retrieves the HCP Estimate’s Options.
ArcSite sorts options by create time.
ArcSite selects the earliest created option.
Later pushes for the same Project:
ArcSite re-uses the same Option ID that was used previously for that Project.
Approval / availability rules:
ArcSite will push only if the selected option’s
approval_statusis:empty / not set
expired
This means that options with any status prior to 'Approved' are available for the push (e.g., Schedule, OMW, Finish, Send, etc.).
If the selected option has any other approval status (for example, pending or approved), ArcSite will block the push.
Operational implications (read carefully):
You cannot manually choose a different option in ArcSite for the first push.
If the earliest created option is not editable, the push will fail until you fix the option situation in HCP.
If an option is deleted in HCP between pushes, ArcSite automatically recovers by selecting a new available option.
Recommended setup to avoid first-push failures:
In HCP, ensure the earliest created option in the Estimate is the one you want ArcSite to update.
Ensure that option is not approved (editable) at the time of the first push.
Ensure the Estimate has at least one available option before pushing (ArcSite cannot push without an option).
Basically, most push errors related to an Option’s status can be resolved by creating a new Option on the Estimate in HCP.
Currently, ArcSite will automatically fall back to the newly created Option if there are no other existing Options available.
Currently, because there is no API support for creating an Option, ArcSite uses an automatic fallback to another available Option to complete the push. This may result in overwriting data in an existing Option.
Therefore, unless it’s necessary, we recommend not deleting Options in HCP that have already been pushed from ArcSite.
2.9 Drawing Version Behavior (prevents duplicate uploads)
ArcSite treats Drawing PDF uploads as “version-aware.”
When a new drawing version is exported:
When the same drawing version is exported again:
ArcSite will not upload the same PDF attachment again.
This prevents duplicate attachments for repeated exports of the same drawing version.
What to expect in HCP:
Over time, you may see multiple attachments for the same drawing if you export multiple versions.
2.10 Push Error Handling
If a push fails, ArcSite stops the push and shows an error to the user.
How errors are displayed:
Common error scenarios and recommended actions:
No option found in HCP Estimate
In HCP, create at least one option in the Estimate, then retry the export/push.
Option cannot be updated because it is not editable
In HCP, ensure the selected option is editable (approval status empty or expired or Completed), or adjust the Estimate’s options so the earliest created option is editable.
Option deleted / not found
Verify the Estimate still exists and the option still exists in HCP.
API key invalid / permission error
Regenerate the API key in HCP and update it in ArcSite.
File too large
Reduce the drawing export size if possible, or split content across drawings.
Rate limit / temporary HCP API issues
Wait and try again later.
3. FAQ & Key Behaviors
3.1 How Markup Is Handled
Markup is pushed as separate line item(s) in HCP.
ArcSite splits markup into:
A taxable markup line item (if applicable)
A non-taxable markup line item (if applicable)
Why this approach is used:
HCP line items are the most reliable, auditable way to represent markup in the option total.
3.2 How Tax Is Handled
Tax is pushed as a separate “Tax” line item in HCP.
Tax behavior:
ArcSite respects taxable vs non-taxable logic from ArcSite products and pricing.
The “Tax” line item is non-taxable (it represents the tax amount itself).
Alignment with HCP tax calculations:
ArcSite sends the tax amount as a line item rather than expecting HCP to recalculate it.
3.3 Can Approved Estimates / Options Be Updated?
ArcSite will not update an option that is already approved (or otherwise not editable).
ArcSite push is allowed only when the selected option approval status is:
empty / not set, or
expired
This means that options with any status prior to 'Approved' are available for the push (e.g., Schedule, OMW, Finish, Send, etc.).
If you need to push updates after approval:
Create a new editable option in HCP before first pushing (and ensure it will be the earliest created option for first push scenarios), or
Use HCP workflows to make an option editable again, if supported by HCP.
3.4 What Happens If Assigned Employees Are Missing?
ArcSite will still create the Project (as long as the webhook event is received and valid).
No collaborators will be added automatically.
The support contact fields may remain blank.
The Project Owner will be the configured Default Project Owner.
3.5 Common Questions & Edge Cases
Duplicate pushes
Drawing PDF
The same drawing version is uploaded only once.
New versions are uploaded again (as new attachments).
Line items
ArcSite uses a bulk update strategy to keep HCP line items synchronized.
During a push, the option’s existing line items are replaced by the new line items generated in ArcSite (when ArcSite has line items to send).
If ArcSite generates no line items, ArcSite does not change existing HCP line items.
Missing data
Missing customer name/address fields may result in a shorter project name.
Missing assigned employee emails prevent collaborator auto-assignment.
Partial configurations
API key connected but webhook not configured:
ArcSite will not auto-create projects (because it never receives
estimate.scheduled).
Webhook configured but secret does not match:
ArcSite will reject the webhook (project will not be created).
Multiple drawings in one ArcSite Project (important limitation)
Current behavior:
All drawings inside the same ArcSite Project push to the same HCP Estimate Option.
Result:
Pushing from one drawing can overwrite the option line items from a previous push of another drawing.
Recommended operational best practice:
If you need separate options per drawing, use separate projects/estimates until HCP provides an API for option creation that enables one-drawing-to-one-option behavior.
Precision Loss in Line Item Pricing (Edge Case)
When does this occur?
In most cases, pricing precision is maintained accurately. However, precision loss may occur when a product's unit price in ArcSite has more than 2 decimal places (e.g., $0.045 per unit) combined with a large quantity.
Why does this happen?
This is due to Housecall Pro API limitations in how it processes sub-cent unit prices:
ArcSite calculates and sends:
unit_price = 4.5 cents(for $0.045)HCP's system processes this as:
unit_price = 4 cents(truncating the decimal)With quantity = 240:
Expected total: 4.5 cents × 240 = 1,080 cents = $10.80
Actual total in HCP: 4 cents × 240 = 960 cents = $9.60
Difference: $1.20 (11% error)
Recommendation:
To avoid precision loss:
Use unit prices with 2 or fewer decimal places (e.g., $0.05 instead of $0.045)
If you need granular pricing, adjust the quantity or bundling rather than using very low per-unit prices
Review pushed line items in HCP after export to verify totals match expectations

















