> ## Documentation Index
> Fetch the complete documentation index at: https://docs.getnovaplan.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Salesforce and HubSpot

> Feed revenue pipeline and ARR events from your CRM into the revenue model.

The CRM connector feeds revenue pipeline and ARR events from Salesforce or HubSpot into
Novaplan's revenue model. Pipeline opportunities drive the forecast, and ARR movement events
(new, expansion, contraction, churn) become the revenue actuals that reconcile against your plan.

## Set up the sync

<Steps>
  <Step title="Connect your CRM">
    In Admin -> Integrations, authorize Salesforce or HubSpot with your CRM credentials.
  </Step>

  <Step title="Choose the domain">
    Decide whether the feed populates pipeline, ARR actuals, or both. Routing per domain keeps
    this explicit so the right CRM data lands in the right place.
  </Step>

  <Step title="Map fields and stages">
    Map CRM fields onto Novaplan's canonical pipeline and ARR fields, and map CRM stages onto your
    canonical stages. Nova can suggest a mapping you review before saving.
  </Step>

  <Step title="Reconcile accounts">
    Confirm that CRM accounts reconcile to canonical accounts by ID, so a renamed customer stays
    one account.
  </Step>

  <Step title="Run the first sync">
    Run the sync and confirm in [Pipelines](/admin/pipelines) that opportunities and events landed
    and curated.
  </Step>
</Steps>

## Field mapping

| Canonical field | Typical CRM source |
| - | - |
| Account | The CRM account, reconciled to a canonical account |
| Stage | The opportunity stage, mapped to a canonical stage |
| Amount | The opportunity or contract amount |
| Expected close | The close or go-live date |
| Owner | The opportunity owner |
| Segment | Customer segment, where present |
| ARR delta | The ARR change for an actual movement event |
| Movement component | New, expansion, contraction, or churn |

<Note>
  Pipeline stages carry weights so a forecast can probability-weight open opportunities, separate
  from realized ARR movement. The two are distinct axes and both can be meaningful on one account.
</Note>

## Common questions

<AccordionGroup>
  <Accordion title="Can pipeline and ARR actuals come from different sources?" icon="sitemap">
    Yes. Routing decides which source feeds each domain, so you can pull pipeline from the CRM and
    ARR actuals from a warehouse, or the reverse, with priority breaking ties.
  </Accordion>

  <Accordion title="A deal is not showing in the forecast" icon="chart-line">
    Confirm its stage is mapped to a canonical stage and its account reconciled to a canonical
    account, then re-run the sync.
  </Accordion>
</AccordionGroup>

## Troubleshooting

* **Sync fails to authorize:** the CRM credential has expired or rotated. Re-authorize in
  Admin -> Integrations.
* **Stages do not roll up:** an unmapped CRM stage will not roll up. Add the stage mapping in
  [Dimensions](/admin/dimensions).
* **An account appears twice:** two CRM account names are reconciling to two IDs. Map both onto
  one canonical account.
* **ARR amounts look masked:** customer-linked revenue amounts are sensitive fields. See
  [Permissions](/admin/permissions).
