Author SHA1 Message Date
oliver 55d1ffd800 chore(site): drop dead coupon code and stale product-spec facts
script.js: delete applyCoupon(). Its only caller was the coupon button deleted above,
so the function was unreachable dead code that still carried the removed 'Coupon FREE
TRIAL applied - 1 month free' promise in a publicly served file. It would also have
thrown on the two DOM ids that no longer exist.

PRODUCT.md: this file is served publicly and still advertised $19.40/mo, $36.25/mo,
$49.60/mo, the FREE TRIAL coupon, 'yearly billing saves roughly 8-10%', a 'Satisfied
or reimbursed' guarantee and 'redundant slots'. Corrected to the yearly list prices
the site publishes and to the decisions above.
2026-10-21 23:05:23 +00:00
oliver dd27e820f5 feat(legal): add Privacy Policy and Terms of Service pages
Two new root-level pages, assembled from legal.html so they inherit the existing
head, fonts, style block and .legal-* cards. The trial email's /legal/privacy and
/legal/terms links 404 on the live site and are repointed here.

Both are factual drafts built from product facts (data held, the six regions, Stripe,
cancel-anytime, backup slots) and are NOT lawyer-authored. Decision 12 marks them for
legal review; they must not be treated as final before that review.
2026-10-21 23:05:23 +00:00
oliver 93511e893d fix(site): correct prices, drop every discount claim and repair trial copy
Applies the 16 findings the user answered in projects/active/odoo-hosting-2027-landing/
decisions-2026-10-21-user.md, using the wording from
copywriter/out/site-fix-wording-2026-10-21.md.

index.html: Powerhouse 535 -> 595 in the card and in the JSON-LD Offer; delete the
three Save 8%/9%/10% badges and the empty badge div on the Empire card; replace the
'Save 15% with yearly billing' line and the coupon message text (ids kept - script.js
reads them); delete the FREE TRIAL coupon input block; qualify the checkout line as
'Card required to buy, not to start'; fix 'redundant slots' to the real rotating-slot
model; drop the 'coupon codes for startups and NGOs' promise; add Privacy and Terms to
the footer.

email/trial-confirmation.html: stop promising backups, domain mapping and SSL on the
trial (the trial has none); state what the trial is not; copyright 2024 -> 2026;
repoint Privacy/Terms from the 404 /legal/privacy and /legal/terms to the new pages.

support.html: state that custom and OCA modules install from On the Rise up and that
Side Hustle has no module installation.

odoo/upsell.html: '4 weeks free' -> '30 days free'.

blog: the backup speed-run no longer sends readers to a non-existent hosting
dashboard; my-first-post loses the 30-day refund promise and the dashboard domain
step; community-vs-enterprise-cost quotes $214/year instead of $19.40/month;
odoocommunity-agents drops 'per-seat licensing' from the body and both meta
descriptions.

sitemap.xml: add /privacy.html and /terms.html.
llms.txt: publish the Powerhouse price and list the two new pages.

Evidence: every old string verified gone and every new string present in the working
tree; 12 HTML files tag-balanced; JSON-LD and sitemap XML valid.
2026-10-21 23:05:22 +00:00
17 changed files with 505 additions and 85 deletions

No files matched your search

