Jump to a popular page, or start typing.

    CONNECTIONS / Odoo / Odoo to Google OCI

    Odoo sales opportunities into Google Ads, built for Google Ads offline conversion import.

    Connect Odoo and point Signals at your Odoo sales opportunities; it reconciles closed-won revenue to the Google Ads click through GCLID as records change, hashed and consent-checked for Google Ads.

    odoo -> google-oci :: live

    1. ● odoo → google.oci :: live
    2. > read closed_deals rows=33,746
    3. hash sha256(email,phone) consent=filtered
    4. route google deliver
    5. ✓ delivered · 26,997 matched

    WHAT THIS ENABLES

    Odoo to Google Offline Conversions

    Odoo to Google Offline Conversions: your Odoo sales opportunities, hashed and consent-checked, feed Google Ads as Signals reconciles closed-won revenue to the Google Ads click through GCLID as records change.

    • Offline and in-store sales from your Odoo sales opportunities activated for Google Ads, as Signals reconciles closed-won revenue to the Google Ads click through GCLID.
    • Smart Bidding trained on booked revenue instead of a mid-funnel proxy, drawn from your Odoo sales opportunities by operations teams running Odoo CRM.
    WHAT FLOWS WHERE

    The click, the conversion, and the credit.

    The conversion happens off Google, away from any pixel. Here is how Odoo closes the loop.

    Google credits the campaign that sourced the conversion conversion happens off-platform Ad click on Google CRM record sync recorded in Odoo S Signals hash · dedupe Offline Conversion Impo… delivered · credited
    WHO THIS IS FOR

    Built for the teams that own the number.

    Advertisers whose Google-sourced deals close days after the click, with the records already in Odoo CRM leads, opportunities, and activities.

    Operations teams running Odoo CRM activating Google Ads offline conversion import straight from Odoo sales opportunities.

    HOW DATAHASH SETS IT UP

    From kickoff to verified events.

    1. Connect

      Scoped OAuth access to Odoo, reading only your Odoo sales opportunities to feed Google Ads' Offline Conversion Import (Google Ads API), sized for GCLID coverage.

    2. Map

      Signals reads your Odoo sales opportunities, and its columns map to Google Ads' Offline Conversion Import (Google Ads API) in the visual mapper, hashed and checked for GCLID coverage.

    3. Deliver

      On each run, Signals pulls your Odoo sales opportunities, reconciles closed-won revenue to the Google Ads click through GCLID, and sends only the records that changed, with GCLID coverage in the debugger.

    WHAT YOU GET

    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 Odoo records the event.
    ON THE WIRE

    What OCI actually receives.

    signals :: odoo.google-oci :: wire

    1. ● signals :: event payload
    2. > POST /offline_conversion_import source=odoo.closed_deals
    3. gclid "Cj0KCQjw…" · conversion_action "closed_won"
    4. conversion_date_time "2026-07-18T11:50:42"
    5. conversion_value 39230 · currency_code GBP
    6. ✓ accepted · batch=daily
    FAQ

    Asked on almost every call.

    How often does the Odoo Google OCI sync run?

    The pace follows your Odoo sales opportunities: Signals sends changes from Odoo to Google Ads as records change. Because it sends only the records that changed, Smart Bidding trained on booked revenue instead of a mid-funnel proxy stays current while operations teams running Odoo CRM keep GCLID coverage in view. Delivery needs no export and no manual upload.

    What match rate should a Odoo-sourced Google OCI batch expect?

    Coverage of hashed identifiers across your Odoo sales opportunities decides it, and operations teams running Odoo CRM own that inside Odoo. A live email or phone matches into Google Ads; neither, and it will not. First-run feedback flags GCLID coverage, which operations teams running Odoo CRM then raise inside your Odoo sales opportunities.

    NEXT STEP

    Odoo to Google OCI, in production this week.