Estimate Rocket API - Invoices / Expenses / Time Entries Updates August 2026

 

Using Estimate Rocket time entries, expenses, and invoices with Zapier

This guide explains how to use Estimate Rocket’s new time-entry, expense, and invoice features in Zapier. 

The changes outlined here are seen in Zapier when connecting to the Estimate Rocket 1.2.0 version API. 

The default Estimate Rocket selection in Zapier as of Aug 2026 is Version 1.2.0. If your Zap shows an earlier version of the ER API you will need to upgrade that connection.

It is written for Estimate Rocket customers and for Customer Success representatives helping them build or troubleshoot a Zap.

What you can automate

You can now build Zaps that:

  • start when an employee clocks in;
  • start when an employee clocks out;
  • retrieve Estimate Rocket time entries;
  • retrieve or create project expenses, including matching or creating vendors from another system; and
  • retrieve or create invoices for an Estimate Rocket project.

Common examples include sending completed time entries to payroll, importing purchases from an accounting system as project expenses, and creating an Estimate Rocket invoice when another workflow reaches a billing milestone.

 

Before you begin

You will need:

  1. An Estimate Rocket account with permission to access the relevant employees, projects, expenses, and invoices.
  2. An Estimate Rocket connection in Zapier. Customers should sign in and approve access rather than paste credentials into a Zap.
  3. A real test record in Estimate Rocket. Zapier uses sample records to expose fields for later steps.
  4. The Estimate Rocket employee, project, or work-code information needed by the Zap.

If a Zap needs a project, add a project lookup step before the create action. A project can be looked up by its Estimate Rocket ID, number, or name. Project number is usually the safest customer-facing lookup value because names may not be unique.

 

Time entries

With Zapier, customers can use a clock-in or clock-out as an instant trigger, retrieve time-entry information for later steps, or create a time entry in Estimate Rocket.

 

Time-entry fields

The most useful fields in Zapier are:

Field Meaning
id Estimate Rocket time-entry ID
employee_id Employee who owns the entry
project_id Related project, if any
work_code_id Related work code, if any
in_at Clock-in date and time
out_at Clock-out date and time; blank while the entry is open
hours Decimal hours after clock-out
hours_hhmm Duration formatted as hours and minutes, such as 01:30
notes Optional notes
in_at_date, in_at_time Separate clock-in date and time values
out_at_date, out_at_time Separate clock-out date and time values
employee, project, work_code Related records included in the response

The response can also contain location, distance, and alert fields when those values were captured.

 

Creating a time entry in Zapier

Use ISO 8601 timestamps with a time-zone offset or Z whenever possible.

The employee and clock-in time are required. Project, work code, clock-out time, and notes are optional. For example, a Zap could create an entry for an employee starting at 2026-08-20T08:00:00-06:00, ending at 2026-08-20T10:30:00-06:00, with the note “Site preparation.” Estimate Rocket calculates the hours when both times are present.

An employee cannot have more than one open time entry. If the customer receives an error saying another open time entry exists, clock out or correct that entry before creating another open entry.

 

Zapier triggers: employee clocked in and clocked out

Estimate Rocket supports these webhook event types:

  • time_entry.clocked_in
  • time_entry.clocked_out

Choose the corresponding instant trigger in the Estimate Rocket Zapier app. Zapier and Estimate Rocket manage the connection automatically.

The webhook sends the time-entry record itself. It includes the same useful IDs, timestamps, duration, notes, related employee/project/work-code records, and available location fields described above.

 

Exactly when each trigger fires

  • Clocked in fires when a new, open time entry is created with no out_at value.
  • Clocked out fires when an existing time entry is updated and out_at changes from blank to a value.
  • Creating an already-completed entry with both in_at and out_at does not fire either webhook.
  • Later edits that do not set a new clock-out time do not fire these events.

That distinction is important when testing: create an open punch first, then clock it out as a separate action.

 

Expenses

Zapier can retrieve Estimate Rocket expense information or create a Material or Labor expense on a project.

Required and optional fields

Required for creation:

  • project_id
  • date
  • type: exactly Material or Labor
  • subtotal in dollars, or subtotal_cents in cents
  • enough vendor information to find or create a vendor

Common optional fields are tax or tax_cents, hours, description, and paid. hours is normally relevant to a Labor expense.

Send either dollar fields or cent fields, not both. For example, use subtotal: 125.50 and tax: 10.04, or use subtotal_cents: 12550 and tax_cents: 1004. Estimate Rocket calculates total as subtotal plus tax.

How vendor lookup and creation works

For the customer-facing Zap fields, Estimate Rocket resolves the vendor in this order:

  1. external_vendor_id — the stable vendor ID from the source system, such as QuickBooks.
  2. vendor_name — matched without regard to capitalization or surrounding spaces.
  3. A normalized name match — punctuation and spaces are ignored, so Home Depot can match HomeDepot.
  4. If no match is found, a new vendor is created from vendor_name and associated with external_vendor_id when provided.

Use one consistent external ID per vendor. If Estimate Rocket finds a vendor by name and the Zap also supplies external_vendor_id, Estimate Rocket associates that external ID with the matched vendor. External vendor IDs must be unique within the customer’s Estimate Rocket account.

