Skip to content
  • There are no suggestions because the search field is empty.

HubSpot

Connect Anedot to HubSpot to automatically send contact and donation data, configure custom Deal properties, map hidden fields, and manage supporter records directly within your CRM.

HubSpot is a powerful CRM platform offering tools for supporter management, marketing, sales, and content—all in one place. Anedot integrates with HubSpot to relay Contact and Deal data from Submissions and Donation Events collected through Action Pages.


Table of Contents


Connecting Anedot to HubSpot

Follow these steps to connect your Anedot fundraising account to HubSpot:

  1. In your Anedot account, go to Settings > Integrations > Directory.

  2. Click + New Connection in the top-right corner.

  3. Select HubSpot from the list.

  4. Choose the Action Pages to sync (default is all).

    • To exclude pages, list their Action Page IDs (comma-separated).

  5. (Optional) Limit the sync to a specific Team.

  6. (Optional) If you're only sending Contact data, skip the next step.

    • You’ll be redirected to log in to HubSpot and select the account you want to connect. If the connection is successful, you’ll return to the Integration Directory in Anedot. If it fails, an error page will appear—please contact our Support team and include a screenshot of the error message.
  7. To include Donation Events as Deals, enter your HubSpot Pipeline ID and Deal Stage ID:

    1. Go to Sales > Deals > Edit Pipelines in HubSpot.

    2. Select a Pipeline from the Select a pipeline list
    3. Use the </> icon to copy the IDs for your desired Pipeline and Stage.

  8. (Optional) Set up Custom Deal Properties in HubSpot. (See below for instructions).

    1. Action Page Name (single-line text)
    2. Communications Consent Email (single checkbox)
    3. Communications Consent Phone (single checkbox)
    4. Transaction ID (single-line text)
    5. Recurring (single checkbox)
    6. Source Code (single-line text)
    7. UTM Campaign (single-line text)
    8. UTM Content (single-line text)
    9. UTM Medium (single-line text)
    10. UTM Source (single-line text)
    11. UTM Term (single-line text)
  9. Click Save
  10. You'll be redirected to log in to HubSpot and select your account. 
    • If the connection succeeds, you'll return to Anedot. 
    • If it fails, contact Anedot Support and include a screenshot of the error. 

Once connected, you can update Action Pages and Team settings anytime.

To change credentials, you must create a new HubSpot connection.

Avoid multiple HubSpot connections for the same Deal data—this can cause duplicate Deals in HubSpot.


Set Up Custom Deal Properties in HubSpot

To relay extra data (like UTM parameters or recurring status), create custom properties:

  1. Go to Settings > Properties in HubSpot.

  2. Under Select an Object, choose Deal properties.
    CleanShot 2025-06-05 at 09.52.20@2x

  3. Click Create Property, then:

    1. Set Object type to Deal

    2. Set Group to Deal Information

    3. Add your Label and choose the appropriate Field Type (see table below)
      CleanShot 2025-06-05 at 09.53.36@2x

      • Tip: If the checkbox is selected, leave the default values (see example below).
        CleanShot 2025-06-05 at 10.01.50@2x
    4. Click Next

  4. (Optional) Select Property Rules.

  5. Click Create.

  6. Copy the Internal ID of each property for use in Anedot.

    1. Navigate to Deal Properties
    2. Click Edit and click the </> icon to copy the Internal ID
    3. Paste the ID into the corresponding Anedot field (HubSpot connection drawer in  Anedot (Settings > Integrations > Directory)).

Field Type

Anedot Field Hubspot property type
Action Page Name single-line text
Communications Consent Email single checkbox
Communications Consent Phone single checkbox
Recurring single checkbox
Source Code single-line text
UTM Campaign single-line text
UTM Content single-line text
UTM Medium single-line text
UTM Source single-line text
UTM Term single-line text

Set Up Custom Hidden Fields

To relay Custom Hidden Field data from Anedot to HubSpot, start by creating a corresponding Custom Property in HubSpot and then link it to Anedot.

Step 1: Create a Custom Property in HubSpot

  1. In HubSpot, go to Settings > Data Management > Properties.

  2. From the Object dropdown, select Deal properties.

  3. Click Create Property.

  4. Fill in the following:

    • Property Label (your internal field name)

    • Object Type: Deal

    • Group: Deal Information

    • Field Type: Single-line text

  5. Click Create in the top-right corner.

  6. After creation, copy the field’s Internal ID by clicking the </> icon—this will be used in Anedot.


Step 2: Create a Custom Hidden Field in Anedot

  1. In Anedot, go to the Action Page Builder > Form tab.

  2. Add a Custom Field and set the Field Type to Hidden.

  3. Name the field using the format:
    hubspot_{internal_id}
    Example: hubspot_account_id

  4. Assign the value to be passed using one of the following methods:

    • Global Value – applies the same value to all pages using the field.

    • Page Specific Value – leave Global Value blank, then go to Settings > Sharing > Page Specific Values.

    • URL Parameter – leave both Global and Page-Specific values blank to pass dynamic values via URL.

  5. Click Save to store the Hidden Custom Field.

  6. Click Publish to apply your changes to the page.


