- Home
- Apps
- Multichannel & PIM Tools
- Cookies Consent Management
Illustrative previewA build-to-order Odoo consent management layer that gates website tracking scripts behind granular,
logged visitor consent.
ECOSIRE designs, builds, installs, and supports it around your Odoo website and data-protection obligations.
What is Cookies Consent Management?
A build-to-order Odoo consent management layer that gates website tracking scripts behind granular, logged visitor consent. ECOSIRE designs, builds, installs, and supports it around your Odoo website and data-protection obligations. Built to order by ECOSIRE for Odoo 17, 18, 19 — indicative price from $999.00 USD; request a quote for a scoped proposal.
Key Features
Built to order, done for you
No DIY setup — a working app, built, installed and supported by ECOSIRE.
- 1
You order
Start with a one-time build price. We scope it with you at kickoff.
- 2
We build & install
ECOSIRE builds, configures and installs it on your Odoo.
- 3
Go live + support
You go live in about one working week, with two weeks of go-live support. Defects in the code we deliver are fixed free of charge.
Technical Specifications
- Odoo Compatibility
- Odoo 17, Odoo 18, Odoo 19
- Editions
- Enterprise & Community
- License
- Licence confirmation required
- Python Requirement
- Python 3.10+
- Database
- PostgreSQL 12+
About this Product
Most teams discover their cookie-consent gap the hard way: the Odoo website already fires analytics, chat widgets, remarketing pixels, and embedded media the moment a visitor lands, long before anyone clicks "Accept." Odoo core ships a lightweight cookie bar, but out of the box it is essentially a notice, not a control plane — it does not block scripts before opt-in, does not capture granular per-category choices, does not keep a durable, timestamped record of who consented to what, and does not give your DPO or auditor anything to export when a regulator or a customer asks for proof. For any business subject to GDPR/ePrivacy, the UK regime, CCPA/CPRA, or similar frameworks, that "notice-only" behavior is exactly the pattern enforcement actions target.
This is where a purpose-built module earns its place. We build a dedicated Odoo application — a proper __manifest__.py addon depending on website — that turns consent into a first-class, auditable data object. New models such as consent.category (necessary, analytics, marketing, functional) and consent.record (models.Model with fields for visitor fingerprint, IP truncation, chosen categories, banner version, policy version, and create_date) persist every decision. A configurable, translatable QWeb/OWL banner and preference center render on the public website, and — critically — third-party scripts are registered against categories and injected only after the matching consent flag is set, so analytics and remarketing tags genuinely stay dark until the visitor opts in. Consent state is written server-side against the record and mirrored to a signed cookie so the choice survives across pages and sessions.
Under the hood we wire the pieces Odoo gives us for exactly this kind of governance work: ir.model.access.csv plus record rules so only Website/Settings managers can read the consent register and ordinary portal users cannot; compute fields (@api.depends) to derive an aggregate consent-status per record; automated actions or ir.cron jobs to expire and re-prompt consent after your defined retention window (e.g. 6 or 12 months); and QWeb reports plus list/pivot views so compliance staff can filter, count, and export the register as evidence. Because everything lives in standard models, the consent log is reachable over the XML-RPC/JSON-RPC API for your data-subject-access-request tooling or an external DPO dashboard. We build cleanly against Odoo 17.0, 18.0, or 19.0 and note Community vs Enterprise differences up front — the core mechanism runs on Community; Enterprise-only surfaces (such as certain website builder blocks) are handled only where your edition supports them.
Delivery is build-to-order, not an instant download. After a short scoping call we confirm the exact category taxonomy, the scripts to gate, the languages and geographies in scope, and your retention policy, then we build on a staging copy of your database, run UAT with you, and cut over with a rollback plan. Typical delivery is one working week from confirmed scope. You receive the installable source, technical and user documentation, a training session, and a post-go-live support window. Pricing starts from $999 (indicative, single-company base scope); multi-company or multi-website consent segregation, additional locales and geo-specific banner variants, deeper integrations with your analytics/CMP stack, and larger historical-consent data migration increase the quoted scope. We provide a fixed quote after the scoping call.
What you get
- Installable source code for your Odoo major version (17.0, 18.0, or 19.0), built as a clean `__manifest__.py` addon
- Installation and configuration on your environment, including category taxonomy, gated-script registration, and retention settings
- Technical documentation: model/field reference, security rules, cron/automated-action behavior, and upgrade notes
- User guide plus a live training session for Website/Settings managers and compliance staff
- UAT on a staging copy of your database with a documented rollback plan before production cutover
- Post-go-live support window for defect fixes and configuration adjustments
- Git repository handover with full commit history and tagged release
- Consent-register export template and DSAR/API access notes for your DPO or external auditor
Who this is for
Data Protection Officer / Compliance Lead
Needs defensible, exportable proof of consent — who agreed to what, when, and against which policy version — not just a banner that ticks a visual box. Buys this for the auditable `consent.record` register and DSAR-ready API access.
Website / Digital Marketing Manager
Runs analytics and remarketing on the Odoo website and needs tags to fire legally without killing measurement. Wants a preference center and per-category gating so opt-in traffic is still tracked while non-consented visitors stay untracked.
Odoo Administrator / Internal IT
Maintains the Odoo instance across 17/18/19 and wants a clean, upgrade-safe addon with proper access rules and a git handover — not a fragile theme hack that breaks on the next migration.
Operations Director at a regulated SMB
Answerable for GDPR/CCPA exposure across one or more websites and jurisdictions. Buys a supported, build-to-order solution to close a known compliance gap quickly with a fixed quote and delivery timeline.
How Cookies Consent Management Compares
| Criterion | ECOSIRE | Custom Build | Competitor | Odoo Native |
|---|---|---|---|---|
| Script gating before opt-in | Tags injected per category only after consent is set | Possible but you design the mechanism yourself | Often notice-only or partial blocking | Notice bar does not reliably block scripts |
| Consent audit log | Timestamped, versioned `consent.record` register, exportable | Only if you model and build it | Varies; often minimal or absent | No durable per-visitor consent record |
| Granular categories | Necessary/analytics/marketing/functional with preference center | Whatever you scope and code | Sometimes accept-all only | Effectively accept/close |
| Security and access control | `ir.model.access.csv` + record rules restrict the register | Depends on your implementation discipline | Inconsistent across vendors | No dedicated register to secure |
| API / DSAR access | Records queryable via XML-RPC/JSON-RPC for DPO tooling | Achievable with extra build effort | Rarely exposed cleanly | Nothing meaningful to query |
| Version and edition fit | Built and tested on 17/18/19, edition differences documented | Your team owns compatibility | May lag new Odoo releases | Ships with core, minimal features |
| Support and ownership | Post-go-live support window + git repo handover | In-house team carries all maintenance | Vendor-dependent, license-bound | Community support only |
| Delivery model | Build-to-order, one working week, UAT + rollback | Open-ended internal project | Instant install but generic fit | Already present, no fit work |
Frequently Asked Questions about Cookies Consent Management
How long does delivery take?
This is a build-to-order module, not an instant download. After a scoping call to confirm your consent categories, the scripts to gate, languages, and retention policy, typical delivery is one working week from confirmed scope. We build on a staging copy, run UAT with you, and cut over with a rollback plan.
Doesn't Odoo already have a cookie bar? Why do I need this?
Odoo core ships a lightweight notice, but out of the box it does not reliably block third-party scripts before opt-in, does not record granular per-category choices, and keeps no durable, timestamped consent log you can export as evidence. This module turns consent into a first-class, auditable data object with real script-gating.
How does pricing and scoping work?
Pricing starts from $999 as an indicative single-company base scope. Drivers such as multi-company or multi-website segregation, extra locales and geo-specific banner variants, deeper analytics/CMP integrations, and historical-consent data migration increase the quote. You get a fixed quote after the scoping call — never a surprise price.
What happens with support and updates after go-live?
You receive a post-go-live support window for defect fixes and configuration adjustments, plus a git repository handover so your team owns the code. Cross-version upgrades (for example moving from Odoo 18.0 to 19.0) or new regulatory requirements are scoped as follow-on work.
Will it actually stop analytics and pixels from firing before consent?
Yes. Gated scripts are registered against consent categories and injected only after the matching consent flag is set, with state mirrored to a signed cookie. Necessary/strictly-functional scripts run as configured; analytics and marketing tags stay dark until the visitor opts in through the banner or preference center.
Which Odoo versions and editions do you support?
We build and test against Odoo 17.0, 18.0, and 19.0. The core consent mechanism runs on Community; where your deployment is Enterprise, we handle Enterprise-only website surfaces accordingly. We confirm your exact version and edition during scoping and note any differences in the technical docs.
Can our DPO or external tooling read the consent records?
Yes. Consent records live in standard Odoo models, restricted to authorized managers via `ir.model.access.csv` and record rules, and are reachable over the XML-RPC/JSON-RPC API. That lets your DSAR tooling or an external DPO dashboard query the register while ordinary portal users cannot see it.
Related Modules