+5 -5
View File
@@ -22,15 +22,15 @@ Enterprise-grade Odoo Community hosting without the enterprise price tag. Commun
## Operating Context ## Operating Context
- Static site (index.html, support.html, legal.html, blog/) deployed via git push to git.odoo4projects.com; auto-deploys on every change. - Static site (index.html, support.html, legal.html, privacy.html, terms.html, blog/) deployed via git push to git.odoo4projects.com; auto-deploys on every change.
- Order flow: inline order widget on the homepage opens Stripe checkout; coupon FREE TRIAL = 1 month free; yearly billing saves roughly 8-10%; "Satisfied or reimbursed" guarantee; server location chosen at checkout (US, Brazil, India, Australia, Netherlands, UK). - Order flow: inline order widget on the homepage opens Stripe checkout; plans are billed yearly with no setup fee; cancel at any time; server location chosen at checkout (US, Brazil, India, Australia, Netherlands, UK).
- Support: AI support bot (agent.js from static.odoo4projects.com) plus human team; email support@odoo4projects.com; contact form on support.html#contact. - Support: AI support bot (agent.js from static.odoo4projects.com) plus human team; email support@odoo4projects.com; contact form on support.html#contact.
- Blog with guides and news (10 posts); homepage renders it with search and pagination. - Blog with guides and news (10 posts); homepage renders it with search and pagination.
## Capabilities and Constraints ## Capabilities and Constraints
- Plans: Side Hustle $19.40/mo, On the Rise $36.25/mo (Git modules), Powerhouse $49.60/mo (2 workers, 2GB HDD, 3 domains), Empire $80+/mo (service on the customer's own server, contact to order). - Plans (list prices, per year, USD): Side Hustle $214, On the Rise $395 (Git modules), Powerhouse $595 (2 workers, 2GB HDD, 3 domains), Empire >$950 (service on the customer's own server, contact to order).
- Features: automatic daily backups (FIFO rotation, redundant slots), free SSL on every domain, Git-based module deployment (Quick Git one-click), full management via ODOO Settings Panel, worker scaling, daily security audits with automated patching, continuous performance monitoring, 6 regions. - Features: automatic daily backups (rotating slots, first-in-first-out: one on Side Hustle, four on On the Rise and Powerhouse), free SSL on every domain, Git-based module deployment (Quick Git one-click), full management via ODOO Settings Panel, worker scaling, daily security audits with automated patching, continuous performance monitoring, 6 regions.
- Enterprise-ready on Powerhouse and above; customer brings their own license. - Enterprise-ready on Powerhouse and above; customer brings their own license.
- ODOO4projects LLC; founding date 2020; partner: OD8N. - ODOO4projects LLC; founding date 2020; partner: OD8N.
- Constraint: this site remains a pure Odoo hosting seller. The PM Suite (Odoo-based project management + accounting tool for independent project managers, sold without Odoo branding) is a separate product on its own landing page and is not marketed on this site. - Constraint: this site remains a pure Odoo hosting seller. The PM Suite (Odoo-based project management + accounting tool for independent project managers, sold without Odoo branding) is a separate product on its own landing page and is not marketed on this site.
@@ -47,7 +47,7 @@ Enterprise-grade Odoo Community hosting without the enterprise price tag. Commun
- 7 named customer/partner sites with logos in the trust bar (see Brand Commitments). - 7 named customer/partner sites with logos in the trust bar (see Brand Commitments).
- 10 blog posts: Community vs Enterprise cost breakdown, AI agents with Community, enterprise migration guide, custom module how-to, deploy and backup speed runs, platform update, official partner news. - 10 blog posts: Community vs Enterprise cost breakdown, AI agents with Community, enterprise migration guide, custom module how-to, deploy and backup speed runs, platform update, official partner news.
- Plan names, prices, coupons, guarantees as listed above (from homepage code). - Plan names, prices and guarantees as listed above (from homepage code).
- No invented testimonials beyond plan quotes; no case studies on site. - No invented testimonials beyond plan quotes; no case studies on site.
## Product Principles ## Product Principles
+1 -1
View File
@@ -37,7 +37,7 @@
"date": "2026-06-24", "date": "2026-06-24",
"area": "news", "area": "news",
"headline": "Why ODOO Community is Perfect for Working with AI Agents", "headline": "Why ODOO Community is Perfect for Working with AI Agents",
"teaser": "ODOO Community's per-seat licensing model allows each AI agent to have its own access rights without additional costs - a game changer for automation.", "teaser": "Odoo Community carries no licensing fees, so each AI agent can have its own user account and access rights without additional cost - a game changer for automation.",
"link": "blog/posts/odoocommunity-agents.html" "link": "blog/posts/odoocommunity-agents.html"
} }
] ]
+1 -1
View File
@@ -280,7 +280,7 @@
<div class="cta-box"> <div class="cta-box">
<h3>Start with Community, Upgrade When Ready</h3> <h3>Start with Community, Upgrade When Ready</h3>
<p> <p>
ODOO4projects plans start at $19.40/month — enterprise-grade hosting ODOO4projects plans start at $214/year — enterprise-grade hosting
for your Odoo Community instance. No lock-in, no per-user fees. for your Odoo Community instance. No lock-in, no per-user fees.
</p> </p>
<a href="../../index.html#pricing" class="btn btn-primary">See Plans</a> <a href="../../index.html#pricing" class="btn btn-primary">See Plans</a>
+12 -7
View File
@@ -216,8 +216,7 @@
</p> </p>
<div class="pro-tip"> <div class="pro-tip">
<strong>Pro Tip:</strong> All plans include instant <strong>Pro Tip:</strong> All plans include instant
setup. If you're not satisfied within 30 days, we'll setup. You can cancel at any time.
refund you &mdash; no questions asked.
</div> </div>
<h2>Step 2: Deploy Your Instance</h2> <h2>Step 2: Deploy Your Instance</h2>
<p> <p>
@@ -231,11 +230,17 @@
Admin credentials: sent via email</code></pre> Admin credentials: sent via email</code></pre>
<h2>Step 3: Map Your Domain</h2> <h2>Step 3: Map Your Domain</h2>
<p> <p>
Want to use your own domain? Navigate to your account Want to use your own domain? Point the A record at your
dashboard and enter your domain name. We'll provide you server's IP address at your domain provider, then
with the DNS records to configure. Once your DNS restart the server so it picks up the new domain. Then
propagates, we automatically issue a free SSL add the domain inside Odoo under
certificate via Let's Encrypt. <strong>Settings &rarr; 4 Server &rarr; Domains</strong>.
Once the DNS propagates, we issue a free SSL certificate
via Let's Encrypt.
</p>
<p>
Domain mapping is not available on the free trial. It is
included from Side Hustle up.
</p> </p>
<h2>Step 4: Start Building</h2> <h2>Step 4: Start Building</h2>
<p> <p>
+8 -7
View File
@@ -8,7 +8,7 @@
</title> </title>
<meta <meta
name="description" name="description"
content="ODOO Community's per-seat licensing model allows each AI agent to have its own access rights without additional costs - a game changer for automation." content="Odoo Community carries no licensing fees, so each AI agent can have its own user account and access rights without additional cost - a game changer for automation."
/> />
<link <link
rel="canonical" rel="canonical"
@@ -20,7 +20,7 @@
/> />
<meta <meta
property="og:description" property="og:description"
content="ODOO Community's per-seat licensing model allows each AI agent to have its own access rights without additional costs - a game changer for automation." content="Odoo Community carries no licensing fees, so each AI agent can have its own user account and access rights without additional cost - a game changer for automation."
/> />
<meta property="og:type" content="article" /> <meta property="og:type" content="article" />
<meta name="twitter:card" content="summary_large_image" /> <meta name="twitter:card" content="summary_large_image" />
@@ -158,10 +158,11 @@
AI agents are transforming how businesses operate, and AI agents are transforming how businesses operate, and
ODOO Community Edition is uniquely positioned to harness ODOO Community Edition is uniquely positioned to harness
this revolution. Unlike Enterprise, which requires per-user this revolution. Unlike Enterprise, which requires per-user
licenses that scale costs linearly, Community Edition's licenses that scale costs linearly, Community Edition
per-seat licensing model allows each AI agent to have its carries no licensing fees at all, so each AI agent can have
own access rights <strong>without additional costs</strong> its own user account and access rights
&mdash; a genuine game changer for automation. <strong>without additional costs</strong> &mdash; a
genuine game changer for automation.
</p> </p>
<h2>The Licensing Advantage</h2> <h2>The Licensing Advantage</h2>
@@ -201,7 +202,7 @@
ODOO Community's robust access control lists (ACLs), ODOO Community's robust access control lists (ACLs),
record rules, and security groups let you define record rules, and security groups let you define
exactly what each agent can see and do. Combined with exactly what each agent can see and do. Combined with
the per-seat model, you can have: granular user accounts, you can have:
</p> </p>
<ul> <ul>
<li> <li>
+26 -18
View File
@@ -164,37 +164,45 @@
<div class="post-content"> <div class="post-content">
<p> <p>
Data loss is every business owner's nightmare. With Data loss is every business owner's nightmare. With
ODOO4projects, you can set up automated daily backups in ODOO4projects, backups are already running before you
under two minutes. Here's the speed-run. look — here's how to check them in under two minutes.
</p> </p>
<h2>Step 1: Open Your Dashboard</h2> <h2>Step 1: Open Your Odoo</h2>
<p> <p>
Log in to your ODOO4projects account and navigate to the Log in to your Odoo instance — the same login you always
<strong>Backups</strong> tab. use. There is no separate hosting dashboard to open.
Backups run as a scheduled action inside Odoo, and you
manage them there.
</p> </p>
<h2>Step 2: Enable Automated Backups</h2> <h2>Step 2: Check the Backup Job</h2>
<p> <p>
Click the toggle to enable automated backups. Choose Backups are already running for you. To see or adjust
your preferred time window and retention period (7, 14, the schedule, turn on Development Mode in Odoo and open
or 30 days). the scheduled action that runs the backup job. You can
review it, adjust it, or trigger it by hand.
</p> </p>
<pre><code>Dashboard &gt; Backups &gt; Enable Automated Backups <pre><code>Odoo &gt; Settings &gt; Development Mode (on)
Recommended: Daily at 02:00 UTC, 14-day retention</code></pre> Odoo &gt; Settings &gt; Technical &gt; Scheduled Actions &gt; backup job</code></pre>
<h2>Step 3: You're Done</h2> <h2>Step 3: You're Done</h2>
<p> <p>
That's it. Your data is now backed up automatically That's it. Your data is backed up on the schedule, and
every day. You can also trigger manual backups anytime you can trigger a backup by hand any time from the same
from the same screen. screen.
</p> </p>
<div class="pro-tip"> <div class="pro-tip">
<strong>Pro Tip:</strong> For critical data, enable the <strong>Pro Tip:</strong> Your plan decides how many
30-day retention option and set up a weekly manual backups you keep. Side Hustle keeps one, On the Rise and
backup before major customizations or upgrades. Powerhouse keep four. When the slots are full the oldest
backup is overwritten and permanently deleted, so before
a major change, download a copy of the database you want
to keep.
</div> </div>
<div class="cta-box"> <div class="cta-box">
<h3>Protect Your Business Data</h3> <h3>Protect Your Business Data</h3>
<p> <p>
All ODOO4projects plans include automated backups. Every paid plan includes automated backups — one
slot on Side Hustle, four on On the Rise and
Powerhouse. The free trial has none.
</p> </p>
<a href="../../index.html#pricing" class="btn btn-primary" <a href="../../index.html#pricing" class="btn btn-primary"
>Choose a Plan</a >Choose a Plan</a
+15 -7
View File
@@ -170,12 +170,20 @@
<p><strong>What you get in this trial:</strong></p> <p><strong>What you get in this trial:</strong></p>
<ul> <ul>
<li>Odoo Community V20 — fully featured, open-source ERP</li> <li>An Odoo Community V20 instance, provisioned in a few minutes</li>
<li>Automatic backups and SSL certificate</li> <li>Every app that ships with Odoo Community</li>
<li>Domain mapping (use your own domain or our free subdomain)</li> <li>Login credentials by email — one login, inside your Odoo</li>
<li>No credit card required</li>
</ul> </ul>
<p><strong>What the trial does not include:</strong></p>
<ul>
<li>Backups — the trial has none. Paid plans include them.</li>
<li>Domain mapping — your own domain needs a paid plan.</li>
<li>Module installation — custom and OCA modules install from On the Rise up.</li>
</ul>
<p>No credit card to start. You only need a card when you buy a plan.</p>
<div class="support"> <div class="support">
<p>Questions? Reply to this email or contact us directly:</p> <p>Questions? Reply to this email or contact us directly:</p>
<p><a href="mailto:support@odoo4projects.com">support@odoo4projects.com</a></p> <p><a href="mailto:support@odoo4projects.com">support@odoo4projects.com</a></p>
@@ -188,14 +196,14 @@
<td class="footer"> <td class="footer">
<p><strong>ODOO4projects</strong> — Smart, scalable business solutions</p> <p><strong>ODOO4projects</strong> — Smart, scalable business solutions</p>
<p> <p>
<a href="https://odoo4projects.com/legal/privacy">Privacy</a> &bull; <a href="https://odoo4projects.com/privacy.html">Privacy</a> &bull;
<a href="https://odoo4projects.com/legal/terms">Terms</a> &bull; <a href="https://odoo4projects.com/terms.html">Terms</a> &bull;
<a href="https://ODOO4projects.com/support.html#contact">Contact</a> <a href="https://ODOO4projects.com/support.html#contact">Contact</a>
</p> </p>
<p class="unsubscribe"> <p class="unsubscribe">
<a href="https://odoo4projects.com/unsubscribe?token=USER_TOKEN">Unsubscribe</a> from these emails <a href="https://odoo4projects.com/unsubscribe?token=USER_TOKEN">Unsubscribe</a> from these emails
</p> </p>
<p style="margin-top: 8px; opacity: 0.7;">&copy; 2024 ODOO4projects LLC. All rights reserved.</p> <p style="margin-top: 8px; opacity: 0.7;">&copy; 2026 ODOO4projects LLC. All rights reserved.</p>
</td> </td>
</tr> </tr>
</table> </table>
+9 -19
View File
@@ -25,7 +25,7 @@
"offers": [ "offers": [
{ "@type": "Offer", "name": "Side Hustle", "price": "214.00", "priceCurrency": "USD", "url": "https://ODOO4projects.com/#pricing" }, { "@type": "Offer", "name": "Side Hustle", "price": "214.00", "priceCurrency": "USD", "url": "https://ODOO4projects.com/#pricing" },
{ "@type": "Offer", "name": "On the Rise", "price": "395.00", "priceCurrency": "USD", "url": "https://ODOO4projects.com/#pricing" }, { "@type": "Offer", "name": "On the Rise", "price": "395.00", "priceCurrency": "USD", "url": "https://ODOO4projects.com/#pricing" },
{ "@type": "Offer", "name": "Powerhouse", "price": "535.00", "priceCurrency": "USD", "url": "https://ODOO4projects.com/#pricing" }, { "@type": "Offer", "name": "Powerhouse", "price": "595.00", "priceCurrency": "USD", "url": "https://ODOO4projects.com/#pricing" },
{ "@type": "Offer", "name": "Empire", "price": ">950.00", "priceCurrency": "USD", "url": "https://ODOO4projects.com/#pricing" } { "@type": "Offer", "name": "Empire", "price": ">950.00", "priceCurrency": "USD", "url": "https://ODOO4projects.com/#pricing" }
] ]
} }
@@ -308,7 +308,7 @@
<div class="feature-card"> <div class="feature-card">
<i class="fas fa-shield-alt"></i> <i class="fas fa-shield-alt"></i>
<h3>Automatic Backups &amp; SSL</h3> <h3>Automatic Backups &amp; SSL</h3>
<p>Daily backups stored in redundant slots. Free SSL certificates on every domain — always secure.</p> <p>Backups run on a schedule and are kept in rotating slots — one on Side Hustle, four on On the Rise and Powerhouse. Free SSL certificates on every domain — always secure.</p>
</div> </div>
<div class="feature-card"> <div class="feature-card">
<i class="fas fa-cubes"></i> <i class="fas fa-cubes"></i>
@@ -366,7 +366,7 @@
</div> </div>
<div class="faq-card" onclick="this.classList.toggle('open')"> <div class="faq-card" onclick="this.classList.toggle('open')">
<div class="faq-q"><span>Do you have an affiliate program?</span> <i class="fas fa-chevron-down"></i></div> <div class="faq-q"><span>Do you have an affiliate program?</span> <i class="fas fa-chevron-down"></i></div>
<div class="faq-a"><p>No. We believe it is in our best interest to have competitive prices for our shared clients. We offer coupon codes for startups and NGOs.</p></div> <div class="faq-a"><p>No. We believe it is in our best interest to have competitive prices for our shared clients.</p></div>
</div> </div>
</div> </div>
<a href="support.html" class="faq-link">Full FAQ &rarr;</a> <a href="support.html" class="faq-link">Full FAQ &rarr;</a>
@@ -395,7 +395,6 @@
<div class="price"> <div class="price">
<strong>$ 214.00</strong> <strong>$ 214.00</strong>
<small class="price-period">/ year</small> <small class="price-period">/ year</small>
<div class="price-save">Save 8%</div>
</div> </div>
<p class="desc">"ODOO Standard .. that is all my business needs"</p> <p class="desc">"ODOO Standard .. that is all my business needs"</p>
<a href="javascript:void(0)" class="btn btn-brass btn-buy" data-id="6">Buy Now</a> <a href="javascript:void(0)" class="btn btn-brass btn-buy" data-id="6">Buy Now</a>
@@ -414,7 +413,6 @@
<div class="price"> <div class="price">
<strong>$ 395.00</strong> <strong>$ 395.00</strong>
<small class="price-period">/ year</small> <small class="price-period">/ year</small>
<div class="price-save">Save 9%</div>
</div> </div>
<p class="desc">"I need some modules and professional reports"</p> <p class="desc">"I need some modules and professional reports"</p>
<a href="javascript:void(0)" class="btn btn-brass btn-buy" data-id="4">Buy Now</a> <a href="javascript:void(0)" class="btn btn-brass btn-buy" data-id="4">Buy Now</a>
@@ -432,9 +430,8 @@
<div class="pcard-body"> <div class="pcard-body">
<h3>Powerhouse</h3> <h3>Powerhouse</h3>
<div class="price"> <div class="price">
<strong>$ 535.00</strong> <strong>$ 595.00</strong>
<small class="price-period">/ year</small> <small class="price-period">/ year</small>
<div class="price-save">Save 10%</div>
</div> </div>
<p class="desc">"ODOO Enterprise is a must have!"</p> <p class="desc">"ODOO Enterprise is a must have!"</p>
<a href="javascript:void(0)" class="btn btn-brass btn-buy" data-id="5">Buy Now</a> <a href="javascript:void(0)" class="btn btn-brass btn-buy" data-id="5">Buy Now</a>
@@ -455,7 +452,6 @@
<div class="price"> <div class="price">
<strong>&gt;$ 950.00</strong> <strong>&gt;$ 950.00</strong>
<small class="price-period">/ year</small> <small class="price-period">/ year</small>
<div class="price-save"></div>
</div> </div>
<p class="desc">"My house! My Horse! My Server!"</p> <p class="desc">"My house! My Horse! My Server!"</p>
<a href="javascript:void(0)" class="btn btn-brass btn-empire">Get Custom Quote</a> <a href="javascript:void(0)" class="btn btn-brass btn-empire">Get Custom Quote</a>
@@ -483,8 +479,8 @@
<span class="ow-price-amount" id="orderPlanPrice">$ 395.00</span> <span id="orderPlanPeriod">/ year</span> <span class="ow-price-amount" id="orderPlanPrice">$ 395.00</span> <span id="orderPlanPeriod">/ year</span>
<span class="ow-price-tax" id="orderPlanTax">+ tax</span> <span class="ow-price-tax" id="orderPlanTax">+ tax</span>
</p> </p>
<p class="ow-coupon-msg" id="orderCouponMsg">Use coupon <strong>FREE TRIAL</strong> at checkout for 1 month free</p> <p class="ow-coupon-msg" id="orderCouponMsg">Questions before you buy? Ask the assistant on this page.</p>
<p class="ow-yearly-save" id="orderYearlySave">Save <span id="orderSavePercent">15</span>% with yearly billing</p> <p class="ow-yearly-save" id="orderYearlySave">Billed yearly. No setup fee.</p>
<label class="ow-field-label" for="orderServerLocation">Server Location</label> <label class="ow-field-label" for="orderServerLocation">Server Location</label>
<select id="orderServerLocation" class="ow-select"> <select id="orderServerLocation" class="ow-select">
<option value="USA">United States (Boston)</option> <option value="USA">United States (Boston)</option>
@@ -494,16 +490,8 @@
<option value="Netherlands">Netherlands (Amsterdam)</option> <option value="Netherlands">Netherlands (Amsterdam)</option>
<option value="UK">United Kingdom (London)</option> <option value="UK">United Kingdom (London)</option>
</select> </select>
<div style="margin-bottom:1rem">
<label class="ow-field-label" for="orderCouponInput">Coupon Code</label>
<div class="ow-coupon-row">
<input id="orderCouponInput" type="text" value="FREE TRIAL" class="ow-input" />
<button class="ow-btn-apply" onclick="applyCoupon()">Apply</button>
</div>
<p class="ow-coupon-status" id="orderCouponStatus">&#10003; Coupon applied</p>
</div>
<a id="orderBuyBtn" href="/support.html#contact" class="btn btn-brass ow-buy">Continue to Stripe &rarr;</a> <a id="orderBuyBtn" href="/support.html#contact" class="btn btn-brass ow-buy">Continue to Stripe &rarr;</a>
<p class="ow-note">&#128274; Secure Stripe checkout &middot; Credit card required</p> <p class="ow-note">&#128274; Secure Stripe checkout &middot; Card required to buy, not to start.</p>
</div> </div>
</div> </div>
</div> </div>
@@ -627,6 +615,8 @@
<li><a href="index.html">Home</a></li> <li><a href="index.html">Home</a></li>
<li><a href="support.html">Support</a></li> <li><a href="support.html">Support</a></li>
<li><a href="legal.html">Legal</a></li> <li><a href="legal.html">Legal</a></li>
<li><a href="privacy.html">Privacy</a></li>
<li><a href="terms.html">Terms</a></li>
<li><a href="/support.html#contact">Contact us</a></li> <li><a href="/support.html#contact">Contact us</a></li>
</ul> </ul>
</div> </div>
+15
View File
@@ -131,6 +131,21 @@
</p> </p>
</div> </div>
<div class="legal-card">
<h2>Privacy &amp; Terms</h2>
<p>
What data we hold and how we use it:
<a href="privacy.html">Privacy Policy</a>
</p>
<p>
The rules of the service, plans, trial and cancellation:
<a href="terms.html">Terms of Service</a>
</p>
<p style="margin-top: 0.75rem; font-size: 0.82rem;">
Both pages last updated 2026-10-21.
</p>
</div>
<div class="legal-card"> <div class="legal-card">
<h2>Image Credits</h2> <h2>Image Credits</h2>
<div class="image-credits"> <div class="image-credits">
+6 -2
View File
@@ -10,7 +10,9 @@
- Side Hustle — $214 per year. Managed Odoo Community hosting: server, backups, SSL. No per-user - Side Hustle — $214 per year. Managed Odoo Community hosting: server, backups, SSL. No per-user
licence. No module installation on this plan. licence. No module installation on this plan.
- On the Rise — $395 per year. The same, plus Git and one-click module installs. - On the Rise — $395 per year. The same, plus Git and one-click module installs.
- Powerhouse and Empire — quoted on the plans page (no fixed price published). - Powerhouse — $595 per year. Everything in On the Rise, plus Odoo Enterprise readiness and two
workers.
- Empire — quoted on the plans page (no fixed price published).
- Odoo Community has no per-user licence. Odoo Enterprise, if the customer brings their own - Odoo Community has no per-user licence. Odoo Enterprise, if the customer brings their own
licence, is licensed per user by Odoo S.A. licence, is licensed per user by Odoo S.A.
@@ -31,7 +33,9 @@
- [Odoo hosting 2027 — comparison landing page](https://odoo4projects.com/odoo-hosting-2027.html): every route to Odoo (managed, VPS, odoo.sh, Odoo Online, own hardware) side by side, with annual and five-year cost comparisons. - [Odoo hosting 2027 — comparison landing page](https://odoo4projects.com/odoo-hosting-2027.html): every route to Odoo (managed, VPS, odoo.sh, Odoo Online, own hardware) side by side, with annual and five-year cost comparisons.
- [Home](https://odoo4projects.com/): plans and pricing, FAQ, server locations. - [Home](https://odoo4projects.com/): plans and pricing, FAQ, server locations.
- [Support](https://odoo4projects.com/support.html): support and frequently asked questions. - [Support](https://odoo4projects.com/support.html): support and frequently asked questions.
- [Legal](https://odoo4projects.com/legal): company details. - [Legal](https://odoo4projects.com/legal.html): company details.
- [Privacy Policy](https://odoo4projects.com/privacy.html): what data we hold and how we use it.
- [Terms of Service](https://odoo4projects.com/terms.html): plans, trial, payment and cancellation.
- [Blog](https://odoo4projects.com/blog/): guides, how-tos and platform news. - [Blog](https://odoo4projects.com/blog/): guides, how-tos and platform news.
## Notes ## Notes
+6 -1
View File
@@ -817,6 +817,11 @@
<td class="is-us"><strong>$395</strong></td> <td class="is-us"><strong>$395</strong></td>
<td class="is-us">The same, plus Git and one-click module installs.</td> <td class="is-us">The same, plus Git and one-click module installs.</td>
</tr> </tr>
<tr>
<th scope="row" class="is-us">ODOO4projects — Powerhouse</th>
<td class="is-us"><strong>$595</strong></td>
<td class="is-us">All of On the Rise, plus Odoo Enterprise readiness and two workers. No per-user licence.</td>
</tr>
<tr> <tr>
<th scope="row">Self-managed VPS</th> <th scope="row">Self-managed VPS</th>
<td><strong>about $102</strong></td> <td><strong>about $102</strong></td>
@@ -859,7 +864,7 @@
Five-year totals at list: Side Hustle $1,070, Odoo Online $23,340, odoo.sh $49,188. The last two Five-year totals at list: Side Hustle $1,070, Odoo Online $23,340, odoo.sh $49,188. The last two
do not include your time, and ours carries no per-user licence. do not include your time, and ours carries no per-user licence.
</li> </li>
<li>Our Powerhouse and Empire plans are quoted on the plans page.</li> <li>Our Empire plan is quoted on the plans page.</li>
<li> <li>
Prices are from the vendors' own published pages (odoo.com/pricing, odoo.sh/pricing, Prices are from the vendors' own published pages (odoo.com/pricing, odoo.sh/pricing,
ovhcloud.com, hetzner.com), so you can check every figure here yourself. ovhcloud.com, hetzner.com), so you can check every figure here yourself.
+1 -1
View File
@@ -213,7 +213,7 @@
<!-- ── Trial ─────────────────────────────────────────────────── --> <!-- ── Trial ─────────────────────────────────────────────────── -->
<div class="plan-card" id="card-trial"> <div class="plan-card" id="card-trial">
<div class="plan-name">Trial</div> <div class="plan-name">Trial</div>
<div class="plan-price">4 weeks free</div> <div class="plan-price">30 days free</div>
<div class="plan-price-period">&nbsp;</div> <div class="plan-price-period">&nbsp;</div>
<div class="plan-tagline"> <div class="plan-tagline">
"I want to see what ODOO can do for my company." "I want to see what ODOO can do for my company."
+194
View File
@@ -0,0 +1,194 @@
<!doctype html>
<html lang="en-US">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<meta
name="description"
content="Privacy Policy for ODOO4projects LLC — what data we hold, where your instance runs, and how to reach us."
/>
<title>Privacy Policy | ODOO4projects</title>
<link rel="canonical" href="https://odoo4projects.com/privacy.html" />
<meta property="og:title" content="Privacy Policy | ODOO4projects" />
<meta property="og:description" content="What data ODOO4projects holds and why." />
<meta property="og:type" content="website" />
<meta property="og:url" content="https://odoo4projects.com/privacy.html" />
<meta name="twitter:card" content="summary_large_image" />
<link rel="icon" href="images/favicon.ico" />
<link rel="preconnect" href="https://fonts.googleapis.com" />
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
<link
rel="stylesheet"
href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Inter+Tight:wght@500;600;700;800&display=swap"
/>
<link
rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css"
/>
<link rel="stylesheet" href="style.css" />
<style>
.legal-hero {
padding: 4rem 0 2.5rem;
text-align: center;
background: var(--light);
border-bottom: 1px solid var(--border);
}
.legal-hero h1 {
font-size: clamp(1.8rem, 3.2vw, 2.8rem);
color: var(--dark);
}
.legal-section {
padding: 3rem 0 4rem;
}
.legal-section .container {
max-width: 700px;
}
.legal-card {
background: #fff;
border: 1px solid var(--border);
border-radius: var(--radius-lg);
padding: 1.75rem;
margin-bottom: 1.25rem;
}
.legal-card:last-child {
margin-bottom: 0;
}
.legal-card h2 {
font-size: 1.05rem;
font-weight: 600;
color: var(--primary);
margin-bottom: 0.75rem;
padding-bottom: 0.5rem;
border-bottom: 1px solid var(--border);
}
.legal-card p,
.legal-card .address {
color: rgba(33, 37, 41, 0.7);
font-size: 0.88rem;
line-height: 1.7;
margin-bottom: 0.4rem;
}
.legal-card strong {
color: var(--dark);
}
.legal-card .contact-email {
color: var(--primary);
font-weight: 500;
}
.image-credits {
display: flex;
flex-direction: column;
gap: 0.3rem;
}
.image-credits .credit-row {
color: rgba(33, 37, 41, 0.6);
font-size: 0.82rem;
}
.image-credits .credit-row a {
color: var(--primary);
}
.trademark-notice {
background: rgba(113, 75, 103, 0.04);
border: 1px solid rgba(113, 75, 103, 0.15);
border-radius: var(--radius);
padding: 1rem 1.25rem;
}
.trademark-notice p {
font-size: 0.82rem;
margin: 0;
color: rgba(33, 37, 41, 0.6);
}
@media (max-width: 768px) {
.legal-hero { padding: 2.5rem 0 1.5rem; }
.legal-card { padding: 1.25rem; }
}
</style>
</head>
<body>
<div class="container">
<div class="blog-header">
<a href="index.html">&larr; Back to Home</a>
</div>
</div>
<section class="legal-hero">
<div class="container">
<h1>Privacy Policy</h1>
<p style="margin-top: 0.5rem; color: rgba(33, 37, 41, 0.6); font-size: 0.85rem;">
Last updated 2026-10-21
</p>
</div>
</section>
<section class="legal-section">
<div class="container">
<div class="legal-card">
<h2>Who we are</h2>
<p><strong>ODOO4projects LLC</strong></p>
<p class="address">
30 N Gould St, STE R, Sheridan<br />
WY 82801, USA
</p>
<p>Contact: <span class="contact-email">support@ODOO4projects.com</span></p>
</div>
<div class="legal-card">
<h2>What we hold</h2>
<p><strong>Account details you give us:</strong> your name, your company name, and your email address.</p>
<p><strong>Service details:</strong> the plan you bought, the region you chose, and your instance address.</p>
<p><strong>Payment records:</strong> invoices and their payment status.</p>
<p><strong>Support messages:</strong> what you send us, and our replies.</p>
<p>Card details are entered on Stripe's checkout page. We do not receive or store your card number.</p>
</div>
<div class="legal-card">
<h2>Why we hold it</h2>
<p>To create and run your instance, to invoice you, to answer your support requests, and to email you about your account.</p>
</div>
<div class="legal-card">
<h2>Where your instance runs</h2>
<p>You choose the region when you sign up. The regions we offer are Amsterdam, Boston, Manchester, Mumbai, S&atilde;o Paulo and Sydney. Your instance and its data run in the region you chose.</p>
</div>
<div class="legal-card">
<h2>Backups</h2>
<p>How many backups we keep depends on your plan: one rotating slot on Side Hustle, four on On the Rise and Powerhouse. Slots work first-in, first-out. When the slots are full, the oldest backup is overwritten and permanently deleted. We keep no separate copy.</p>
<p>The free trial has no backups.</p>
</div>
<div class="legal-card">
<h2>The assistant on this website</h2>
<p>Our homepage carries an AI assistant that answers questions and can pass a request to a person. Do not enter confidential information into it.</p>
</div>
<div class="legal-card">
<h2>Other services our pages load</h2>
<p>Our pages load Stripe (payments), Google Fonts, Font Awesome, GSAP, and our own agent widget from our server. Like any website, these requests can see the IP address your browser connects from.</p>
</div>
<div class="legal-card">
<h2>Email</h2>
<p>We email you about your account, your invoices and your service. Marketing email carries an unsubscribe link, and unsubscribing does not stop service email about an active account.</p>
</div>
<div class="legal-card">
<h2>What we do not do</h2>
<p>We do not sell your data. We run no affiliate programme and we pay no commission to anyone who recommends us.</p>
</div>
<div class="legal-card">
<h2>Your requests</h2>
<p>Ask us for a copy of your data, a correction, or deletion at <span class="contact-email">support@ODOO4projects.com</span>. If your account is active, deletion ends the service. We keep invoice records for as long as accounting rules require them.</p>
</div>
<div class="legal-card">
<h2>Changes</h2>
<p>We update this page when the facts change. The date at the top changes with it.</p>
</div>
</div>
</section>
<script defer src="/static/agent-odoo4projects/agent.js"></script>
</body>
</html>
-14
View File
@@ -295,20 +295,6 @@ var si = 0,
encodeURIComponent(loc) + encodeURIComponent(loc) +
(utmQuery ? "&" + utmQuery : ""); (utmQuery ? "&" + utmQuery : "");
}); });
function applyCoupon() {
var input = document.getElementById("orderCouponInput");
var status = document.getElementById("orderCouponStatus");
var code = input.value.trim();
if (code.toLowerCase() === "free trial") {
status.textContent =
"\u2713 Coupon FREE TRIAL applied - 1 month free";
status.style.color = "#1a7f37";
} else {
status.textContent = "Invalid coupon code";
status.style.color = "#dc3545";
}
status.style.display = "block";
}
/* ---- Blog Module ---- */ /* ---- Blog Module ---- */
var blogState = { var blogState = {
allPosts: [], allPosts: [],
+12
View File
@@ -60,4 +60,16 @@
<changefreq>monthly</changefreq> <changefreq>monthly</changefreq>
<priority>0.6</priority> <priority>0.6</priority>
</url> </url>
<url>
<loc>https://odoo4projects.com/privacy.html</loc>
<lastmod>2026-10-21</lastmod>
<changefreq>yearly</changefreq>
<priority>0.3</priority>
</url>
<url>
<loc>https://odoo4projects.com/terms.html</loc>
<lastmod>2026-10-21</lastmod>
<changefreq>yearly</changefreq>
<priority>0.3</priority>
</url>
</urlset> </urlset>
+2 -2
View File
@@ -325,8 +325,8 @@
<span class="faq-icon"><i class="fas fa-chevron-down"></i></span> <span class="faq-icon"><i class="fas fa-chevron-down"></i></span>
</button> </button>
<div class="faq-answer"> <div class="faq-answer">
<p>Open the Apps menu, search for the app you want, and click Install. Once installed, the app will appear in your main menu, ready to use. For additional apps not included by default, you can also install them via Git or use our one-click Quick Git feature for faster setup.</p> <p>Open the Apps menu, search for the app you want, and click Install. That covers every app that ships with Odoo Community, and it works on every plan.</p>
<p>All Odoo Community apps are included, and more free apps can be found at <a href="https://odoo-community.org/" target="_blank" rel="noopener">odoo-community.org</a>.</p> <p>Apps that are not part of Odoo Community — custom modules and modules from <a href="https://odoo-community.org/" target="_blank" rel="noopener">odoo-community.org</a> — are installed for you by Git or with our one-click Quick Git. Custom and OCA modules install from On the Rise up. Side Hustle has no module installation.</p>
</div> </div>
</div> </div>
<div class="faq-item"> <div class="faq-item">
+192
View File
@@ -0,0 +1,192 @@
<!doctype html>
<html lang="en-US">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<meta
name="description"
content="Terms of Service for ODOO4projects LLC — plans, the free trial, payment, cancellation and your data."
/>
<title>Terms of Service | ODOO4projects</title>
<link rel="canonical" href="https://odoo4projects.com/terms.html" />
<meta property="og:title" content="Terms of Service | ODOO4projects" />
<meta property="og:description" content="The rules of the ODOO4projects service." />
<meta property="og:type" content="website" />
<meta property="og:url" content="https://odoo4projects.com/terms.html" />
<meta name="twitter:card" content="summary_large_image" />
<link rel="icon" href="images/favicon.ico" />
<link rel="preconnect" href="https://fonts.googleapis.com" />
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
<link
rel="stylesheet"
href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Inter+Tight:wght@500;600;700;800&display=swap"
/>
<link
rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css"
/>
<link rel="stylesheet" href="style.css" />
<style>
.legal-hero {
padding: 4rem 0 2.5rem;
text-align: center;
background: var(--light);
border-bottom: 1px solid var(--border);
}
.legal-hero h1 {
font-size: clamp(1.8rem, 3.2vw, 2.8rem);
color: var(--dark);
}
.legal-section {
padding: 3rem 0 4rem;
}
.legal-section .container {
max-width: 700px;
}
.legal-card {
background: #fff;
border: 1px solid var(--border);
border-radius: var(--radius-lg);
padding: 1.75rem;
margin-bottom: 1.25rem;
}
.legal-card:last-child {
margin-bottom: 0;
}
.legal-card h2 {
font-size: 1.05rem;
font-weight: 600;
color: var(--primary);
margin-bottom: 0.75rem;
padding-bottom: 0.5rem;
border-bottom: 1px solid var(--border);
}
.legal-card p,
.legal-card .address {
color: rgba(33, 37, 41, 0.7);
font-size: 0.88rem;
line-height: 1.7;
margin-bottom: 0.4rem;
}
.legal-card strong {
color: var(--dark);
}
.legal-card .contact-email {
color: var(--primary);
font-weight: 500;
}
.image-credits {
display: flex;
flex-direction: column;
gap: 0.3rem;
}
.image-credits .credit-row {
color: rgba(33, 37, 41, 0.6);
font-size: 0.82rem;
}
.image-credits .credit-row a {
color: var(--primary);
}
.trademark-notice {
background: rgba(113, 75, 103, 0.04);
border: 1px solid rgba(113, 75, 103, 0.15);
border-radius: var(--radius);
padding: 1rem 1.25rem;
}
.trademark-notice p {
font-size: 0.82rem;
margin: 0;
color: rgba(33, 37, 41, 0.6);
}
@media (max-width: 768px) {
.legal-hero { padding: 2.5rem 0 1.5rem; }
.legal-card { padding: 1.25rem; }
}
</style>
</head>
<body>
<div class="container">
<div class="blog-header">
<a href="index.html">&larr; Back to Home</a>
</div>
</div>
<section class="legal-hero">
<div class="container">
<h1>Terms of Service</h1>
<p style="margin-top: 0.5rem; color: rgba(33, 37, 41, 0.6); font-size: 0.85rem;">
Last updated 2026-10-21
</p>
</div>
</section>
<section class="legal-section">
<div class="container">
<div class="legal-card">
<h2>Who we are</h2>
<p>ODOO4projects LLC, 30 N Gould St, STE R, Sheridan, WY 82801, USA. Contact: <span class="contact-email">support@ODOO4projects.com</span></p>
<p>These terms cover the hosting service we sell on this website.</p>
</div>
<div class="legal-card">
<h2>The service</h2>
<p>We host and manage an Odoo Community instance for you. We run the server, the backups, the SSL certificate and the updates. You use the instance to run your business.</p>
</div>
<div class="legal-card">
<h2>Your plan</h2>
<p>Every app that ships with Odoo Community is available on every plan. Custom modules and modules from odoo-community.org install from On the Rise up. Side Hustle has no module installation.</p>
<p>Backup slots and domain routings are listed on the pricing page and in the app. Side Hustle keeps one backup slot and one domain; On the Rise and Powerhouse keep four backups and three domains.</p>
</div>
<div class="legal-card">
<h2>The free trial</h2>
<p>The trial runs for 30 days from signup and there is one way to start it: sign up. No credit card is needed to start.</p>
<p>The trial has no backups, no domain mapping and no module installation.</p>
</div>
<div class="legal-card">
<h2>Price and payment</h2>
<p>Plans are billed yearly, in advance, in US dollars, plus tax where it applies. Payment is taken by card through Stripe. The current prices are the ones on the pricing page.</p>
</div>
<div class="legal-card">
<h2>Cancelling</h2>
<p>You can cancel at any time. Cancelling stops the next renewal. It does not refund the period you have already paid for. We make no refund promise beyond what is written here.</p>
</div>
<div class="legal-card">
<h2>Version upgrades and migrations</h2>
<p>Ask our support team for a version upgrade. We migrate databases on the main Odoo releases 17, 18 and 19. We do not support patch releases such as 18.1.</p>
</div>
<div class="legal-card">
<h2>Your data</h2>
<p>Your data is yours. You can export it from your instance at any time. We hold it only to run the service for you, as described in the <a href="privacy.html">Privacy Policy</a>.</p>
</div>
<div class="legal-card">
<h2>What you must not do</h2>
<p>Do not use the service for anything unlawful, do not resell it as your own, and do not attempt to interfere with the platform or with other customers' instances.</p>
</div>
<div class="legal-card">
<h2>Availability and maintenance</h2>
<p>The service needs restarts, patches and maintenance from time to time. We keep interruptions as short as we can and we do not promise a fixed uptime figure.</p>
</div>
<div class="legal-card">
<h2>Changes to these terms</h2>
<p>We update these terms when the service changes. The date at the top changes with them.</p>
</div>
<div class="legal-card">
<h2>Governing law</h2>
<p>These terms are governed by the laws of the State of Wyoming, United States.</p>
</div>
</div>
</section>
<script defer src="/static/agent-odoo4projects/agent.js"></script>
</body>
</html>