Files
ODOO4projects.com/odoo-erp-automation-bootcamp/index.html
T
oliver 0cd0fa1af1 feat(analytics): Plausible snippet on every page, FAQ marked on the bootcamp
The snippet was on 10 of 40 pages, so the Trial / FAQ / Buy / Custom Quote /
search posts / Project Plan goals were inert everywhere else. It now sits
verbatim, in the same <head> position as index.html, on all 39 visitor-facing
pages. email/trial-confirmation.html is deliberately left out (email template).

FAQ: the five <details class="bc-faq"> <summary> elements on the bootcamp page
and its DE/ES twins now carry plausible-event-name=FAQ, and the 15
.faq-question buttons on de/es/support.html get the marking they were believed
to already have. No goal renamed: one FAQ goal across all languages.

No markup, copy or behaviour change, and no third-party request beyond the
snippet itself. verify-html.py PROBLEMS 0; check-links.py OK; event checker
59 PASS / 0 FAIL; impeccable detector +0/-0 findings on the changed files.
2026-10-28 21:50:53 +00:00

895 lines
37 KiB
HTML

<!doctype html>
<html lang="en-US">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Odoo Bootcamp: From Zero to a Running ERP in 3 Months</title>
<meta
name="description"
content="Ten live Thursday sessions with Oliver Arnold, Technical Lead at ODOO4projects. Build a working ERP for your business: quotes, invoices, stock."
/>
<link rel="canonical" href="https://odoo4projects.com/odoo-erp-automation-bootcamp/" />
<link rel="alternate" hreflang="en-US" href="https://odoo4projects.com/odoo-erp-automation-bootcamp/" />
<link rel="alternate" hreflang="de" href="https://odoo4projects.com/de/odoo-erp-automation-bootcamp/" />
<link rel="alternate" hreflang="es" href="https://odoo4projects.com/es/odoo-erp-automation-bootcamp/" />
<link rel="alternate" hreflang="x-default" href="https://odoo4projects.com/odoo-erp-automation-bootcamp/" />
<meta property="og:title" content="Odoo Bootcamp: From Zero to a Running ERP in 3 Months" />
<meta
property="og:description"
content="Ten live Thursday sessions with Oliver Arnold, Technical Lead at ODOO4projects. Build a working ERP for your business: quotes, invoices, stock."
/>
<meta property="og:type" content="website" />
<meta property="og:url" content="https://odoo4projects.com/odoo-erp-automation-bootcamp/" />
<meta name="twitter:card" content="summary" />
<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&family=Marcellus&display=swap"
media="print"
onload="this.media='all'"
/>
<noscript><link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Marcellus&display=swap" /></noscript>
<link rel="stylesheet" href="/style.css" media="print" onload="this.media='all'" />
<noscript><link rel="stylesheet" href="/style.css" /></noscript>
<style>
/* ---- ODOO ERP Automation Bootcamp landing page (page-scoped; additive) ---- */
.bc-sr-only {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border: 0;
}
/* Top bar (page-scoped: the site has no global header) */
.bc-topbar {
background: var(--midnight-2);
border-bottom: 1px solid var(--line-brass);
padding: 0.85rem 0;
}
.bc-topbar .container {
display: flex;
align-items: center;
justify-content: space-between;
gap: 1rem;
flex-wrap: wrap;
}
.bc-brand {
font-family: Marcellus, Georgia, serif;
font-size: 1.15rem;
letter-spacing: 0.04em;
color: #fff;
}
.bc-brand span {
color: var(--brass);
}
.bc-topbar-links {
display: flex;
gap: 1.25rem;
font-size: 0.82rem;
}
.bc-topbar-links a {
color: rgba(255, 255, 255, 0.7);
}
.bc-topbar-links a:hover {
color: var(--brass);
}
/* Language selector — slides into the top-bar row, right of the links, behind a hairline brass divider.
CI §1/§2: brass marks the active language; lang.js owns the markup. */
.bc-topbar-links {
margin-left: auto;
}
.bc-topbar .lang-switch-slot {
display: flex;
align-items: center;
padding-left: 1rem;
border-left: 1px solid rgba(201, 162, 39, 0.45);
}
.bc-topbar .lang-switch {
color: rgba(255, 255, 255, 0.7);
}
.bc-topbar .lang-switch a:hover,
.bc-topbar .lang-switch a:focus-visible {
color: var(--brass-bright);
}
.bc-topbar .lang-switch a[aria-current="true"] {
color: var(--brass);
text-decoration: underline;
text-underline-offset: 3px;
}
/* Hero */
.bc-hero {
min-height: 0;
padding: 3.5rem 0 3rem;
/* Real London night aerial (our own photo, CI §5) behind the header copy.
TWO-ZONE scrim (2026-10-25): the copy zone — kicker, H1, value line, the four
facts, the CTA — holds a .78 midnight scrim, then the scrim falls off hard to
.25 so the lit skyline on the right actually reads: at the right edge the photo
is composited through a quarter-strength scrim instead of a uniform .55-.72, so
the lit skyline reads at ~1.6x the flat-midnight luma instead of ~1.4x.
Stops: .78 0%-88%, ramp 88%-94%, .25 94%-100%.
.78 is the smallest flat alpha that holds every text block over its floor
(body 4.5:1, large 3.0:1) at all four widths in all three languages, and 88%
is where the ramp has to start: the longest fact line (DE, 1024px) reaches
89.3% of the hero, and clear of 88% the copy sits on the flat scrim. The tail of
that one DE line rides the top of the ramp at .70+, measured. Numbers:
handoffs/2026-10-24-webmaster-to-olchi-bootcamp-page-published.md ("Amendment 6").
The old single ramp was .72 -> .55 across the full width and composited the right
zone to luma ~35 against a flat midnight of 25.4. */
background-image: linear-gradient(90deg,
rgba(13, 27, 46, 0.78) 0%,
rgba(13, 27, 46, 0.78) 88%,
rgba(13, 27, 46, 0.25) 94%,
rgba(13, 27, 46, 0.25) 100%),
url("/images/hero/bootcamp-hero-desktop-1920.webp");
background-size: cover;
background-position: 50% 25%;
background-repeat: no-repeat;
}
/* The global .hero::after is a second, 50%-opacity midnight wash for the homepage's
flat hero; with the photo + gradient scrim above the copy it only dulls the shot,
so it is switched off on this page. One page-scoped rule, no global CSS touched. */
.bc-hero::after {
content: none;
}
@media (max-width: 640px) {
/* Portrait crop for narrow viewports: legible cut of the same photo. Same scrim
stops as the desktop rule — the ramp at 88% clears every language's copy, whose
longest mobile fact line ends at 87.7% of the hero. */
.bc-hero {
background-image: linear-gradient(90deg,
rgba(13, 27, 46, 0.78) 0%,
rgba(13, 27, 46, 0.78) 88%,
rgba(13, 27, 46, 0.25) 94%,
rgba(13, 27, 46, 0.25) 100%),
url("/images/hero/bootcamp-hero-mobile-900.webp");
background-position: 50% 50%;
}
}
/* wrapped hero-stat labels keep their tick on the first line */
.bc-hero .hero-stat {
align-items: flex-start;
}
.bc-hero .hero-stat i {
line-height: 1.6;
}
.bc-lead {
font-size: 1.05rem;
color: rgba(23, 28, 38, 0.78);
max-width: 720px;
margin: 0 auto 1rem;
line-height: 1.75;
}
.section-dark .bc-lead,
.bc-lead.on-dark {
color: rgba(255, 255, 255, 0.72);
}
.bc-subline {
font-family: Marcellus, Georgia, serif;
font-size: 1.15rem;
color: var(--midnight);
text-align: center;
max-width: 720px;
margin: 1.75rem auto 1.25rem;
letter-spacing: 0.02em;
}
.bc-action {
text-align: center;
margin-top: 0.5rem;
}
/* The three CTAs are native basket <form>s with a <button> (they were <a>s).
A <button> takes `line-height: normal` from the UA font shorthand while
the <a>s inherited the body line-height, which would make the button
5.6px shorter. Match the anchors' height: one declaration, no new look. */
form[action$="/shop/post_basket"] .btn {
line-height: inherit;
}
/* Grids — auto-fit so no breakpoint is needed */
.bc-list {
list-style: none;
padding: 0;
margin: 0 auto;
display: grid;
grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
gap: 1rem;
max-width: 1040px;
}
/* Lesson tiles (light canvas) */
.bc-lessons {
list-style: none;
counter-reset: bc-lesson;
padding: 0;
margin: 0 auto;
display: grid;
grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
gap: 1rem;
max-width: 1040px;
}
.bc-lessons li {
counter-increment: bc-lesson;
position: relative;
background: var(--ivory);
border: 1px solid var(--line);
border-radius: var(--radius-lg);
box-shadow: var(--shadow-rest);
padding: 1.4rem 1.4rem 1.4rem 3.4rem;
transition: box-shadow 0.25s, transform 0.25s;
}
.bc-lessons li:hover {
box-shadow: var(--shadow-hover);
transform: translateY(-3px);
}
.bc-lessons li::before {
content: counter(bc-lesson);
position: absolute;
left: 1.15rem;
top: 1.3rem;
font-family: Marcellus, Georgia, serif;
font-size: 1.5rem;
color: var(--brass-deep);
line-height: 1;
}
.bc-lessons h3 {
font-size: 1rem;
font-weight: 400;
color: var(--midnight);
margin-bottom: 0.35rem;
}
.bc-lessons p {
font-size: 0.86rem;
color: rgba(23, 28, 38, 0.78);
line-height: 1.6;
margin: 0;
}
/* Cards on midnight */
.bc-cards {
list-style: none;
padding: 0;
margin: 0 auto;
display: grid;
grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
gap: 1rem;
max-width: 1040px;
}
.bc-cards li {
background: rgba(255, 255, 255, 0.04);
border: 1px solid var(--line-brass);
border-radius: var(--radius-lg);
padding: 1.35rem 1.4rem;
}
.bc-cards h3 {
font-size: 1rem;
color: #fff;
margin-bottom: 0.45rem;
}
.bc-cards p {
font-size: 0.86rem;
color: rgba(255, 255, 255, 0.72);
line-height: 1.65;
margin: 0;
}
.bc-note {
max-width: 720px;
margin: 1.5rem auto 0;
font-size: 0.86rem;
color: rgba(23, 28, 38, 0.78);
line-height: 1.65;
}
.bc-note.on-dark {
color: rgba(255, 255, 255, 0.6);
}
.bc-note strong {
color: var(--midnight);
}
.bc-note.on-dark strong {
color: #fff;
}
/* Schedule */
.bc-schedule {
max-width: 720px;
margin: 0 auto;
display: grid;
grid-template-columns: minmax(9rem, auto) 1fr;
gap: 0.55rem 1.25rem;
background: var(--ivory);
border: 1px solid var(--line);
border-radius: var(--radius-lg);
box-shadow: var(--shadow-rest);
padding: 1.5rem 1.75rem;
}
.bc-schedule dt {
font-family: Marcellus, Georgia, serif;
font-size: 0.92rem;
color: var(--brass-deep);
}
.bc-schedule dd {
margin: 0;
font-size: 0.9rem;
color: var(--ink);
line-height: 1.55;
}
/* Price line */
.bc-price {
font-family: Marcellus, Georgia, serif;
font-size: 1.3rem;
color: var(--midnight);
text-align: center;
margin: 0 auto 1rem;
}
/* Related links */
.bc-related {
list-style: none;
padding: 0;
margin: 2rem auto 0;
max-width: 720px;
display: grid;
gap: 0.5rem;
}
.bc-related li {
position: relative;
padding-left: 1.4rem;
font-size: 0.88rem;
}
.bc-related li::before {
content: "";
position: absolute;
left: 0.25rem;
top: 0.55rem;
width: 6px;
height: 6px;
border-radius: 50%;
background: var(--brass);
}
.bc-related a {
color: var(--midnight);
text-decoration: underline;
text-decoration-color: var(--brass);
text-underline-offset: 2px;
}
.bc-related a:hover {
text-decoration-color: var(--brass-deep);
text-decoration-thickness: 2px;
}
/* FAQ (native details/summary — no JS) */
.bc-faq-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 1rem;
max-width: 1000px;
margin: 0 auto;
align-items: start;
}
.bc-faq {
background: var(--ivory);
border: 1px solid var(--line);
border-radius: var(--radius-lg);
padding: 0.4rem 1.25rem;
box-shadow: var(--shadow-rest);
transition: box-shadow 0.25s;
}
.bc-faq[open],
.bc-faq:hover {
box-shadow: var(--shadow-hover);
}
.bc-faq summary {
cursor: pointer;
list-style: none;
padding: 0.85rem 0;
display: flex;
justify-content: space-between;
align-items: center;
gap: 0.75rem;
font-family: Marcellus, Georgia, serif;
font-size: 0.98rem;
color: var(--midnight);
}
.bc-faq summary::-webkit-details-marker {
display: none;
}
.bc-faq summary::after {
content: "+";
font-family: Inter, sans-serif;
color: var(--brass);
font-size: 1.15rem;
line-height: 1;
flex-shrink: 0;
}
.bc-faq[open] summary::after {
content: "\2212";
}
.bc-faq summary:focus-visible {
outline: 2px solid var(--brass);
outline-offset: 3px;
border-radius: var(--radius);
}
.bc-faq .bc-a {
font-size: 0.87rem;
color: rgba(23, 28, 38, 0.78);
line-height: 1.7;
padding-bottom: 1rem;
}
.bc-faq .bc-a p:last-child {
margin-bottom: 0;
}
@media (max-width: 768px) {
.bc-faq-grid {
grid-template-columns: 1fr;
}
.bc-schedule {
grid-template-columns: 1fr;
gap: 0.15rem 0;
padding: 1.25rem 1.35rem;
}
.bc-schedule dd {
margin-bottom: 0.7rem;
}
}
/* Focus states */
.btn:focus-visible,
.bc-topbar-links a:focus-visible,
.bc-related a:focus-visible {
outline: 3px solid var(--brass-bright);
outline-offset: 2px;
border-radius: var(--radius);
}
.btn-brass:focus-visible {
outline-color: #fff;
}
</style>
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@graph": [
{
"@type": "Course",
"name": "ODOO ERP Automation Bootcamp",
"description": "A ten-session live bootcamp that takes a small business from zero to a running ERP. Build your products, quotes, invoices, stock and payments into one system on a live hosted setup, with no programming and no server to run.",
"url": "https://odoo4projects.com/odoo-erp-automation-bootcamp/",
"provider": {
"@type": "Organization",
"name": "ODOO4projects",
"url": "https://odoo4projects.com/"
},
"instructor": {
"@type": "Person",
"name": "Oliver Arnold",
"alternateName": "The OC Guy",
"jobTitle": "Technical Lead",
"worksFor": {
"@type": "Organization",
"name": "ODOO4projects"
}
},
"inLanguage": "en",
"hasCourseInstance": {
"@type": "CourseInstance",
"courseMode": "online",
"courseWorkload": "PT1H",
"startDate": "2026-01-22",
"endDate": "2026-03-26",
"instructor": {
"@type": "Person",
"name": "Oliver Arnold",
"alternateName": "The OC Guy"
},
"courseSchedule": {
"@type": "Schedule",
"repeatFrequency": "P1W",
"repeatCount": 10,
"byDay": "https://schema.org/Thursday",
"startTime": "18:00-06:00",
"duration": "PT1H"
}
},
"offers": {
"@type": "Offer",
"price": "465.00",
"priceCurrency": "USD",
"category": "Paid",
"url": "https://odoo4projects.com/odoo-erp-automation-bootcamp/"
}
},
{
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "Do I need technical skills?",
"acceptedAnswer": {
"@type": "Answer",
"text": "No. The sessions assume no ERP knowledge and no coding, and you build on your own data rather than following along on an empty demo."
}
},
{
"@type": "Question",
"name": "What if I miss a session?",
"acceptedAnswer": {
"@type": "Answer",
"text": "The sessions are live and each one builds on the last, so attend if you can. If you miss one, the alumni chat and the open workshop in the final session are where you catch up."
}
},
{
"@type": "Question",
"name": "Is hosting included after the course?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Yes, for one year, included in the programme. After that year your system moves to one of our normal hosting plans, at the price published on our site."
}
},
{
"@type": "Question",
"name": "What do I need installed?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Nothing to install and nothing to run yourself. A computer and a browser are enough — we provide the live system. n8n, used in lesson 9, is a free account you sign up for on n8n's own free plan."
}
},
{
"@type": "Question",
"name": "Is this a course about Odoo?",
"acceptedAnswer": {
"@type": "Answer",
"text": "It is a course about your business running. Odoo is the engine under the system you build; the ten lessons are about your stock, your invoices, your customers and the hours this gives back."
}
}
]
}
]
}
</script>
<!-- Privacy-friendly analytics by Plausible -->
<script async src="https://plausible.office.odoo4projects.com/js/pa-NhA7Rf-79VopXFQXhSS4e.js"></script>
<script>
window.plausible=window.plausible||function(){(plausible.q=plausible.q||[]).push(arguments)},plausible.init=plausible.init||function(i){plausible.o=i||{}};
plausible.init()
</script>
</head>
<body>
<!-- Page-scoped top bar: the site has no global header, so the page carries its own way home. -->
<div class="bc-topbar">
<div class="container">
<a class="bc-brand" href="/">ODOO4<span>projects</span></a>
<nav class="bc-topbar-links" aria-label="Page links">
<a href="/index.html#pricing">Plans &amp; pricing</a>
<a href="/support.html">Support</a>
</nav>
<div data-lang-switcher class="lang-switch-slot"></div>
</div>
</div>
<!-- Hero -->
<section class="hero bc-hero">
<div class="container">
<p class="hero-kicker">Q1 2026 &middot; 10 LIVE SESSIONS &middot; OLIVER ARNOLD</p>
<h1>ODOO ERP Automation Bootcamp</h1>
<p class="hero-sub">
No programming. No server to install. If you can run your business on a spreadsheet, you can do
this.
</p>
<div class="hero-stats">
<span class="hero-stat"><i aria-hidden="true">&#10003;</i> 10 live sessions, one hour each</span>
<span class="hero-stat"><i aria-hidden="true">&#10003;</i> Thursdays 18:00&ndash;19:00 Central Time</span>
<span class="hero-stat"><i aria-hidden="true">&#10003;</i> Starts Thursday 22 January 2026</span>
<span class="hero-stat"><i aria-hidden="true">&#10003;</i> One year of Odoo Community Edition included</span>
</div>
<div class="hero-actions">
<form method="post" action="https://20.odoo4projects.com/shop/post_basket" target="_blank">
<input type="hidden" name="basket" value='[{"product_id":12,"qty":1}]' />
<input type="hidden" name="clear" value="1" />
<button type="submit" class="btn btn-brass btn-lg plausible-event-name=Buy">Buy for 465.00 USD</button>
</form>
</div>
</div>
</section>
<!-- From zero to a running ERP -->
<section class="section-light">
<div class="container">
<h2 class="section-title">From zero to a running ERP</h2>
<p class="bc-lead">
Over ten Thursday sessions across three months, you build a working business system for your own
company: your products, your customers, your quotes, your invoices, your stock. You build it on a
live system, not on slides, and you start in the first session rather than after a long setup.
</p>
<p class="bc-lead">
You finish with an ERP you actually use, and with the judgement to keep it running yourself.
</p>
<p class="bc-subline">Three months. Ten hours of teaching. One system that runs your company.</p>
<div class="bc-action">
<form method="post" action="https://20.odoo4projects.com/shop/post_basket" target="_blank">
<input type="hidden" name="basket" value='[{"product_id":12,"qty":1}]' />
<input type="hidden" name="clear" value="1" />
<button type="submit" class="btn btn-brass btn-lg plausible-event-name=Buy">Buy for 465.00 USD</button>
</form>
</div>
</div>
</section>
<!-- Who this is for -->
<section class="section-dark">
<div class="container">
<h2 class="section-title">Who this is for</h2>
<p class="bc-lead">
This is for the owner or operator of a small business who never wanted to become the system
administrator. You run stock, orders, invoices and customers, and today most of it lives in a
spreadsheet, a messaging group and one person's memory.
</p>
<p class="bc-lead">
You do not need a technical background. The sessions assume no prior ERP knowledge and no coding.
</p>
<p class="bc-lead">
It is not for you if you already administer Odoo, or if you want a developer's course in modules
and custom code. The ten lessons are about your business running, not about the software
underneath it.
</p>
</div>
</section>
<!-- The ten lessons -->
<section class="section-light">
<div class="container">
<h2 class="section-title">What you build: the ten lessons</h2>
<p class="bc-lead">
Ten sessions, ten outcomes. Each lesson ends with something working in your own system, not notes
to file away.
</p>
<ol class="bc-lessons">
<li>
<h3>First configuration.</h3>
<p>You leave with your own company set up in the system &mdash; products, customers, currency and tax &mdash; so every number that follows is real and not a demo.</p>
</li>
<li>
<h3>Sales: quotes, orders and invoices.</h3>
<p>You leave with a quote-to-invoice flow that turns a customer enquiry into an invoice you can send.</p>
</li>
<li>
<h3>Build your website.</h3>
<p>You leave with a live page on your own web address, publishing a product and taking an enquiry from it.</p>
</li>
<li>
<h3>CRM.</h3>
<p>You leave with every lead in one list, with its stage, so an opportunity stops disappearing into a chat thread.</p>
</li>
<li>
<h3>Project management.</h3>
<p>You leave with the work you sold tracked as tasks with deadlines, so you can see what is late before the customer tells you.</p>
</li>
<li>
<h3>Customisations and outsourcing.</h3>
<p>You leave knowing what you can change yourself and what is worth paying someone for, so you do not buy a developer for a job a setting already does.</p>
</li>
<li>
<h3>Integrations and online payment.</h3>
<p>You leave able to take payment online and offer your products where people already shop, so orders arrive without you chasing them.</p>
</li>
<li>
<h3>Inventory and stock management.</h3>
<p>You leave with a stock count that matches the shelf, so you stop selling what you do not have.</p>
</li>
<li>
<h3>n8n and AI for your business.</h3>
<p>You leave with the system connected to the tools you already use and one repetitive job running itself.</p>
</li>
<li>
<h3>Online marketing, and the open workshop.</h3>
<p>You leave with a way to turn your own customer list into repeat sales, and with the last session used to fix whatever is still broken in your setup.</p>
</li>
</ol>
</div>
</section>
<!-- What is included -->
<section class="section-dark">
<div class="container">
<h2 class="section-title">What is included</h2>
<ul class="bc-cards">
<li>
<h3>One year of Odoo Community Edition, hosted on our platform.</h3>
<p>Your system, running, with the server, backups and certificate handled for you.</p>
</li>
<li>
<h3>A live system from the first session.</h3>
<p>You work on your own data from day one, not on an empty demo.</p>
</li>
<li>
<h3>The alumni community.</h3>
<p>A private chat to ask questions, swap templates and compare setups long after the ten sessions end.</p>
</li>
<li>
<h3>An expert review of your setup.</h3>
<p>Oliver reviews what you have built and tells you what to fix.</p>
</li>
</ul>
<p class="bc-note on-dark">
<strong>On n8n, in plain words:</strong> the tool sessions use n8n, and you use n8n on its own
free plan. The free plan is not part of this price and is not included in the programme.
Everything else listed above is.
</p>
</div>
</section>
<!-- The schedule -->
<section class="section-light">
<div class="container">
<h2 class="section-title">The schedule</h2>
<p class="bc-lead">
Ten live sessions. One hour each, at the same time every week, ten hours of teaching in total.
</p>
<dl class="bc-schedule">
<dt>Sessions</dt>
<dd>10, every Thursday at 18:00&ndash;19:00 Central Time</dd>
<dt>Term</dt>
<dd>Q1 2026</dd>
<dt>First session</dt>
<dd>Thursday 22 January 2026</dd>
<dt>Last session</dt>
<dd>Thursday 26 March 2026</dd>
<dt>Dates</dt>
<dd>22 Jan &middot; 29 Jan &middot; 5 Feb &middot; 12 Feb &middot; 19 Feb &middot; 26 Feb &middot; 5 Mar &middot; 12 Mar &middot; 19 Mar &middot; 26 Mar 2026</dd>
<dt>Length</dt>
<dd>1 hour per session, 10 hours total</dd>
<dt>Where</dt>
<dd>Live and online</dd>
<dt>Instructor</dt>
<dd>Oliver - The OC Guy - Arnold, Technical Lead at ODOO4projects</dd>
</dl>
<p class="bc-note">
Central Time is UTC&minus;6 until 8 March and UTC&minus;5 afterwards &mdash; calendar invites carry
the correct local time.
</p>
</div>
</section>
<!-- Your instructor -->
<section class="section-dark">
<div class="container">
<h2 class="section-title">Your instructor</h2>
<p class="bc-lead">
<strong>Oliver - The OC Guy - Arnold, Technical Lead at ODOO4projects.</strong>
</p>
<p class="bc-lead">
Oliver has spent more than 25 years building software that has to keep working, and he is the lead
architect of the platform this Bootcamp runs on. He teaches by putting the real thing in front of
you and fixing it together, one session at a time.
</p>
<p class="bc-lead">
He is the only instructor on this programme. You get the same person every Thursday for ten weeks,
which is why the last session is an open workshop rather than a handover to someone else.
</p>
</div>
</section>
<!-- Price and booking -->
<section class="section-light">
<div class="container">
<h2 class="section-title">Price and booking</h2>
<p class="bc-price">The programme costs USD 465.00 for all ten sessions.</p>
<p class="bc-lead">
Covers the full programme: ten live sessions, one year of hosted Odoo Community Edition, the
alumni community and the expert review.
</p>
<div class="bc-action">
<form method="post" action="https://20.odoo4projects.com/shop/post_basket" target="_blank">
<input type="hidden" name="basket" value='[{"product_id":12,"qty":1}]' />
<input type="hidden" name="clear" value="1" />
<button type="submit" class="btn btn-brass btn-lg plausible-event-name=Buy">Buy for 465.00 USD</button>
</form>
</div>
<ul class="bc-related">
<li><a href="/support.html#contact">Questions before you book? Talk to us first</a></li>
<li><a href="/odoo-hosting-2027.html">What hosting looks like after your year with us</a></li>
<li><a href="/support.html">What our support does and does not cover</a></li>
<li><a href="/blog/posts/community-vs-enterprise-cost.html">What Community costs compared with Enterprise</a></li>
</ul>
</div>
</section>
<!-- FAQ -->
<section class="section-dark">
<div class="container">
<h2 class="section-title">Questions people ask first</h2>
<div class="bc-faq-grid">
<details class="bc-faq">
<summary class="plausible-event-name=FAQ">Do I need technical skills?</summary>
<div class="bc-a">
<p>No. The sessions assume no ERP knowledge and no coding, and you build on your own data rather than following along on an empty demo.</p>
</div>
</details>
<details class="bc-faq">
<summary class="plausible-event-name=FAQ">What if I miss a session?</summary>
<div class="bc-a">
<p>The sessions are live and each one builds on the last, so attend if you can. If you miss one, the alumni chat and the open workshop in the final session are where you catch up.</p>
</div>
</details>
<details class="bc-faq">
<summary class="plausible-event-name=FAQ">Is hosting included after the course?</summary>
<div class="bc-a">
<p>Yes, for one year, included in the programme. After that year your system moves to one of our normal hosting plans, at the price published on our site.</p>
</div>
</details>
<details class="bc-faq">
<summary class="plausible-event-name=FAQ">What do I need installed?</summary>
<div class="bc-a">
<p>Nothing to install and nothing to run yourself. A computer and a browser are enough &mdash; we provide the live system. n8n, used in lesson 9, is a free account you sign up for on n8n's own free plan.</p>
</div>
</details>
<details class="bc-faq">
<summary class="plausible-event-name=FAQ">Is this a course about Odoo?</summary>
<div class="bc-a">
<p>It is a course about your business running. Odoo is the engine under the system you build; the ten lessons are about your stock, your invoices, your customers and the hours this gives back.</p>
</div>
</details>
</div>
</div>
</section>
<!-- Footer (copied from index.html; icon-font glyphs replaced with inline SVG so the page
carries no external icon dependency) -->
<footer class="footer">
<div class="container">
<div class="fgrid">
<div>
<h4>Useful Links</h4>
<ul>
<li><a href="/odoo-erp-automation-bootcamp/">ODOO Bootcamp</a></li>
<li><a href="/odoo-hosting-2027.html">ODOO Hosting in 2027</a></li>
<li><a href="/support.html">Support</a></li>
<li><a href="/legal.html">Legal</a></li>
</ul>
</div>
<div>
<h4>Partners</h4>
<div class="partner-list">
<a href="https://oc-guy.com" target="_blank" rel="noopener" class="partner-item"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="#c9a227" stroke-width="2" aria-hidden="true"><path d="M20 7h-9M14 17H5M20 7l-4-4M20 7l-4 4M4 17l4 4M4 17l4-4" /></svg> OC Guy</a>
<a href="https://oca-py.org" target="_blank" rel="noopener" class="partner-item"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="#c9a227" stroke-width="2" aria-hidden="true"><path d="M20 7h-9M14 17H5M20 7l-4-4M20 7l-4 4M4 17l4 4M4 17l4-4" /></svg> OCA Paraguay</a>
<a href="https://OD8N.com" target="_blank" rel="noopener" class="partner-item"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="#c9a227" stroke-width="2" aria-hidden="true"><path d="M20 7h-9M14 17H5M20 7l-4-4M20 7l-4 4M4 17l4 4M4 17l4-4" /></svg> OD8N</a>
</div>
</div>
<div class="fcol-desc">
<h4>About us</h4>
<p>We build smart, scalable business solutions by combining the <strong>stability</strong> of Odoo ERP with the <strong>power</strong> of AI Agents and N8N automations.</p>
<p>From streamlined sales to global rollouts, our <strong>lean, eco-friendly</strong> approach helps businesses cut costs, boost efficiency, and grow without limits.</p>
</div>
<div>
<h4>Follow us on</h4>
<div class="social">
<a href="https://www.linkedin.com/company/odoo4projects/" target="_blank" aria-label="LinkedIn"><svg width="18" height="18" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true"><path d="M4.98 3.5a2.5 2.5 0 1 1 0 5 2.5 2.5 0 0 1 0-5zM3 9h4v12H3zM9 9h3.8v1.7h.05c.53-.95 1.83-1.95 3.76-1.95 4.02 0 4.76 2.5 4.76 5.75V21h-4v-5.5c0-1.31-.02-3-1.9-3-1.9 0-2.19 1.42-2.19 2.9V21H9z" /></svg></a>
<a href="https://www.youtube.com/@ODOO4projects" target="_blank" aria-label="YouTube"><svg width="18" height="18" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true"><path d="M23 12s0-3.2-.41-4.73a2.5 2.5 0 0 0-1.76-1.77C19.3 5.1 12 5.1 12 5.1s-7.3 0-8.83.4A2.5 2.5 0 0 0 1.4 7.27C1 8.8 1 12 1 12s0 3.2.41 4.73a2.5 2.5 0 0 0 1.76 1.77c1.53.4 8.83.4 8.83.4s7.3 0 8.83-.4a2.5 2.5 0 0 0 1.76-1.77C23 15.2 23 12 23 12zM9.75 15.02V8.98L15.5 12z" /></svg></a>
</div>
<form class="footer-contact-form" id="footerContactForm" action="mailto:hello@odoo4projects.com" method="post" enctype="text/plain">
<label class="bc-sr-only" for="footerContactEmail">Your email address</label>
<input type="email" id="footerContactEmail" name="email" placeholder="Your email address" required />
<div class="footer-textarea-wrap">
<label class="bc-sr-only" for="footerContactText">Your message</label>
<textarea id="footerContactText" name="message" placeholder="Your message..." required></textarea>
<button type="submit" class="footer-send-btn" aria-label="Send message"><svg width="14" height="14" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true"><path d="M2 21l21-9L2 3v7l15 2-15 2z" /></svg></button>
</div>
<div class="footer-form-status" id="footerFormStatus" role="status"></div>
</form>
</div>
</div>
<div class="fcopy">Copyright &copy; ODOO4projects LLC</div>
</div>
</footer>
<script defer src="/static/buy.js"></script>
<script defer src="/static/lang.js"></script>
</body>
</html>