Connector Engine
A made-to-order Odoo module that syncs orders, inventory, products and fulfilment between your storefronts and marketplaces (Shopify, WooCommerce, Magento, Amazon, eBay) and Odoo. ECOSIRE scopes, builds, installs and supports it for your exact channel mix.
Container & Shipment Tracking Portal for Odoo
Branded public tracking page in Odoo where customers look up shipment/container status by reference number with a live, dated event timeline.

Custom Product Labels
A build-to-order Odoo module that designs, generates, and prints custom product labels with barcodes matched to your exact stock, label geometry, and print hardware. ECOSIRE builds, installs, and supports it — a made-to-order engagement, not an instant download.

Customs & HS Code Compliance for Odoo
Build-to-order Odoo module for HS/HTS codes, customs declarations, CN22/CN23 forms and duty/tax estimates on cross-border shipments.
Cookies Consent Management
A build-to-order Odoo consent management layer that gates website tracking scripts behind granular, logged visitor consent. ECOSIRE designs, builds, installs, and supports it around your Odoo website and data-protection obligations.
- Dedicated Odoo addon depending on `website`, with `consent.category` and `consent.record` models persisting every visitor decision server-side
- Script-gating engine: third-party tags (analytics, remarketing pixels, chat, embedded media) registered per category and injected only after the matching consent flag is set
- Granular per-category opt-in (necessary, analytics, marketing, functional) rather than a single accept-all notice
- Translatable QWeb/OWL consent banner plus a full preference center for granular re-consent and withdrawal