1. Help Center
  2. Integrations
  3. CRMs & Field Management Systems

Jobber Integration

What Hatch's Jobber integration is, how it works, and where to begin.

What does the Jobber integration do?

Hatch offers a native integration with Jobber that you can activate within the App Marketplace (located in your Hatch workspace). This integration syncs contact data from Jobber to Hatch, and can also sync Hatch events to Jobber.

While active, the Jobber integration will sync new and updated Jobber data every 15 minutes. It will also sync Hatch events back to Jobber as soon as they occur (if you have enabled this feature).

To get started, open the App Marketplace in your Hatch workspace and follow the setup instructions below.

How do you set up the integration?

Requirements

You will need the following to set up the integration:

  • Hatch account with manager privileges
  • Jobber account

Setup Steps

The following is the set of steps required to activate the integration:

  1. In Hatch, open the App Marketplace.
  2. Under the CRMs tab, click the Jobber Connect button.
  3. In the window that appears, click the Start Setup button.
  4. Follow the steps of the setup, clicking the Next button after each screen is completed.
    1. The setup will open a new browser tab to connect your Jobber account. You will need to approve the connection in this new tab.
  5. In the final screen of the setup, click the Finish button.

What Jobber data is available in Hatch?

Detail Field Lists

Some fields below are lists. Data within a list field is sorted by “created date” in descending order. For example, a list of jobs would have the most recently-created job listed first.

When accessing a list, you need to provide the index number of the list item that you want. Because this index number will vary, it is shown in the lists below with the placeholder #.

The following fields are available in the opportunity details:

Quote Opportunity

Field Type
approved_at Date
client Object
client:balance Number
client:billing_address Object
client:billing_address:city String
client:billing_address:country String
client:billing_address:pc String
client:billing_address:province String
client:billing_address:street String
client:billing_address:street1 String
client:billing_address:street2 String
client:company_name String
client:created_at Date
client:custom_field_values Object
client:custom_field_values:<custom_field_name> List OR String
client:custom_field_values:<custom_field_name>:<n> String
client:emails List
client:emails:# Object
client:emails:#:address String
client:emails:#:description String
client:emails:#:id String
client:emails:#:primary Index 1: Boolean
Index >1: String (Boolean)
client:first_name String
client:id String
client:is_company Boolean
client:is_achieved Boolean
client:last_name String
client:name String
client:phones Object
client:phones:Main1
client:phones:Mobile1
client:phones:Home1
client:phones:Work1
client:phones:Other1
client:phones:Fax1
Object
client:phones:Main1:id
client:phones:Mobile1:id
client:phones:Home1:id
client:phones:Work1:id
client:phones:Other1:id
client:phones:Fax1:id
String
client:phones:Main1:number
client:phones:Mobile1:number
client:phones:Home1:number
client:phones:Work1:number
client:phones:Other1:number
client:phones:Fax1:number
String
client:phones:Main1:primary
client:phones:Mobile1:primary
client:phones:Home1:primary
client:phones:Work1:primary
client:phones:Other1:primary
client:phones:Fax1:primary
String (Boolean)
client:phones:Main1:sms_allowed
client:phones:Mobile1:sms_allowed
client:phones:Home1:sms_allowed
client:phones:Work1:sms_allowed
client:phones:Other1:sms_allowed
client:phones:Fax1:sms_allowed
String (Boolean)
client:tags String
client:updated_at Date
cost Number
created_at Date
custom_field_values List
custom_field_values:# Object
custom_field_values:#:created_at String (Date)
custom_field_values:#:name String
custom_field_values:#:position String (Number)
custom_field_values:#:unit String
custom_field_values:#:updated_at String (Date)
custom_field_values:#:value List OR String
custom_field_values:#:value_type String
custom_field_values:#:value:# String
deposit_amount Number
discount_amount Number
id String
job_description String
jobs List
jobs:# Object
jobs:#:automatically_charge_invoice Index 1: Boolean
Index >1: String (Boolean)
jobs:#:billing_type String
jobs:#:client String
jobs:#:completed_at Index 1: Date
Index >1: String (Date)
jobs:#:created_at Index 1: Date
Index >1: String (Date)
jobs:#:custom_field_values List
jobs:#:custom_field_values:# Object
jobs:#:custom_field_values:#:created_at Index 1: Date
Index >1: String (Date)
jobs:#:custom_field_values:#:name String
jobs:#:custom_field_values:#:position Index 1: Number
Index >1: String (Number)
jobs:#:custom_field_values:#:unit String
jobs:#:custom_field_values:#:updated_at Index 1: Date
Index >1: String (Date)
jobs:#:custom_field_values:#:value List OR String
jobs:#:custom_field_values:#:value_type String
jobs:#:custom_field_values:#:value:# String
jobs:#:end_at Index 1: Date
Index >1: String (Date)
jobs:#:id String
jobs:#:job_number Index 1: Number
Index >1: String (Number)
jobs:#:job_type String
jobs:#:line_items List
jobs:#:line_items_cost Index 1: Number
Index >1: String (Number)
jobs:#:line_items_name String
jobs:#:line_items:# String
jobs:#:property String
jobs:#:quote String
jobs:#:start_at Index 1: Date
Index >1: String (Date)
jobs:#:status String
jobs:#:total_value Index 1: Number
Index >1: String (Number)
jobs:#:updated_at Index 1: Date
Index >1: String (Date)
message String
quote_number Number
quote_status String
sent_at Date
transitioned_at Date
updated_at Date
won_at Date

