
HaloCRM Guides
HubSpot Integration
In this guide we will cover:
-Connecting to HubSpot
-Company Imports
-Contact Imports
-Product Imports
-Quotation Imports
-Deal Imports
-Syncing to HubSpot
The HubSpot integration allows you to import customers, contacts, products, quotations and deals from HubSpot into Halo. Updates to these entities in HubSpot can automatically update the linked entity in Halo. For some of these entities a bi-directional sync is available, including: customers, users, products, quotations and deals. This ensures data across the two applications remains consistent, allowing you to easily manage your sales process from both platforms.
Connecting to HubSpot
In Configuration > Integrations > CRM and Project Management, hover over HubSpot and click the "plus" icon to enable the integration.
Fig 1. Enabling the HubSpot integration.
Click into the integration you enabled.
Choosing an Authentication Type (v2.188+)
From v2.188+ you will have an option to choose an authentication type for the integration.
Fig 2. Authentication Type
Use the Halo app (recommended) - This is the recommended option and should be selected by all hosted customers. When this option is selected you will need to authenticate the integration by logging into your HubSpot account.
Use a custom developer app - This option should only be selected if you are unable to authenticate successfully using the Halo app method. As this option does not support webhooks. On-premise customers that do not allow their Halo instance to communicate with our API will need to use this authentication method. When this option is selected you will need to authenticate the integration using a client ID and secret.
Note: When you update to v2.188+ the 'Halo app' method will be selected by default.
Now, click the "Connect to HubSpot" button.
Fig 3. Connecting to HubSpot.
You will then be prompted to log in to your HubSpot account and redirected back to Halo upon successfully logging in.
The button will change to say "Disconnect from HubSpot" like below if this is successful.
Fig 4. HubSpot connected.
Company Imports
Once connected, you will first be presented with the "Companies" tab. Here, you set the lifecycle stages to include - which effectively allows you to filter what companies are imported into Halo (based on their Lifecycle Stage in HubSpot).
Below this, you have a "Company/Site" mapping table. This table allows you to establish which customers in HubSpot equate to those in Halo (this is to avoid duplication of Customers in Halo when their names are not identical in HubSpot).
Fig 5. Companies tab.
When adding Company/Site mappings, the popup to correspond them will appear like below.
Fig 6. Company/Site Mapping popup.
Note: Non-mapped Customers will match to Halo Customers by name.
Once you have filled your Customer mapping table with your respective HubSpot/Halo Customer pairs, you can add to the "Field Mappings" table.
Fig 7. Field Mappings table.
This table allows you pull in additional information from HubSpot. HubSpot fields can be mapped to Custom Customer fields in Halo, these can be created via heading to Configuration > Custom Objects > Custom Fields, then selecting the "Customer" entity below.
Fig 8. Customer custom field.
The type of field from HubSpot must be mapped to a custom field in Halo of the same type, i.e. mapping a checkbox field from HubSpot will require you to map to a Halo field of type "Checkbox". Please note that single and multi-select fields are not supported. Single/multi select fields in Hubspot cannot be imported into Halo.
Once you've filled this out, click the "Import Companies" button at the bottom to bring your HubSpot Customers into HaloPSA.
If you use top levels in Halo, you can also choose a default top level for new customers from HubSpot in the "Top Level for New Customers" single select dropdown.
Sync Company address data from HubSpot - When this is enabled company address data from Hubspot will be imported into Halo against the associated customer.
Contact Imports
Contacts can also be imported from HubSpot into Halo. In a similar way to the above point, you can also map contact fields between Halo and HubSpot.
Click into the "Contacts" tab to be presented with this screen to map. HubSpot contact fields can only be mapped to user custom fields in Halo, but the contact name, last name, email and phone number will be mapped to these system fields in Halo automatically.
There is also a "Default Site for new Users" dropdown underneath. This is used as a fail-safe: if a user is imported from HubSpot but their Company record has not been mapped/imported, then the user will be located at the site specified here.
Fig 9. Contacts field mappings.
These fields, just like the customer fields, need to be of a similar type and single/multi-select fields cannot be mapped.
When establishing field mappings (for Companies and Contacts), you will see an option for how these sync between Halo and HubSpot. This dropdown is where you can select how you want this field to sync.
Fig 10. Sync options.
Product Imports
Items can also be imported and synced between HubSpot and Halo. You can also map item fields between Halo and HubSpot.
Fig 11. Products tab.
First you will need to choose an item group for new items, this will be the group that new items are created under in Halo when imported from HubSpot into Halo.
Then you can map HubSpot item fields to Halo item fields using the mapping table. When mapping items you will have a "Field sync option" - this determines the direction of the sync, e.g. HubSpot to Halo only will create and update this field in Halo when changed in HubSpot but will not push changes from Halo to HubSpot. Bidirectional will push changes that are made in either application. Once mapped click the "Import Items" button to bring items into Halo from HubSpot.
Automated syncing of products between Halo and HubSpot (a bidirectional sync) is possible. See the section 'Syncing to Hubspot' for more information on this.
Quotation Imports
Quotations can also be imported from HubSpot into Halo. In a similar fashion to the above point, you can also map quote fields between Halo and HubSpot.
Head to the "Quotations" tab and map HubSpot quotation fields to Halo quotation fields using the mapping table. There are separate mapping tables to map quotation fields and quotation line fields.
Fig 12. Quotation import configuration page.
Quote Line Grouping Fieldmapping - Here you can choose a HubSpot field to group quote line items by. If two quote line items have the same value in the field chosen here, they will be grouped together when the quote is imported into Halo.
Products against quotations in HubSpot do not need to exist in Halo for the quote to be imported. If you would like products against quote lines that do not yet exist in Halo to automatically create in Halo, enable 'Create new items from lines (if not matched)'. If the name of the line item on the quotation matches the name of an item in Halo, it will be matched to this product rather than creating a new one.
Create new items from lines (if not matched) - When enabled any quotation line items from imported quotes will automatically be created as products in you Halo instance if they cannot match to an existing product. Products are matched based on name. If this is enabled you will need to select which product group new products are created under.
Once mapped click "Import Quotations" to import quotations from HubSpot.
To have updates to quotations in HubSpot to sync to Halo, enable the quotation webhooks under the "Webhooks" tabs. These webhooks will sync changes in HubSpot into Halo.
Changes to quotations in HubSpot can be automatically synced to Halo (one-way sync). From v2.188+ you can enable a bi-directional sync, so changes to quotations in Halo will also sync back to HubSpot . See the section 'Syncing to Hubspot' for more information on this.
Deal Imports
Deals can also be imported from HubSpot into Halo. In a similar fashion to the above point, you can also map deal fields between Halo and HubSpot.
First select the ticket type that you would like the HubSpot deal to create in Halo.
Then add mappings for HubSpot deal fields to Halo ticket/opportunity fields. You will be given a "Field sync option" tis will determine which direction the field can sync in. If a HubSpot field is read-only this field can only sync one way (HubSpot to Halo) ad Halo will not be able to make changes to this field.
Fig 13. Deals tab.
Enable Quote Imports for Deals - When this is enabled any quotes against deals in HubSpot will be imported alongside the Deal. This quote will be created in Halo and linked to the associated opportunity ticket that is created in Halo. When this is enabled you will have some additional configuration options.
- Create new items from lines (if not matched) - When enabled any quotation line items from quotes imported alongside a Deal will automatically be created as products in you Halo instance, if they cannot match to an existing product. Products are matched based on name. If this is enabled you will need to select which product group new products are created under.
- Quote Line Grouping Fieldmapping - Here you can choose a HubSpot field to group quote line items by for quotes imported alongside a Deal. If two quote line items have the same value in the field chosen here, they will be grouped together when the quote is imported into Halo.
- Line Field Mappings - Here you can configure quotation line field mappings, these mappings will only apply to quotations imported alongside a Deal.
Note: If the opportunity does not match a client, the quote will have no client.
Once mappings are set click the "Import Deals" button. You will be given a preview of the deals that will be imported before the import begins. Only open deals will be able to be imported but if you do not want certain deals to be imported you may want to filter these results and only import selected deals.
If you would like each change to a deal in HubSpot to sync to Halo, enable the deal (Opportunity) webhooks under the "Webhooks" tab of the integration setup. These webhooks will sync changes made to deals in HubSpot into Halo. Webhooks will sync changes when a deal is created, updated or deleted in Halo. From v2.188+ deals can be synced bi-directionally so any changes made to opportunities in Halo can be synced back to a deal in HubSpot . See the section 'Syncing to HubSpot' for more information on this.
If you do not import an existing deal in HubSpot then any further changes to this in HubSpot will not be synced to Halo as it does not exist in Halo. If a new deal is created in HubSpot after the webhooks are enabled this will create the deal in Halo and sync further changes.
Syncing to HubSpot
Updates to companies and contacts in HubSpot can be synced back to Halo automatically, this is done on an automated schedule via the Halo Integrator. head to the 'Syncing to HubSpot tab' and check "Enable the Halo Integrator for the HubSpot integration" and select which entities you would like to automatically import. The import will take place on a daily basis.
Fig 14. Syncing to HubSpot tab.
You can also sync data the other way, from Halo to HubSpot. This is configured in the 'Syncing to HubSpot' section of the 'Syncing.
The following entities can be synced to HubSpot when they are created and/or updated in Halo:
- Customers
- Users
- Products
- Quotations (v2.188+)
- Deals (v2.188+)
To enable a sync for each of these entities use the respective dropdown and choose when you would like the entity to sync.
- Disabled - Changes to this entity will not sync to HubSpot
- Create/Update - When this entity is created it will be created in HubSpot. Any changes to the entity in Halo will update the associated entity in Hubspot.
- Create Only - When this entity is created in halo it will be created in HubSpot. When it is updated in Halo, these changes will not update the associated entity in HubSpot.
- Update Only - When this entity is created in Halo it will not be created in HubSpot. When it is updated in Halo, these changes will update the associated entity in HubSpot.
Sync Action Notes to HubSpot notes for Deals - When enabled, action notes added to sales/opportunity tickets will be synced across to the linked Deal in HubSpot. For more information on this see the section 'Syncing Deals to HubSpot'.
Delete Companies and Contacts in HubSpot when deactivating Customers/Users in HaloPSA - When enabled, companies and users will be deactivated in Hubspot when they are deactivated in Halo. You must have customer/User webhooks set to be 'Update Only' or 'Create/Update' to use this functionality.
Show a message for each successful sync to HubSpot - When enabled, each time an entity is synced to Hubspot a pop-up message will appear to confirm if the sync was successful or not.
Syncing Quotations from Halo to Hubspot (v2.188+)
From v2.188+ when quotes are updated and created in Halo, changes can be synced into HubSpot. Allowing a two way sync of quotations between Halo and HubSpot.
This is enabled using the 'Syncing Quotations' single select field under the Hubspot integration setup page. The option selected in this field will determine when quote data is synced to HubSpot.
Only quotes associated with an opportunity/sales ticket in Halo will sync across to Hubspot. When a quote is created in Halo the following information will pull through to the quote created in HubSpot
- The HubSpotdeal associated (synced) with the opportunity ticket in Halo the quote is linked to
- The user/contact assigned the quote in Halo (provided this user/contact exists in HubSpot)
- Line items and prices
- Even if the products on the quote do not exist in HubSpot, the line item description will pull through the quote in Hubspot.
Note: The sender of the quote will not sync to Hubspot, this will need to be set against the quote in HubSpotwhen it has synced across.
This quote will now be visible in your 'Quotes' area in HubSpotor against the associated deal. The quote will sync to HubSpot as soon as it is saved in Halo, however, you will not receive a pop-up message to confirm the sync.
Syncing Deals/opportunities from Halo to HubSpot(v2.188+)
From v2.188+ opportunities/sales tickets created in Halo can create deals in Hubspot. Additionally any notes added to the opportunity in Halo can sync over to the Deal in HubSpot, allowing agents to work on the opportunity/deal from both platforms.
Enable this functionality using the 'Syncing Deals' single select field within the 'Syncing to HubSpot' tab of the integration set page.
Fig 15. Enable deal syncing
If you would like action notes to be synced over to HubSpot you will also need to enable 'Sync Action Notes to HubSpot notes for Deals' found on the same page.
The creation of a Deal in HubSpot will need to be triggered using an action in Halo that has the system use 'Sync to HubSpot'. To set this up head to configuration > tickets > actions > new > set the system use of the action to be 'Sync to Hubspot'. You can add any additional fields you like to this action but the content of these fields (including the note field) will not sync to the deal in HubSpot. We advise creating an action dedicated to triggering sync to HubSpot, if doing this make the action a quick action for ease of use.
Fig 16. Action to trigger sales ticket to sync to HubSpot.
Now ensure this action is added to the relevant sales workflows so it is available for agents to use.
Now, when this action is used on a sales ticket a sync to HubSpotwill take place and a Deal will be created in HubSpot. You only need to trigger the sync once per ticket, any further updates to the ticket in Halo will sync over to Hubspot automatically.
Note: Fields will sync in line with the field mappings configured under the 'Deals' tab of the integration setup. See the section 'Deals' within this guide for more information on how to set these up.
If you have enabled the syncing of action notes, when an action containing the 'Note' field is added to the opportunity ticket, the contents of this note will sync over to the HubSpot deal.
Fig 17. Lead ticket in Halo with note added
Fig 18. Note synced to associated Deal in HubSpot
Note: As contact information cannot currently be synced from Halo to HubSpot when the deal is created in HubSpot the contact against the ticket in Halo will not be pulled across.
Webhooks for Inbound sync
The webhooks tab is where webhooks can be enabled for products, sales (deals/opportunity) and quotations. Enabling webhooks for entities will result in any updates to these entities in HubSpot syncing to Halo almost instantly. This will allow the immediate sync mentioned in each section previously.
Fig 19. Webhooks tab.
Enable Products Webhooks - When checked when a product is created or updated in HubSpot, this product will be created or updated in Halo.
Enable Sales Webhooks - When checked when a Deal is created or updated in HubSpot, a sales/opportunity ticket will be created or updated in Halo.
Enable Quotation Webhooks - When checked when a quotation is created or updated in HubSpot, this quotation will be created or updated in Halo.
Note: If you are using the 'custom developer app' authentication method webhooks will not be supported.
Popular Guides
- Asset Import - CSV/XLS/Spreadsheet Method
- Call Management in Halo
- Creating a New Application for API Connections
- Creating Agents and Editing Agent Details
- Departments and Teams
- Halo Integrator
- Importing Data
- Multiple New Portals with different branding for one customer [Hosted]
- NHServer Deprecation User Guide
- Organisation Basics
- Organising Teams of Agents
- Step-by-Step Configuration Walk Through