CONNECTIONS / Salesforce / Salesforce to Meta Offline CAPI
Salesforce closed-won revenue, inside Meta's optimization.
A deal that closes on a sales call never fires a Meta pixel. Signals takes the Opportunity the moment Salesforce marks it closed-won and delivers it to Meta as an offline conversion, hashed and deduped.
- ● salesforce → meta.offline_capi :: live
- > event Opportunity closed-won value=39,250 SAR
- hash sha256(email,phone) pii=cleared
- route meta.offline_capi match 63%
- ✓ delivered · offline event accepted
WHAT THIS ENABLES
Salesforce to Meta Offline Conversions API
Salesforce to Meta Offline Conversions API is the pipeline that routes closed-won Opportunity revenue out of Salesforce into Meta's Offline Conversions API, so Meta credits the campaign that sourced a deal even though the sale itself happened away from any Meta surface.
- Closed-won Salesforce revenue attributed to the Meta campaign that originated the lead.
- Meta campaign optimization informed by outcomes that happen weeks after the click.
- One offline pipeline replacing a manually maintained CSV upload to Ads Manager.
The click, the conversion, and the credit.
The conversion happens off Meta, away from any pixel. Here is how Salesforce closes the loop.
Built for the teams that own the number.
Teams already uploading offline conversion files to Meta who want the process automated.
From kickoff to verified events.
-
Connect
Connected App authorization limited to the Salesforce Opportunity object and the fields needed for matching.
-
Map
Closed-won and any other qualifying stage mapped to a Meta offline event set in the visual mapper.
-
Deliver
Server-side delivery to Meta's Offline Conversions API with per-upload match reporting.
What changes when the CSV goes away.
| Capability | Manual CSV upload | Datahash |
|---|---|---|
| Reporting | Offline sales sit in a separate export, reconciled by hand. | Revenue counted in the same Offline CAPI reporting as web conversions. |
| Deduplication | A re-uploaded file risks counting the same conversion twice. | Deduped delivery, so a resent record never counts as a second conversion. |
| Match visibility | Match quality is a guess until the numbers look off. | Match rate reported per upload, tied to the source event set that produced it. |
| Effort and latency | An analyst exports and uploads on a manual cadence. | Server-side and automatic the moment Salesforce records the event. |
What Offline CAPI actually receives.
- ● signals :: event payload
- > POST /offline_events source=salesforce.opportunity
- event_name "Purchase" · event_time 1784025960
- em sha256 "6a2d8f…" · ph sha256 "1c94b7…"
- value 39250 · currency SAR
- ✓ accepted pii=hashed-at-ingestion
Adjacent moves on the same stack.
from Salesforce
Salesforce to Google OCI
Salesforce to Google Offline Conversion Import is the pipeline that persists the GCLID…
Learn morefrom Salesforce
Salesforce to Google Store Sales
Salesforce to Google Store Sales is the pipeline that hashes contact and closed-won…
Learn moresame use case
ActiveCampaign to Meta Offline CAPI
ActiveCampaign to Meta Offline CAPI: Signals reads your ActiveCampaign contacts and deal…
Learn moregeneric
Meta Offline CAPI
Datahash ingests offline transactions from your POS, CRM, or warehouse and routes them to…
Learn moreAsked on almost every call.
How is a Salesforce closed-won event different from a standard Meta purchase event?
A standard Meta event fires from your website or app the moment something happens, matched through the browser or device. An offline event describes a Salesforce Opportunity that closed away from any Meta surface entirely, matched instead through hashed identifiers like email and phone, and Meta attributes it back to the campaign that sourced the original lead.
What match rate should we expect on Salesforce-sourced offline events?
It depends on identifier coverage on the Salesforce Contact tied to the Opportunity. Records with a clean email and phone typically land in the 40 to 70 percent range once hashed; thinner records match less often regardless of deal value. We baseline your Salesforce data during discovery and set expectations before go-live.
NEXT STEP