Skip to main content

Documentation Index

Fetch the complete documentation index at: https://grantmaster.dev/llms.txt

Use this file to discover all available pages before exploring further.

Integration Guide: HubSpot CRM

Overview

GrantMaster integrates with HubSpot CRM to synchronize funder and contact data. This enables organizations to manage donor relationships in HubSpot while keeping grant-specific data in GrantMaster, with bidirectional sync ensuring consistency.

What It Does

FeatureDescription
Contact syncSyncs contacts between GrantMaster’s Relations module and HubSpot
Company syncMaps GrantMaster Grantors (funders) to HubSpot Companies
Deal pipeline mappingMaps GrantMaster Pipeline stages to HubSpot Deal stages
Activity loggingSyncs interaction history (meetings, emails, notes)
Bidirectional updatesChanges in either system are reflected in the other

Prerequisites

  • A HubSpot account (Professional or Enterprise plan recommended for full API access)
  • Admin role in GrantMaster
  • HubSpot API key or OAuth credentials

Setup

Step 1: Enable the Integration

  1. Go to Settings > Integrations > HubSpot
  2. Click Connect HubSpot
  3. Authenticate via OAuth — you will be redirected to HubSpot to grant access
  4. Select which HubSpot portal to connect (if you have multiple)

Step 2: Configure Field Mappings

After connecting, configure how fields map between systems:
GrantMaster FieldHubSpot FieldDirection
Contact nameContact First/Last NameBidirectional
Contact emailContact EmailBidirectional
Contact organizationContact CompanyBidirectional
Grantor nameCompany NameBidirectional
Grantor sectorCompany IndustryGrantMaster → HubSpot
Pipeline stageDeal StageBidirectional
Pipeline amountDeal AmountBidirectional
  1. Go to Settings > Integrations > HubSpot > Field Mapping
  2. Review the default mappings
  3. Customize or add additional field mappings as needed
  4. Click Save Mappings

Step 3: Configure Sync Direction

Choose the sync behavior for each entity type:
  • Bidirectional — changes in either system update the other (default)
  • GrantMaster → HubSpot — GrantMaster is the source of truth
  • HubSpot → GrantMaster — HubSpot is the source of truth
  • Disabled — no sync for this entity type

Step 4: Initial Sync

  1. Click Run Initial Sync to populate data
  2. Review the sync preview — it shows how many records will be created, updated, or skipped
  3. Confirm to start the sync
  4. Monitor progress on the sync dashboard

Day-to-Day Usage

Automatic Sync

Once configured, sync runs automatically:
  • Real-time for individual record changes (via webhooks)
  • Batch sync every 15 minutes for bulk updates
  • Full reconciliation nightly to catch any missed changes

Managing Contacts

  • Create a contact in either system — it appears in the other within minutes
  • Edit a contact — changes propagate based on your sync direction setting
  • Delete a contact — deletions are not synced (to prevent accidental data loss). Archive manually in the other system if needed.

Pipeline Sync

  • Move a pipeline entry in GrantMaster — the corresponding HubSpot Deal stage updates
  • Update a Deal stage in HubSpot — the GrantMaster Pipeline entry moves accordingly
  • Won/Lost status syncs in both directions

Troubleshooting

Sync Not Running

SymptomPossible CauseSolution
Records not appearingOAuth token expiredRe-authenticate via Settings > Integrations > HubSpot
Sync delayedBatch sync queue backed upWait for the next 15-minute cycle or trigger a manual sync
Partial syncField mapping mismatchCheck field mappings for unmapped required fields

Duplicate Records

  • GrantMaster uses email address as the primary key for contact deduplication
  • If duplicates appear, check for contacts with different email addresses representing the same person
  • Use HubSpot’s merge feature to resolve duplicates in HubSpot, then re-sync

Conflict Resolution

When the same record is edited in both systems between sync cycles:
  • Bidirectional mode: The most recent change wins (based on timestamp)
  • Source of truth mode: The designated source always overwrites the other

Best Practices

  • Set a clear source of truth for each entity type — bidirectional sync works but can cause confusion if teams edit both systems
  • Map pipeline stages before initial sync — mismatched stages create orphaned records
  • Monitor the sync dashboard weekly — catch failed syncs before they become data gaps
  • Don’t delete contacts in either system — archive instead, since deletions don’t sync
  • Use HubSpot for relationship management and GrantMaster for grant operations — avoid duplicating workflows

Limitations

  • Deletions are not synced between systems to prevent data loss
  • Custom HubSpot properties require manual field mapping configuration
  • HubSpot Free plan has limited API call quotas that may throttle sync frequency
  • File attachments (documents, proposals) are not synced — only metadata and links
  • HubSpot workflow automations triggered by synced data may cause unexpected side effects — test thoroughly