Connect Salesforce
Salesforce is an Enterprise or contracted integration. When enabled, it pushes BizRnR conversations into Salesforce as a Lead or Contact + Task, and pulls Lead/Contact context back so the AI sounds informed when someone calls.
Prerequisites
You'll need a Salesforce admin (or an integration user with admin-equivalent permissions) for the initial setup. We use a Connected App with OAuth 2.0 + refresh-token flow — no passwords are stored, no IP-allowlist gymnastics required.
The integration works with Sales Cloud Professional and above. Essentials Edition does not expose the REST API we need; Enterprise and Unlimited give you everything plus Audit Trail support.
Connect the integration
- Open Settings → Integrations → Salesforce and click Connect.
- Choose Production or Sandbox. Sandbox connects to
test.salesforce.com; Production tologin.salesforce.com. You can connect both at once for staging. - Sign in with the Salesforce admin account and approve the requested scopes:
api(read/write to standard objects)refresh_token, offline_access(so we can keep syncing when you're offline)
- You'll be redirected back to BizRnR with a green "Connected" badge.
Choose your sync model
Open Integrations → Salesforce → Sync model and pick one:
- Lead-first (default for B2C) — every new BizRnR conversation creates a Lead. When the Lead is converted in Salesforce, future BizRnR conversations log against the resulting Contact.
- Contact-first (B2B with named accounts) — we look up by email/phone against Contact, Lead, and PersonAccount in that order. We only create a Lead if no match is found.
- Account-aware — the AI is told the Account name and recent Opportunities for any matched Contact when your contracted setup includes that context. Useful for inbound sales lines where context matters.
Map your fields
Field mapping in Salesforce is more strict than HubSpot — type mismatches throw on save, not on sync. Use the Test mapping button before saving any new mapping. Common picks:
- Standard
Description__c→ BizRnR conversation summary - Custom
BizRnR_Last_Intent__c(Picklist) → AI-detected intent - Custom
BizRnR_Lead_Score__c(Number, 0-100) → score Lead.SourceorContact.LeadSource→ set to "BizRnR" for first-touch attribution
If your Salesforce instance has page-layout-level field requirements (a "Required" red asterisk), make sure either the BizRnR mapping populates them or the field has a default value — otherwise the sync will fail with a REQUIRED_FIELD_MISSING error.
Activity logging
Every conversation creates a Salesforce Task with:
- Subject:
BizRnR <channel> conversation(e.g., "BizRnR voice conversation") - Description: full transcript + AI's reasoning summary
- ActivityDate: conversation date
- WhoId: Lead or Contact ID
- Status: Completed
Tasks roll up into the Lead/Contact Activity History so reps see the conversation in context. If your team uses Lightning Experience, the timeline shows it inline; in Classic, it's the Activity related list.
Sync direction + frequency
- BizRnR → Salesforce: real-time at conversation end (typically <2 seconds after the call ends)
- Salesforce → BizRnR: every 5 minutes via Salesforce's Outbound Messaging or platform events (we configure both during onboarding — no admin work for you)
A delta-sync runs nightly to catch anything Salesforce dropped (rare, but their Bulk API occasionally throttles us during your off-hours).
Troubleshooting
"Insufficient privileges" on Task creation. The integration user doesn't have Edit Tasks permission. Add it to their profile or switch to an admin user.
Duplicate Leads created. Your Salesforce duplicate rules don't include phone+email matching. Either update the rule or switch the BizRnR sync model to Contact-first, which deduplicates more aggressively.
Sync paused after 24 hours. Salesforce's refresh-token expired (rare, but happens after admin password resets). Reconnect from Integrations → Salesforce; no data is lost — we resume from the last sync timestamp.
For Enterprise accounts running custom objects or Apex triggers that touch Lead/Contact, talk to your account team. We can route writes through a custom REST endpoint instead of the standard one to play nicely with your business logic.