---
sidebar_position: 2
title: Customer Ingestion & CRM Sync
description: How customer records enter GAAPx via bidirectional CRM sync with Salesforce and HubSpot, API webhooks, and manual CSV imports.
keywords:
  - customer ingestion
  - CRM sync
  - Salesforce customer sync
  - HubSpot customer sync
---

# Customer Ingestion & CRM Sync

**Customer Ingestion in GAAPx** is the automated pipeline that provisions new customer accounts into the AR subsidiary ledger from your CRM, CPQ systems, or billing APIs. By ingesting accounts prior to contract execution, GAAPx ensures zero delay when an order form is signed.

:::info SCREENSHOT PLACEHOLDER: CRM Ingestion & Sync Mapping
**Location in App**: `App > Integrations > Salesforce / HubSpot > Customer Mapping`  
**Visual Description**: Interactive sync settings screen showing field mapping between CRM Account object and GAAPx Customer Master.  
**Recommended Dimensions**: `1200 x 675`  
:::

---

## Ingestion Channels

### 1. Real-Time CRM Webhook Sync
When an Account is created or updated in **Salesforce** or **HubSpot**, GAAPx receives a real-time event via webhook.
* New accounts are instantly provisioned with default currency, tax exempt status, and address verification.
* Custom CRM fields (e.g., *Customer Tier*, *Account Executive*, *Parent ID*) map directly to GAAPx metadata.

### 2. Contract-Driven Ingestion
If a contract is ingested from **Box**, **Google Drive**, or **Email Ingest** before an account exists in the CRM:
* The **AI Contract Ingestion Agent** extracts the legal entity name, corporate address, and signing contact.
* A draft customer record is created with an "Unlinked Account" flag, allowing RevOps to confirm or merge with an existing CRM record.

### 3. Bulk CSV / API Ingestion
For platform migrations, historical data can be imported via REST API (`POST /v1/customers`) or bulk CSV upload with built-in validation checks.

---

## Data Flow & Sync Cycle

```mermaid
sequenceDiagram
    autonumber
    participant CRM as Salesforce / HubSpot
    participant GAAPx as GAAPx Subsidiary Ledger
    participant ERP as QuickBooks Online / NetSuite

    CRM->>GAAPx: Account Created / Updated (Webhook)
    GAAPx->>GAAPx: Validate Address & Tax ID
    GAAPx->>ERP: Check / Create Customer in GL
    ERP-->>GAAPx: Return ERP Customer ID
    GAAPx-->>CRM: PUSH GAAPx Customer ID & AR Balance
```