Data Relays and Behavior

  • Anedot sends relays for both Donation and Lead Pages.

  • Custom Hidden Fields are supported; non-hidden custom fields are not.

  • If no Deal Stage is set, only basic contact info is relayed:

    • First Name, Last Name, Phone, Address, City, State, Zip

  • If a donor record does not exist in HubSpot, a new contact is created. Otherwise, the existing record is updated with any new data.

Field Mapping

Contact Relays

HubSpot Contact Relays are sent as grouped properties with a value. For example: {"value": "Annie", "property": "firstname"}

Anedot Field Hubspot Property
firstName firstname
lastName lastname
phone phone
address {line1} address
address {city} city
address {region} state
address {postal_code} zip

Deal Relays

Anedot Field Hubspot Property
totalAmount (x100) amount
"firstName lastName - (totalAmount x 100)" dealname
"default" pipeline
**utmCodes {term} utm_term
created_at (timestamp on submission) closedate
dealstage (Hubspot Property) dealstage
"true" or "false" recurring
**utmCodes {medium} utm_medium
**utmCodes {source} utm_source
sourceCode source_code
**utmCodes {content} utm_content
**utmCodes {campaign} utm_campaign
actionPage {name} action_page_name
communicationsConsentEmail ("true" or "false") communications_consent_email
communicationsConsentPhone ("true" or "false") communications_consent_phone
vid (from Contact Relay Response Body) associations_to_id
- "HUBSPOT_DEFINED" "3" types { associationTypeId associationCategory}

**UTM fields can be added to the Page URL.


Payload Data for Contact Relays

All Lead Page submissions are sent to HubSpot as Contact relays.
Donation Page submissions are also sent as Contact relays—but only if Deals are not configured.

If a donor does not already exist in HubSpot, a new contact record will be created. If the contact exists, HubSpot will update the record with any new or different information included in the relay.

Request Body

{
  "properties": [{
    "value": "Annie",
    "property": "firstname"
  }, {
    "value": "Dot",
    "property": "lastname"
  }, {
    "value": "8888882343",
    "property": "phone"
  }, {
    "value": "777 Anedot Way",
    "property": "address"
  }, {
    "value": "Anedot",
    "property": "city"
  }, {
    "value": "LA",
    "property": "state"
  }, {
    "value": 70112,
    "property": "zip"
  }]
}

Response Body

{
  "vid": 101,
  "is_new": false
}

Payload Data for Deal Relays

Request Body (without Custom Deal Properties)

{
  "properties": {
    "amount": "50.00",
    "dealname": "Annie Dot - 50.00",
    "pipeline": "default",
    "closedate": "2023-03-30T15:07:19Z",
    "dealstage": "66041629"
  },
  "associations": [{
    "to": {
      "id": "2551"
    },
    "types": [{
      "associationTypeId": 3,
      "associationCategory": "HUBSPOT_DEFINED"
    }]
  }]
}

Request Body (with Custom Deal Properties)

{
  "properties": {
    "amount": "50.00",
    "dealname": "Annie Dot - 50.00",
    "pipeline": "",
    "utm_term": null,
    "closedate": "2023-05-09T19:44:21Z",
    "dealstage": "66041629",
    "recurring": true,
    "utm_medium": null,
    "utm_source": null,
    "source_code": "1234555",
    "utm_content": null,
    "utm_campaign": null,
    "action_page_name": "Page 8",
    "communications_consent_email": true,
    "communications_consent_phone": true
  },
  "associations": [{
    "to": {
      "id": "5651"
    },
    "types": [{
      "associationTypeId": 3,
      "associationCategory": "HUBSPOT_DEFINED"
    }]
  }]
}

Response Body

{
  "id": "12777199902",
  "archived": false,
  "created_at": "2023-03-30T15:07:20.732Z",
  "properties": {
    "amount": "50.00",
    "dealname": "Annie Dot - 50.00",
    "pipeline": "default",
    "closedate": "2023-03-30T15:07:19Z",
    "dealstage": "66041629",
    "createdate": "2023-03-30T15:07:20.732Z",
    "hs_is_closed": "false",
    "hs_object_id": "12777199902",
    "days_to_close": "0",
    "hs_createdate": "2023-03-30T15:07:20.732Z",
    "hs_closed_amount": "0",
    "hs_is_closed_won": "false",
    "hs_is_deal_split": "false",
    "hs_forecast_amount": "50.00",
    "hs_lastmodifieddate": "2023-03-30T15:07:20.732Z",
    "hs_projected_amount": "0",
    "amount_in_home_currency": "50.00",
    "hs_deal_stage_probability_shadow": "0.100",
    "hs_closed_amount_in_home_currency": "0",
    "hs_projected_amount_in_home_currency": "0"
  },
  "updated_at": "2023-03-30T15:07:20.732Z"
}

Response Status (Success)

201