For an accounting-system Zap, the recommended mapping is:

  • source system’s stable vendor ID → external_vendor_id;
  • source system’s vendor display name → vendor_name.

This allows the first expense to create or link the vendor and later expenses to find the same vendor by the stable external ID.

Create-expense example

For a $125.50 material purchase with $10.04 tax, a Zap could map:

Estimate Rocket field Example value
Project Project returned by the earlier lookup step
Date 2026-08-20
Type Material
External vendor ID QBO-VENDOR-417
Vendor name Rocky Mountain Supply
Subtotal 125.50
Tax 10.04
Description Job materials
Paid Yes

The Estimate Rocket result does not return the source system’s external vendor ID, so retain it from the source step if a later Zap step needs it.

 

Invoices

Zapier can retrieve Estimate Rocket invoices, find an invoice by its number, or create an invoice on a project.

Step 1: Look up the project

The create-invoice action requires an Estimate Rocket project. Use a Find Project step to search by project number whenever possible. A project can also be found by its Estimate Rocket ID or name. These are exact-match searches. Before continuing, confirm that the lookup returned one project and map that project into the invoice action.

In Zapier, configure the lookup step to stop the Zap or follow an explicit fallback path when no project is found. Creating an invoice on a guessed project risks billing the wrong customer.

Step 2: Create the invoice

Required fields:

  • project_id
  • date
  • name
  • subtotal in dollars, or subtotal_cents in cents

Optional fields are number, description, and tax/tax_cents. If number is blank, Estimate Rocket generates the next number from the project number. Invoice numbers must be unique. Tax defaults to zero, and Estimate Rocket calculates total and amount due.

Estimate Rocket field Example value
Project Project returned by the earlier lookup step
Date 2026-08-20
Name Final Invoice
Description Completed project work
Subtotal 125.50
Tax 10.04

The response includes the related project and client plus dollar and cent versions of subtotal, tax, total, and amount due. In this example, total and due are 135.54.

Creating an invoice also updates the project’s cumulative invoiced subtotal, tax, and total values.

 

Send clocked-out time to payroll or a spreadsheet

  1. Trigger: Estimate Rocket — Time Entry Clocked Out.
  2. Optional filter: continue only for selected employees, projects, or work codes.
  3. Action: create the payroll time record or spreadsheet row.
  4. Map employee_id, project_id, work_code_id, in_at, out_at, hours, and notes.
  5. Use the time-entry id as the external/deduplication key when the destination supports one.

Import an accounting purchase as a project expense

  1. Trigger: new or updated purchase in the accounting system.
  2. Lookup: find the Estimate Rocket project by project number.
  3. Filter: continue only when exactly one project was found.
  4. Action: create an Estimate Rocket expense.
  5. Map the accounting vendor ID to external_vendor_id and the vendor display name to vendor_name.
  6. Map the source transaction ID into description if the destination does not provide a dedicated external transaction field.

Create an invoice after a workflow milestone

  1. Trigger: the billing milestone in the source application.
  2. Lookup: find the Estimate Rocket project by project number.
  3. Filter: stop if no unique project was found.
  4. Action: create an Estimate Rocket invoice.
  5. Leave number blank to use Estimate Rocket numbering, or map a unique external invoice number.
  6. Store the returned invoice id and number in later steps.

 

Troubleshooting checklist

The Zap cannot connect or receives an authorization error

  • Reconnect the Estimate Rocket account in Zapier.
  • Confirm the customer signed into the intended Estimate Rocket account.
  • Do not ask the customer to send passwords or OAuth access tokens in a support ticket.

The project was not found

  • Confirm the Zap is searching with an exact Estimate Rocket project number or name.
  • Confirm the project belongs to the same Estimate Rocket account as the connected user.
  • Inspect the lookup result before the create step and confirm the returned project is mapped into the action.

A clock trigger has no test data

  • Turn the Zap’s test listener on.
  • For time_entry.clocked_in, create a new open punch without a clock-out time.
  • For time_entry.clocked_out, create an open punch first and then clock it out separately.
  • Confirm the Zap is connected to the account where the employee is clocking time.

The employee cannot clock in

The employee probably already has an open time entry. Find and close or correct it before retrying.

The expense says the vendor could not be found

  • If using only external_vendor_id, a matching vendor must already exist.
  • To permit automatic vendor creation, also provide vendor_name.
  • Do not map blank strings into vendor identifier fields when Zapier can omit the field instead.

The expense reports a duplicate external vendor ID

Another vendor in the same Estimate Rocket account already owns that external_vendor_id. Confirm the source-system vendor mapping, then use the existing vendor instead of assigning the ID to a second vendor.

An invoice number is already taken

Leave number blank and let Estimate Rocket generate it, or supply a different unique number. Retrying the same create action with the same custom number will not create a duplicate invoice.

A create action returns a validation error

Zapier will display Estimate Rocket’s description of the invalid or missing value. Check required fields, record selections, date formats, exact expense type capitalization, and money mapping. A missing project or a project from another Estimate Rocket account also returns an error rather than creating a record.



Not an Estimate Rocket user yet?
Start your Free 30-Day Trial or Book a Demo.