CRM Integration Patterns

Recommended integration patterns for Salesforce, HubSpot, Zoho, and similar CRMs.

Most customers integrate B2 Systems with a CRM such as Salesforce, HubSpot, Zoho, or a custom system.

Use external_id to keep B2 Systems jobs connected to your CRM records.

Recommended CRM Fields

Store these values on your CRM deal or opportunity record:

  • b2_external_id: your CRM record id or a stable integration id.
  • b2_parsing_id: returned by InFlow.
  • b2_matching_id: returned by TrueSight.
  • b2_deal_id: returned when create_deal is true.
  • b2_parsing_status
  • b2_matching_status
  • b2_last_error_code
  • b2_last_error_message

Pattern 1: Parse PDFs and Update CRM

Use this when your CRM stores bank statement PDFs.

  1. User uploads PDFs to your CRM.
  2. Your server calls POST /v1/inflow/parsing.
  3. Store parsing_id on the CRM record.
  4. Listen for inflow.parsing.completed.
  5. Fetch GET /v1/inflow/parsing/{parsing_id}.
  6. Save parsed financials and review status to the CRM.

Pattern 2: Parse Then Match

Use this when you want B2 Systems to extract financial data before matching.

  1. Submit PDFs to InFlow.
  2. Wait for inflow.parsing.completed.
  3. Call POST /v1/truesight/matching with the completed parsing_id.
  4. Store matching_id.
  5. Wait for truesight.matching.completed.
  6. Fetch matching results and update the CRM record.

Pattern 3: Match CRM Data Directly

Use this when the CRM already has application and financial data.

  1. Map CRM fields to the B2 Systems application and financials shape.
  2. Call POST /v1/truesight/matching.
  3. Store matching_id.
  4. Fetch matching results or wait for the webhook.
  5. Update CRM fields with funder matches and match score.

Pattern 4: Create a Dashboard Deal

Use this when your team wants dashboard visibility.

Set create_deal to true on InFlow or TrueSight.

Store the returned deal_id in your CRM. Your team can then open the related deal in B2 Systems.

Webhook Processing Pattern

Use webhooks to wake up your integration, not as the only source of data.

Recommended flow:

  1. Receive webhook.
  2. Verify signature.
  3. Store event id for idempotency.
  4. Return 2xx.
  5. Fetch the latest object from B2 Systems.
  6. Update your CRM.

Field Mapping Tips

Use reference endpoints for countries, states, provinces, entity types, and industries.

Send country with state_region when possible.

Use external_id on every create request.

Keep API keys server-side. Do not call B2 Systems directly from browser-based CRM scripts.


Did this page help you?