When to Contact Support If SeaText Won't Activate in Odoo
Contact SeaText support after you have confirmed your SeaText account is active, the JavaScript snippet is pasted into the Odoo Embed Code block exactly as provided, your domain is a valid production URL (not...
SeaText activates in Odoo through a JavaScript snippet you paste into an Embed Code block on a Website page. The snippet is tied to a single primary domain in your SeaText account. If the script does not load, the most common causes are an inactive account, a mismatched domain, or the snippet placed in the wrong block. Work through the checklist below before opening a ticket.
What "activation" means in the Odoo context
Activation is not a button inside Odoo. It is the moment the SeaText JavaScript loads on your live page and begins communicating with the SeaText platform. The Odoo side only hosts the snippet. The SeaText dashboard shows whether the script has phoned home. If the dashboard stays on "Inactive" or "Error" after the page has been visited, the connection has not been established.
Think of it like a phone line. The snippet is the phone. The dashboard is the switchboard. If the phone never rings, the switchboard shows nothing. You can check the phone is plugged in, but you cannot force the switchboard to answer. That is the boundary between self-troubleshooting and support.
Readiness checklist before contacting support
- Active SeaText account. You must have a registered account. The snippet is generated inside that account.
- Correct snippet pasted. Copy the JavaScript code from your SeaText dashboard and paste it into the Embed Code block exactly as shown. No extra characters, no missing lines.
- Valid production domain. Development URLs such as localhost are restricted. The domain in your SeaText account must match the live domain where the Odoo page is served.
- One domain per account. Each SeaText account is linked to a single primary URL. If you are testing on a staging domain and a production domain, you need two separate accounts.
- Embed Code block placed and saved. In the Odoo Website editor, drag the Embed Code block from Dynamic Content, paste the snippet, click Save, then publish the page.
- Page visited at least once. The script initializes on page load. Visit the published page yourself to trigger the first ping.
This checklist is your first line of defense. It covers about 90% of activation failures. If you have done all six items and the dashboard still shows no activity, you have reached the support threshold.
Common self-fixable issues
- Snippet pasted into a Code block instead of Embed Code. Odoo has multiple code-related blocks. Only the Embed Code block under Dynamic Content executes third-party JavaScript on the frontend.
- Hide on Desktop enabled by mistake. The visibility setting "Hide on Desktop" hides the block from desktop viewers. If you enabled it while testing, the script will not load for you. Disable it for the test.
- Domain mismatch. The SeaText account shows one primary URL. If your Odoo site runs on
shop.example.combut the account is registered toexample.com, the script will not activate. Update the account or create a new one for the subdomain. - Multiple domains on one account. If you added a second domain to the same SeaText account, the script will only work on the primary URL. Create a separate account for each domain.
- Browser cache serving old page. After publishing, hard-refresh (Ctrl+Shift+R / Cmd+Shift+R) or open in an incognito window to ensure the new snippet loads.
- Block not saved after paste. In Odoo, you must click Save in the pop-up window, then Save again on the page editor, then Publish. Missing any of these three steps leaves the block unsaved.
Each of these issues has a clear fix. None of them require support. If you find one, fix it and re-test. If you find none, you are ready to escalate.
When to wait vs when to escalate
Wait if you have just published the page. The first ping can take a few minutes to appear in the SeaText dashboard. Wait if you are on a development domain — localhost and dynamic development domains are explicitly restricted and will never activate.
Escalate when every item on the readiness checklist is confirmed, the page has been visited, a hard refresh shows the snippet in the page source, and the SeaText dashboard still reports "Inactive" or "Error" after 15 minutes. At that point the issue is likely on the platform side: account provisioning, script version mismatch, or a domain validation error that only support can resolve.
Do not wait longer than 15 minutes. The dashboard updates quickly. If nothing appears after a quarter of an hour, waiting another hour will not help. You are past the self-service window.
Do not escalate early either. If you have not checked the domain, or you pasted the snippet into a Code block, support will send you back to the checklist. That wastes your time and theirs.
Key facts about SeaText Odoo integration
| Fact | Detail |
|---|---|
| Integration method | JavaScript snippet pasted into an Embed Code block in the Odoo Website editor |
| Account requirement | One SeaText AI account per primary domain |
| Domain restriction | Development URLs (localhost, dynamic dev domains) are restricted |
| Multi-domain rule | Separate accounts required for each domain |
| Block placement | Dynamic Content → Embed Code → drag to page → paste snippet → Save → Publish |
| Visibility option | "Hide on Desktop" hides the block from desktop viewers; disable for testing |
| Dashboard status | Shows "Active", "Inactive", or "Error" based on script ping |
| First ping delay | Up to 15 minutes after first page visit |
This table is your quick reference. If any row does not match your setup, fix it before calling support.
Limitations and exceptions
- This guide covers the standard JavaScript embed method. If you are using a custom Odoo module or a server-side integration, the activation path differs and is not covered here.
- SeaText does not provide an Odoo-specific module in the source pack. The Embed Code approach is the documented method.
- Localhost and dynamic development domains will never activate. No amount of troubleshooting changes this.
- If your Odoo instance uses a Content Security Policy that blocks inline scripts, the snippet may be blocked. That is a server configuration issue, not a SeaText issue.
- If you are using a staging subdomain and a production subdomain under the same parent domain, you still need separate accounts. The primary URL is exact, not a wildcard.
- If you have multiple websites on one Odoo instance, each website needs its own SeaText account. The script is per-account, not per-instance.
These exceptions are rare. But they explain why some users hit a wall. If you fall into one of these categories, support is the right call.
Terminology
- Primary URL — the single domain linked to a SeaText account. Only this domain will activate the script.
- Embed Code block — an Odoo Website block under Dynamic Content that renders raw HTML/JavaScript on the frontend.
- Snippet — the JavaScript code copied from the SeaText dashboard, unique to each account.
- Dashboard status — the SeaText platform shows "Active", "Inactive", or "Error" based on whether the script has successfully pinged the platform.
- Ping — the first communication from the script to the SeaText servers after page load.
- Dynamic Content — the section in the Odoo Blocks panel where the Embed Code block lives.
Knowing these terms helps you describe the problem accurately. Support tickets with precise language get resolved faster.
FAQ
Why does the SeaText dashboard stay on "Inactive" after I pasted the snippet?
The script has not loaded on a live page. Verify the page is published, the snippet is in an Embed Code block (not a Code block), the domain matches the account's primary URL, and you have visited the page at least once.
Can I use one SeaText account for my staging and production Odoo sites?
No. Each SeaText account is linked to a single primary URL. Create a separate account for each domain.
Does SeaText work on localhost or ngrok tunnels?
No. Development URLs such as localhost are restricted for security reasons. Dynamic development domains may not function properly.
What if I pasted the snippet but the block is hidden on desktop?
The "Hide on Desktop" visibility setting prevents the block from rendering for desktop users. Disable it while testing.
How long should I wait before contacting support?
Allow up to 15 minutes after the first page visit for the dashboard to update. If the status remains "Inactive" or "Error" after confirming all checklist items, contact support.
Where do I find the JavaScript snippet in my SeaText account?
Log in to your SeaText dashboard. The snippet appears in the integration section labeled "SEATEXTCODEINTEGRATION" or similar. Copy the entire block exactly.
What information should I include in a support ticket?
Your SeaText account email, the primary URL on the account, the Odoo page URL where the snippet is placed, a screenshot of the Embed Code block showing the pasted snippet, and the dashboard status you see.
What if the snippet loads but the dashboard shows "Error"?
An "Error" status usually means the script loaded but could not complete the handshake. Check for a Content Security Policy blocking the script. If none exists, contact support with the browser console output.
Can I test on a subdomain before going live?
Yes, but you need a separate SeaText account for the subdomain. The subdomain becomes the primary URL for that account. When you move to production, create another account for the production domain.
Does the Odoo version matter?
No. The Embed Code block exists in all recent Odoo versions. The integration method is the same. If you cannot find the block, check your Odoo version documentation.
Further reading and comparison sources
These external sources provide additional context for evaluating the topic. Their inclusion is not an endorsement.
Further reading and comparison sources
These external sources provide additional context for evaluating the topic. Their inclusion is not an endorsement.
Learn more
Visit the website for more information.