CIIFragments Studio is CII-accredited: recover up to 20% of your software development spendLearn more

Integrator for Salesforce

Integrating the Salesforce API into your system

We wire Salesforce into your SaaS: signup creates Account and Opportunity, usage lands on the Account, an incident opens a Case, Closed Won provisions. One shared truth, no double entry.

  • Senior product team
  • CRM connectors in production
  • from scoping to monitoring
In short

Why work with a Salesforce integrator and what can be connected to Salesforce?

Salesforce (Sales Cloud, Service Cloud, custom objects) is the CRM for complex organisations. You integrate it so it lives in your platform: signup creating Account and Opportunity, usage feeding the Account or a Subscription__c, product incident opening a Case, Closed Won provisioning and billing. Not a silo updated by hand. The work is the right channel for the volume (REST, Composite, Bulk, CDC), object dependencies and the shared org quota.

Use cases

What Salesforce changes in your platform

01

Signup creates Account and Opportunity

Signup or contract: account and opportunity are created together. No orphan record when one step fails.

02

Usage lands on the Account

Plan, volume, last sign-in, incidents. Sales filters real activity, and stops calling production.

03

Product incident opens a Case

A churn signal or a critical incident creates the support case. Sales and support see the same account before the upsell.

04

Closed Won provisions and bills

Closing won triggers the account, access and invoicing. Renewal starts from the same record, with amount, date and usage.

For you

What it changes in your product

Engineering in service of a measurable outcome: product → Salesforce, zero typing, org quota held.

The CRM stops being a silo

Contract, usage and incident become filterable info on the record. Your forecasts become usable again.

The connector does not take a Sales seat

A dedicated technical account for the integration, with minimal rights. Never a sales rep's login that leaves or changes password.

One record per account

Matching uses your business identifier, not email. Email is not reliable in B2B; the org stops filling with duplicates.

Salesforce stays available under load

We watch org quotas and throttle before a lockout. You avoid the day sales can no longer work.

Method

How we ship your Salesforce connector

01

Scoping

Where Salesforce enters your product: signup, usage, Case, Closed Won. Cloud (Platform by default), edition, volume/day, source of truth per field. Channel follows volume.

02

Mapping

Standard and custom sObjects, externalId, associations, merge policy. This is the step that decides success.

03

Development and testing

Integration User, Composite allOrNone, quota circuit-breaker, Pub/Sub client with replay id. Testing on a sandbox, validation rules diverge.

04

Monitoring

Alert before the 403, retry queue, CDC replay. You know a flow is broken before your sales team does.

The API

What the API brings to your platform

REST and SOQL
CRUD on sObjects, query up to 2,000 rows then nextRecordsUrl. Version in the URL, instance_url from the token, never a hardcoded na1 host.
Composite and upsert
Batch of up to 25 subrequests (each counted). Composite with referenceId and allOrNone. PATCH on externalId for idempotence.
Bulk API 2.0
Volumes from thousands to millions, async. The channel for overnight catalogue or order loads, with a per-row error report.
Pub/Sub, CDC, Platform Events
gRPC HTTP/2 Avro. This is not an HTTPS webhook to paste in Setup. Replay id persisted to catch a restart.
Glossary

The vocabulary of a Salesforce integration

Salesforce Platform
Sales Cloud, Service Cloud, Experience, custom objects. This is not Marketing Cloud, nor Commerce Cloud, nor Data Cloud.
Integration User
API Only technical account. Client credentials (Run-As User) or JWT Bearer. Username-password OAuth is an anti-pattern.
externalId
Unique business field for REST upsert. Without it, every form creates a duplicate. Email is not a B2B key.
Composite
Several subrequests in one HTTP call. Batch: 25, independent. Composite: referenceId and allOrNone. Every subrequest counts against the quota.
CDC
Change Data Capture: create, update, delete, undelete delta. Pub/Sub channel, not an HTTPS URL to paste in Setup.
Sforce-Limit-Info
api-usage=used/cap header on every REST call (except /). That is what we watch, not the 403.
Good to know

The real constraints of a Salesforce integration

01

The quota is an org cap

REST, SOAP, Bulk and Connect share the same 24 h counter. Enterprise starts at 100,000. A Composite batch of 25 does not save 24 calls against the quota, only latency.

02

There is no Salesforce webhook