Request Opportunity

Field Type
client Object
client:balance Number
client:billing_address Object
client:billing_address:city String
client:billing_address:country String
client:billing_address:pc String
client:billing_address:province String
client:billing_address:street String
client:billing_address:street1 String
client:billing_address:street2 String
client:company_name String
client:created_at Date
client:custom_field_values Object
client:custom_field_values:<custom_field_name> List OR String
client:custom_field_values:<custom_field_name>:<n> String
client:emails List
client:emails:# Object
client:emails:#:address String
client:emails:#:description String
client:emails:#:id String
client:emails:#:primary Index 1: Boolean
Index >1: String (Boolean)
client:first_name String
client:id String
client:is_company Boolean
client:is_achieved Boolean
client:last_name String
client:name String
client:phones Object
client:phones:Main1
client:phones:Mobile1
client:phones:Home1
client:phones:Work1
client:phones:Other1
client:phones:Fax1
 
client:phones:Main1:id
client:phones:Mobile1:id
client:phones:Home1:id
client:phones:Work1:id
client:phones:Other1:id
client:phones:Fax1:id
Object
client:phones:Main1:number
client:phones:Mobile1:number
client:phones:Home1:number
client:phones:Work1:number
client:phones:Other1:number
client:phones:Fax1:number
String
client:phones:Main1:primary
client:phones:Mobile1:primary
client:phones:Home1:primary
client:phones:Work1:primary
client:phones:Other1:primary
client:phones:Fax1:primary
String (Boolean)
client:phones:Main1:sms_allowed
client:phones:Mobile1:sms_allowed
client:phones:Home1:sms_allowed
client:phones:Work1:sms_allowed
client:phones:Other1:sms_allowed
client:phones:Fax1:sms_allowed
String (Boolean)
client:tags String
client:updated_at Date
created_at Date
custom_field_values List
custom_field_values:# Object
custom_field_values:#:created_at String (Date)
custom_field_values:#:name String
custom_field_values:#:position String (Number)
custom_field_values:#:unit String
custom_field_values:#:updated_at String (Date)
custom_field_values:#:value List OR String
custom_field_values:#:value_type String
custom_field_values:#:value:# String
id String
property String
source String
status String
title String
updated_at Date

Standard Field Mapping

Hatch standard fields are mapped from Jobber detail fields as detailed below.

Quote Opportunity

The base object of this opportunity model is the Jobber Quote. Therefore, (as an example) the id field would indicate the ID of the Jobber Quote record.

In Quote opportunities, the following Hatch standard fields are mapped from Jobber detail fields:

Hatch Standard Field Jobber Detail Field
Email client:emails:1:address
External ID id
External Contact ID client:id
External Created At created_at
External Updated At
(used for Hatch opportunity sorting)
updated_at
First Name client:first_name
Last Name client:last_name
Phone Number client:phones:Main1:number
client:phones:Mobile1:number (if above is missing)
client:phones:Work1:number (if above is missing)
client:phones:Home1:number (if above is missing)
client:phones:Other1:number (if above is missing)
client:phones:Fax1:number (if above is missing)

Request Opportunity

The base object of this opportunity model is the Jobber Request. Therefore, (as an example) the id field would indicate the ID of the Jobber Request record.

In Request opportunities, the following Hatch standard fields are mapped from Jobber detail fields:

Hatch Standard Field Jobber Detail Field
Email client:emails:1:address
External ID id
External Contact ID client:id
External Created At created_at
External Updated At
(used for Hatch opportunity sorting)
 updated_at
First Name client:first_name
Last Name client:last_name
Phone Number client:phones:Main1:number
client:phones:Mobile1:number (if above is missing)
client:phones:Work1:number (if above is missing)
client:phones:Home1:number (if above is missing)
client:phones:Other1:number (if above is missing)
client:phones:Fax1:number (if above is missing)