Server-side Brevo integration for Odoo e-Commerce tracking via Events API
This module tracks customer interactions in your Odoo eCommerce, recording when a website visitor views a product, adds an item to the cart or wishlist, initiates checkout, completes a purchase, and more. Events contain detailed product information and contact data for identification and subsequent automation on Brevo. The module allows you to send tracking events via Brevo Tracker (JS script) as well as via the API.
| Availability |
Odoo Online
Odoo.sh
On Premise
|
|---|---|
| Compatibility |
Community
Enterprise
|
| Technical Name | website_sale_brevo_api |
| Version | 20.0.1.0.0 |
| License | OPL-1 |
| Category | |
| Support | Free 60 days support and 360 days bug-fixing |
Use Case
Jorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc vulputate libero et velit interdum, ac aliquet odio mattis. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos.
Forem ipsum dolor sit amet, consectetur adipiscing elit. Nunc vulputate libero et velit interdum, ac aliquet odio mattis. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos.
Dorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc vulputate libero et velit interdum, ac aliquet odio mattis.
It is a long established fact that a reader will be distracted by the readable content of a page
Korem ipsum dolor sit amet, consectetur adipiscing elit. Nunc vulputate libero et velit interdum, ac aliquet odio mattis. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos.
Korem ipsum dolor sit amet, consectetur adipiscing elit. Nunc vulputate libero et velit interdum, ac aliquet odio mattis.
Odoo App Installation
Upload modules
Upload modules from the ZIP archive to your Odoo hosting, or a GitHub repository connected there.
Place the unzipped modules in your custom add-on directory and restart the Odoo system service.
Update App List
After restarting, activate the Developer Mode, and go to the Apps menu.
Click on Update Apps List to fetch the new modules in the list.
Activate the App
Install the new module, finding it by name and clicking on the Activate button.
* If you don't see the module, try to remove the default Apps filter from the search bar.
Configuration
Follow the instructions in the module description to complete the installation process and start using the app.
Manual
Tracking Events
The module supports tracking the following events
Search Products
Searching via global site search or within the product catalog
View Product List
Viewing the product list after opening the catalog, including search results
View Product
Viewing a product page
Add to Wishlist
Adding a product to the wishlist from any available location: catalog, product page, and cart
Add to Cart
Adding a product to the cart from any available location: catalog, product page, and wishlist
Update Cart
Changing product item quantities in the cart
Remove from Cart
Removing a product from the cart
Begin Checkout
Opening the first step page of the checkout process
Add Shipping Info
Proceeding from address entry to payment information
Add Payment Info
Proceeding from payment information to payment
Purchase
Successful purchase completion and opening the sales order confirmation page
Order Shipped
Confirmed delivery document and sales order shipped to the customer
Getting Keys
Before setting up activity tracking on your Odoo website, get a client key and an API key for server-side integration.
Client Key
The module integrates Brevo Tracker into your Odoo website using a client_key. To obtain it:
-
01Log in to your Brevo.com account
-
02Go to Settings — Automations and open Brevo Tracker
-
03Select the JS Tracker installation option
-
04Copy the value of the
client_keyparameter in step 2
API Key
To get an API key, which acts as the access token for server-side integration with Odoo:
-
01Log in to your Brevo.com account
-
02Go to Settings — SMTP and API, and on the API keys and MCP tab, click Generate API key
-
03Enter a Key Name, select an Expiry, choose the Full access option to grant all permissions, and click Generate
-
04Copy and save the generated API key
Activation
After installing the module, go to the website settings and enable the Activate Tracking option in the Enhanced Website Tracking section. To test your website tracking and view tracking events in the browser console, temporarily enable the Debug Logging feature.
Tracking Service Configuration
The module tracks e-commerce events on an Odoo website using a tracking service. It sends tracking events to Brevo along with product information and user-provided data. You can send data via both the Brevo Tracker and the Events API. Add and configure the tracking service for your Odoo website.
Adding a Tracking Service
Go to the Website — Configuration — Tracking — Services menu and click New to add a new tracking service for your Odoo website.
Firstly, fill in the following fields:
- Specify a Website (if multiple websites are used)
- Select Brevo Tracker as the service Type
- Paste your
client_keyinto the Key field
Then select the product identifier type and the product category to send to Brevo.
If products have attributes and variants, choose Product Variant ID in the Item Type field; if not, select Product Template ID.
Select the desired Category Type: an eCommerce Public Category or an internal Product Category.
Activating the Events API
Activating the Brevo Events API requires an access token and event logging.
Enable the Internal Logs option on the Options tab.
Next, activate the server-side integration in the API section — enable the Activate option and paste the generated API Key into the Access Token field.
Contact Identification
Advanced matching allows you to identify contact details of website visitors and supply this information to Brevo for SMS and email campaigns and other automations. Open the Advanced Matching tab and specify what information the tracking service should send. The Enable Allowed button allows you to enable all available options for this tracking service.
Checking the Hashed checkbox next to the Customer Name and Phone options indicates that customer information is protected using hashing, complying with Brevo requirements.
Customer data source
Use the Sale Order Partner value for the Customer Data Source, as it provides more user details in case you allow guest checkouts without registration.
Sending Tracking Data
The tracking service sends events from the internal log via the Brevo Events API at a set interval.
To view internal tracking events, go to Website — Configuration — Tracking — Logs or click the Logs button at the top of the tracking service form.
Enable the State and API Sent Date columns to display the status and date of event transmission to Brevo via the Events API.
Automatic Event Transmission
The module automatically sends tracking events using an Odoo scheduled action. By default, it runs every 30 minutes, and you can adjust this interval to suit your requirements.
Manual Event Transmission
To send tracking data manually, select tracking logs from the list or open an individual log record and click Send Event.
Advanced Settings
The module includes additional settings available in Developer Mode.
Product Identifier
The module uses the Product ID field as a unique product identifier. To use a different value, specify another product field containing the desired identifier on the Technical tab:
Purchase on Portal
To track portal purchases, enable the Track Purchase on Portal option:
Exclude Delivery
The next available setting for tracking services is Exclude Delivery. When enabled, the service excludes delivery lines from sales orders in tracking data transmissions:
Exclude Rewards
To exclude reward order lines from tracking data, enable the Exclude Reward option:
Add to Cart
By default, the module tracks the actual addition of a product to the cart. To track the event upon clicking the button without waiting for the actual addition to the cart, perform the following steps:
- Navigate to Website — Configuration — Websites
- Open the website on the Enhanced Tracking tab
- Enable the Add to Cart on Click option
Purchase
To track purchases only after a successful payment transaction, enable the Track Confirmed Purchases only option:
If business logic considers an order with a Pending payment status as a purchase, enable the Track Pending Purchases too option as well.
Testing
The module allows you to disable the JS script to verify event transmission via the Brevo Events API server-side integration. To do this, follow the steps below.
First, open your Brevo Tracker tracking service in Odoo on the Options tab and enable the Remove JS Script option to prevent sending events to Brevo via the JS script before executing event API calls.
Now, perform several actions on your website, such as browsing the product list or adding an item to the cart.
After that, go to the log list and send these events manually. If the status is Warning or Error, review the API Response value on the Technical tab for detailed information.
The Sent status indicates that the event was successfully transmitted via the API.
Changelog
16.0.1.0.0 2025-02-10
- Init version.
17.0.1.0.1 2026-05-25
- Improve tracking logic.
17.0.1.0.0 2025-03-07
- Migration from 16.0.
18.0.1.0.2 2026-08-11
- Implement tracking of offline 'order_shipped' event.
18.0.1.0.1 2026-05-25
- Improve tracking logic.
18.0.1.0.0 2025-03-10
- Migration from 17.0.
19.0.1.0.2 2026-08-11
- Implement tracking of offline 'order_shipped' event.
19.0.1.0.1 2026-05-21
- Improve tracking logic.
19.0.1.0.0 2025-10-23
- Migration from 18.0.
20.0.1.0.0 2026-09-21
- Migration from 19.0.