Overview
The solution implements the most effective tracking method — hybrid tracking. The browser-based OpenAI Pixel captures instant actions on the website, while the server-side Conversions API supports it by automatically sending accurate purchase data even if the user closes the page. Configure server synchronization to reliably transmit unique identifiers and protected customer data, including automatic event deduplication, and receive analytics for advertising budget optimization.
| Availability |
Odoo Online
Odoo.sh
On Premise
|
|---|---|
| Compatibility |
Community
Enterprise
|
| Technical Name | website_sale_openai_capi |
| Version | 19.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
How to get Pixel ID
Before adding the JS script to your website, first obtain the Pixel ID. To do this, complete the following steps:
- Sign in to your OpenAI Ads Manager account
- Open the Settings — Conversions menu
- Click Create to add a data source
- On the Data Source tab, open one of the sources and copy the Pixel ID
Activation
After installing the app, go to the website settings and, in the Enhanced Website Tracking section, enable the Activate Tracking option. To test your website tracking and view tracked events in the browser console, also temporarily activate the Debug Logging feature:
Tracking Service Configuration
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 in the new tracking service:
- Specify a Website (if multiple websites are used)
- Select the service Type as OpenAI
- Paste your Pixel ID into the Key field
Then, specify the type of identifier for the products and which product category is provided to OpenAI Ads Manager:
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.
The next option is the Lead Value on the Options tab:
It is the monetary value of the Lead Generation event and should be set based on your estimate.
Conversions API Activation
Enable the Internal Logs option:
After that, activate API mode by completing the following steps in the API section:
- Enable the Activate option
- Paste the copied Conversions API key into the Access Token field
Enhanced Conversions
Enhanced conversions help optimize your advertisements by providing OpenAI with additional user data. Open the Advanced Matching tab and click Enable allowed, which enables all available options for this tracking service:
Use the Sale Order Partner value as the Customer Data Source because it provides more user information when guest checkouts are allowed without registration:
Sending Tracking Data
Internal logs provide information about visitor actions on your Odoo website and can be used for further website analysis and monitoring. Click the Logs button at the top of the form:
Enable the State and API Sent Date columns to display a status and the date of event sending through the Conversions API:
The following customer data is sent through the Conversions API as part of the event information:
- OpenAI OppRef (oppref): a unique identifier of a click or advertising redirect from ChatGPT
- User IP Address: the customer's IP address used to determine the geography of the target audience
- User Agent: captures the operating system, browser, and device type of the customer
Scheduled Actions
Events are sent periodically by a scheduled action. By default, it runs every 30 minutes. This interval can be adjusted to your requirements:
To send tracking data manually, select tracking logs from the list or open a log and click on Send Event:
Sensitive Data Cleanup
Because tracking logs contain sensitive data such as IP addresses and user agents, it's possible to configure their cleanup. Go to the website settings and set the cleaning period. The default period is 30 days:
Enable the Unlink Logs After Period option to remove tracking logs older than the specified period completely.
Advanced Settings
The solution includes additional settings available in Developer Mode.
Product Identifier
The solution uses the Product ID field as the unique product identifier. If another value should be used, open the Technical tab and specify a different product field containing the required identifier:
Purchase on Portal
To track purchases on the portal, enable the Track Purchase on Portal option:
Exclude Delivery
The next setting available for tracking services is Exclude Delivery. When this option is enabled, delivery lines from sales orders are not included in tracking data and are not sent through the service:
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. If tracking should occur immediately after clicking the button, without waiting for the product to be actually added to the cart, complete the following steps:
- Open the Website — Configuration — Websites menu
- 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, according to your business logic, an order with the Pending payment status should also be considered a purchase, additionally enable the Track Pending Purchases too option.
Testing
To test the OpenAI Conversions API integration, complete the following steps:
-
01Open your website in another browser and perform an action, for example, add a product to the cart. This creates an internal record in the tracking service event log.
-
02Return to the logs list and send this event by clicking Send event:
After sending, the event status may change to Warning or Error due to missing data or other issues. Open the Technical tab and review detailed information in the API Response field:
If the event status is Sent, it means the transmission from Odoo through the API was successful.
The next step is to verify that the tracking event has been received on the OpenAI side. To do this:
- Sign in to Ads Manager
- Check whether the event sent from Odoo has appeared
- If the event appears, review the Source column (browser/server)
- Event deduplication is performed using the Event ID parameter
Changelog
19.0.1.0.0 2026-05-11
- Init version.
18.0.1.0.0 2026-05-25
- Migration from 19.0.