CONNECTIONS / Datahash API / Datahash API to Google OCI
Post offline and in-store sales to the Datahash API, wired to Google Ads offline conversion import.
Send offline and in-store sales to one documented REST endpoint from any backend, in any language; Signals reconciles closed-won revenue to the Google Ads click through GCLID, hashed and consent-checked, with no pixel and no warehouse read.
- ● datahash-api → google.oci :: live
- > POST /v1/events source=api.purchase_events count=15,765
- hash sha256(email,phone) consent=filtered
- route google deliver
- ✓ 202 accepted · 13,243 forwarded
WHAT THIS ENABLES
Datahash API to Google Offline Conversions
Datahash API to Google Offline Conversions: post your offline and in-store sales to one REST endpoint and Signals reconciles closed-won revenue to the Google Ads click through GCLID, hashed and consent-checked server-side before Google Ads sees it.
- Signals reconciles closed-won revenue to the Google Ads click through GCLID, from events your backend posts server-side.
- Smart Bidding trained on booked revenue instead of a mid-funnel proxy, without a pixel, a connector, or a nightly export.
The click, the conversion, and the credit.
The conversion happens off Google, away from any pixel. Here is how Datahash API closes the loop.
Built for the teams that own the number.
Backend and platform teams driving Google Ads offline conversion import by sending offline and in-store sales straight from their own stack.
From kickoff to verified events.
-
Connect
Create an API key in the Signals console and point your backend at the endpoint that feeds Google Ads' Offline Conversion Import (Google Ads API).
-
Map
Map your event payload to Google Ads' Offline Conversion Import (Google Ads API) fields once; per-request validation flags bad events instead of dropping the batch.
-
Deliver
Post events as they happen and Signals reconciles closed-won revenue to the Google Ads click through GCLID, hashing server-side, with GCLID coverage shown in the debugger.
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 OCI 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 Datahash API records the event. |
What OCI actually receives.
- ● signals :: event payload
- > POST /offline_conversion_import source=api.purchase_events
- gclid "Cj0KCQjw…" · conversion_action "closed_won"
- conversion_date_time "2026-07-19T12:16:10"
- conversion_value 21321 · currency_code GBP
- ✓ accepted · batch=nightly
Adjacent moves on the same stack.
from Datahash API
Datahash API to Google Store Sales
Datahash API to Google Store Sales: post your offline and in-store sales to one REST…
Learn morefrom Datahash API
Datahash API to Meta Offline CAPI
Datahash API to Meta Offline CAPI: post your offline and in-store sales to one REST…
Learn moresame use case
ActiveCampaign to Google OCI
ActiveCampaign to Google Offline Conversions: Signals reads your ActiveCampaign contacts…
Learn moregeneric
Google Offline Conversion Import
Datahash automates GCLID-based OCI uploads to Google Ads so click-based offline conversions…
Learn moreAsked on almost every call.
Which backends can send to Google OCI through the Datahash API?
Any backend that can make an HTTPS request. You POST offline and in-store sales as JSON to one documented endpoint and Signals forwards the offline conversions to Google Ads' Offline Conversion Import (Google Ads API); identifiers are hashed at ingestion or sent pre-hashed, and advertisers whose Google-sourced deals close days after the click track GCLID coverage in the debugger.
How fresh are Google OCI events sent over the API?
As fresh as you post them. The API accepts events in near real time, so Smart Bidding trained on booked revenue instead of a mid-funnel proxy reaches Google Ads moments after your backend fires the call, with per-event status returned inline. There is no batch window and no scheduled read, which keeps GCLID coverage current for the teams driving Google Ads offline conversion import.
NEXT STEP