CDC is not an HTTPS URL. You need a Pub/Sub client (or legacy CometD) that holds a connection and persists the replay id. A HubSpot-style endpoint does not exist.

03

Apex governors are not the API quota

An upsert that wakes triggers consumes CPU, SOQL and DML on the org. A naive connector breaks for reasons invisible on the caller side.

04

Which cloud, from the first call

Salesforce in a brief is a trap. Platform, Marketing Cloud and Commerce Cloud have distinct APIs, contracts and quotas. We name the cloud before the quote.

Compare

Salesforce or HubSpot, and what it implies

The choice is rarely technical: it depends on the size of your sales organisation and on who administers the CRM day to day.

CriterionSalesforceThis pageHubSpotSMEs and scale-ups
Data modelVery rich, sObjects and custom objects at the coreReadable standard objects, simple custom properties
Custom objectsAt the heart of the PlatformReserved for the Enterprise plan
AuthenticationOAuth, Integration User, client credentials or JWTPrivate app token, or OAuth 2.0 for multi-client
Rate limitOrg quota over 24 h, plus Apex governorsDocumented by plan, shared daily cap
Real timePub/Sub, CDC, Platform Events (no native HTTPS)Signed v4 webhooks
Integration effortHigh, dedicated Platform skillsLow to medium, excellent documentation
The right caseA complex sales organisation, high volumes, in-house adminsA SaaS or SME wanting to plug its product in quickly and cleanly

We claim no Salesforce certification, no consultant badge and no AppExchange listing: we build on the Platform's documented public APIs, alongside the administrator or partner running your org.

Our expertise

What we measure on a Salesforce project

20 d
first Platform flow in production
25
Composite subrequests max, each counted
0
duplicate Account thanks to externalId
4
senior developers on the project

We combine Salesforce with

The stack that surrounds Salesforce on our projects.

  • Stripe
  • Slack
  • n8n
  • PostgreSQL
  • Node.js
FAQ

Salesforce integration: your questions

We wire it into your product touchpoints: signup, usage, Case, Closed Won, renewals. First name the cloud (Platform, not Marketing). Choose the channel after the volume: REST plus Composite under a few thousand objects a day, Bulk 2.0 beyond, CDC via Pub/Sub for events, never SOQL polling. Auth: Integration User, client credentials or JWT Bearer. Idempotence: upsert on externalId. Composite allOrNone for Account/Contact/Opportunity graphs. The real difficulty is not the REST call, it is the mapping, the org quota and the absence of an HTTP webhook.

To roll out Sales Cloud, train teams and administer the org, a Salesforce consultant (often a certified Administrator or functional consultant) makes sense. To make Salesforce live in your platform (product → Account, Closed Won → provisioning), what counts is Platform connector experience: Integration User, Composite, CDC, quotas. We claim no certification, no consultant badge and no AppExchange listing: we build on the public APIs, and we are glad to work with the consultant already running your org, each on their own ground.

It depends on the number of objects, the direction of the flows and the state of the org (validation rules, triggers, Custom Metadata). Pushing usage onto the Account costs far less than Closed Won provisioning plus a custom object plus overnight Bulk. The edition (hence the quota) and the presence of an in-house admin weigh as much as the engineering. We scope the perimeter up front and give a firm estimate.

Not in the HubSpot sense. Change Data Capture and Platform Events go through the Pub/Sub API (gRPC), or legacy Streaming API / CometD. There is no HTTPS URL to paste in Setup. A HubSpot-style HTTP handler does not exist natively. We run a Pub/Sub client, a persisted replay id, and a reconciliation because the CDC retention window is scoped on the org.

The daily quota is an org cap, shared by REST, SOAP, Bulk and Connect. For an Enterprise edition, the documented starting point is 100,000 requests / 24 h, increasable with licences. It is a soft limit, then 403 REQUEST_LIMIT_EXCEEDED. The Sforce-Limit-Info header gives api-usage on every call. Event allocations (Platform Events) are separate. Apex governors (CPU, SOQL, DML) add up when a trigger fires from an upsert.

A Salesforce integration project?

Let's talk. 30 minutes to scope where Salesforce enters your platform (signup, usage, Case, Closed Won) and tell you honestly what is feasible.

Discuss my Salesforce project
Discuss my Salesforce project