HubSpot Subscription Installation
This article will describe how to install and set up the subscription module with Hubspot CRM enabling sellers to generate renewal quotes.
The subscriptions module will serve as a repository for all of the buyer's subscriptions.
Prerequisites
The Subscription package uses a custom object. Hence, the customer should have the following:
- At least one HubSpot product with an enterprise subscription
Have less than 10 Custom objects or permissions for more than 10.
Step 1: Provide Permission for Custom Objects
Run the Installation Link (Not from Marketplace) and give DealHub permission to create and read Custom objects. Use the correct link depending on the location of your DealHub instance.
- EU - https://service-eu1.dealhub.io/hubspot/installLink
- US - https://service-us1.dealhub.io/hubspot/installLink
Please choose a specific HubSpot account and click the 'Choose Account' button
- Please accept the permission request by clicking the 'Connect App' button
- You will be redirected to an empty page with a text message that integration was set successfully.
Step 2: Installing the HubSpot Subscription Module
- Log in to your DealHub instance, switch to admin mode, and click on the 'System Setting' icon
- To install the Subscription Module in HubSpot, click on the 'Subscriptions Setup' button
- You may receive the following message: "Subscriptions Module installation process has been initiated and is in progress. Please note that this process may take some time to complete. If any errors occur during the installation process, you will receive a notification email with the details."
Once the installation is finished, You will see the following indication: "Subscriptions Module is already installed in HubSpot CRM."
Step 3: Setup External Query
In DealHub, go to admin mode > version settings > advanced settings > Manage External Query
and create a new query.
HubSpot Entity name: dealhub_subscription
Main Query:
{ "properties": ["dh_subscription_product_name","dh_subscription_status","dh_subscription_factors","dh_subscription_line_list_price","dh_subscription_line_discount","dh_subscription_line_net_price","dh_subscription_start_date","dh_subscription_end_date"], "filterGroups": [ { "filters": [ { "propertyName": "dh_subscription_account", "operator": "EQ", "value": "EXTERNAL_FIELD(COMPANY.hs_object_id)" }, { "propertyName": "dh_subscription_status", "operator": "EQ", "value": "expired" } ] }, { "filters": [ { "propertyName": "dh_subscription_account", "operator": "EQ", "value": "EXTERNAL_FIELD(COMPANY.hs_object_id)" }, { "propertyName": "dh_subscription_status", "operator": "EQ", "value": "active" } ] } ] }
Step 4: Configure the Filter Field
In DealHub, go to admin mode > version settings > advanced settings > HubSpot Settings,
scroll to the last section of the page, and click 'Add Field' Add the field COMPANY.hs_object_id and click Save.
Step 4: Configure HubSpot workflow #1: Activation Time
In HubSpot, go to Automation > Workflows
Click the 'Create workflow' button > 'From scratch':
From the left slide menu, choose the 'Subscription (DealHub)-based' option and click Next.
Click the 'Set Up Triggers' button > 'When filter criteria is met' > Filter Type: Subscription (DealHub) > Property: 'Activation Time' > 'is known' > Apply Filter > Save
Click the plus sign
Add 'Delay until a date' > Subscription (DealHub) date property > Property: Activation Time > Delay Timing: On Date > Time of day: Check: 'Yes, Add a branch' checkbox > Save
For the 'On assigned date' and 'After assigned date' - Please use the plus sign and add an if/then branch > Branch Name: If Pending > Filter Type: Subscription (DealHub) > From the field list, choose 'Status' > is any of: Pending > Apply Filter > Save
On the 'If Pending' branch, use the plus sign and add action - ‘Set property value’ > Choose a property: Status > Status: Active > Save
The final results should look similar to the one in the screenshot below:
Step 5: Configure HubSpot Workflow #2: Expiration Time
- In HubSpot, go to Automation > Workflows
- Click the 'Create workflow' button > 'From scratch':
- From the left slide menu, choose the 'Subscription (DealHub)-based' option and click Next.
- Click the 'Set Up Triggers' button > 'When filter criteria is met' > Filter Type: Subscription (DealHub) > Property: 'Expiration Time' > 'is known' > Apply Filter > Save
- Click the plus sign. Add 'Delay until a date' > Subscription (DealHub) date property > Property: Expiration Time > Delay Timing: On Date > Time of day: Check: 'Yes, Add a branch' checkbox > Save
- For the 'On assigned date' and 'After assigned date' - Please use the plus sign and add an if/then branch > Branch Name: If Active> Filter Type: Subscription (DealHub) > From the field list, choose 'Status' > is any of: Active> Apply Filter > Save
- On the 'If Pending' branch, use the plus sign and add action - ‘Set property value’ > Choose a property: Status > Status: Expired> Save
The final results should look similar to the one in the screenshot below:
Step 6: Sync Activation and Expiration Time
You have to make sure you populate dates to activation and Expiration time fields.
You have two options:
- Using proposal attributes as appears on the screenshot below
- Sync only the 'start date' and 'End date' and use a workflow in HubSpot that will populate those fields with values