
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
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.
What Salesforce changes in your platform
Signup creates Account and Opportunity
Signup or contract: account and opportunity are created together. No orphan record when one step fails.
Usage lands on the Account
Plan, volume, last sign-in, incidents. Sales filters real activity, and stops calling production.
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.
Closed Won provisions and bills
Closing won triggers the account, access and invoicing. Renewal starts from the same record, with amount, date and usage.
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.
How we ship your Salesforce connector
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.
Mapping
Standard and custom sObjects, externalId, associations, merge policy. This is the step that decides success.
Development and testing
Integration User, Composite allOrNone, quota circuit-breaker, Pub/Sub client with replay id. Testing on a sandbox, validation rules diverge.
Monitoring
Alert before the 403, retry queue, CDC replay. You know a flow is broken before your sales team does.
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.
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.
The real constraints of a Salesforce integration
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.
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.
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.
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.
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.
| Criterion | SalesforceThis page | HubSpotSMEs and scale-ups |
|---|---|---|
| Data model | Very rich, sObjects and custom objects at the core | Readable standard objects, simple custom properties |
| Custom objects | At the heart of the Platform | Reserved for the Enterprise plan |
| Authentication | OAuth, Integration User, client credentials or JWT | Private app token, or OAuth 2.0 for multi-client |
| Rate limit | Org quota over 24 h, plus Apex governors | Documented by plan, shared daily cap |
| Real time | Pub/Sub, CDC, Platform Events (no native HTTPS) | Signed v4 webhooks |
| Integration effort | High, dedicated Platform skills | Low to medium, excellent documentation |
| The right case | A complex sales organisation, high volumes, in-house admins | A 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.
What we measure on a Salesforce project
The other CRMs we integrate
The choice follows whichever CRM you already run, rarely the technology.
SalesforceIntegrating the Salesforce API into your systemThis page
HubSpotA very well documented REST API, signed webhooks, a fit for plugging a product in quickly and cleanly.
PipedriveSME pipeline, API v2, HTTP webhooks. Token budget shared by the whole account.
SellsyFrench CRM and sales management, quotes and invoices in the same tool.We combine Salesforce with
The stack that surrounds Salesforce on our projects.
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