← Back to Work
7UNIT / CASE STUDY 003
EdTech · Italy · 2025

Holistic growth centre portal withOdoo-connected operations.

Learners were stuck in a back-office tool. We owned the learner experience — while educators kept Odoo — and turned curriculum publish and certificates into reliable operations.

THE SITUATION

Bloom, a holistic growth and learning centre in Italy, was running their learner-facing operations through Odoo — a powerful back-office tool that was never designed as a learner portal. Educators were publishing content in Odoo and manually pushing updates to learners. Certificate generation required manual intervention. Mobile experience was poor. Learners were using a system built for accountants.

THE STAKES

Slow curriculum updates eroded trust in the learning experience. Manual certificates created support load and completion friction. Every week the portal stayed wrong was a week learners experienced the institution through a tool that was never meant for them.

WHAT WE OWNED

7Unit owned the learner-facing React portal, event-driven Odoo sync, progress tracking, automated certificate generation, and mobile-responsive delivery — including the architecture decision that kept Odoo as the educator source of truth.

Honest boundary

We did not replace Odoo or redesign Bloom's pedagogy. Educators kept their editorial workflow. We owned the learner surface and the operational automation around it.

WHAT WE BUILT

A learner-facing React portal connected to Odoo as the operations back-office. Content sync pipeline running on Odoo publish events. Progress tracking, completion certificates, and mobile-responsive delivery. The portal looks and feels like a modern learning platform — Odoo runs invisibly behind it.

RISK REDUCED

Curriculum lag after publish

Rejected scheduled batch sync. Event-driven Odoo webhooks push updates live instead of waiting on a poll window.

Certificate support ticket load

Completion-triggered certificate generation removed manual steps — the previous hand-built delivery path disappeared from the support queue.

Educator adoption resistance

Odoo stayed source of truth. Educators did not learn a new CMS — the portal is read-only against Odoo, so workflow change was zero for the people publishing content.

ARCHITECTURE DECISIONS

Event-driven sync over scheduled batch

The first design had a scheduled batch sync — every 15 minutes, pull content from Odoo. Rejected. A teacher who publishes content should see it live immediately.

Rationale: 15-minute lag between publishing and learners seeing the update is not acceptable in a live learning context.

Trade-off accepted: More complex webhook handling and error retry logic in exchange for near-real-time content delivery.

Completion-triggered certificate generation

On module completion, certificate generates and delivers automatically — no manual handoff.

Rationale: Every manual step in a completion workflow is a potential failure point and a support ticket.

Trade-off accepted: More complex completion state machine in exchange for removing certificate delivery as a support failure mode.

Odoo as source of truth

Odoo owns the content data. The portal is read-only against Odoo. Educators keep their existing workflow.

Rationale: Asking educators to learn a new content tool would have created adoption resistance.

Trade-off accepted: Portal flexibility constrained by Odoo's data model — accepted so educators keep their existing publish workflow.

OUTCOMES

Outcomes

Live
Curriculum after publish

Event-driven sync replaced batch lag between Odoo publish and learner visibility.

Auto
Certificates on completion

Generation and delivery triggered by completion state — not a manual ops step.

Odoo
Kept as source of truth

Educators kept their editorial workflow; the portal is the learner surface on top.

STACK
ReactNext.jsFastAPIOdooPostgreSQLDocker
IF THIS SOUNDS LIKE YOUR PROBLEM

If your educators already work in a back-office system — and your learners are stuck inside it — we build the learner product on top without forcing a second editorial world.

EdTech and training organisations that need a modern learner portal while keeping an existing ops/CMS system as source of truth.

CONTINUE EXPLORING

Related case studies

AI Systems · Production · 2025

LLM assistants that survive real operating constraints.

How 7Unit engineers LLM assistants for production — session memory, human handoff, cost attribution, and graceful failure.

Read case study →
SMB Sales · UAE · 2025

WhatsApp-native sales CRM for teams that close inside conversations.

How 7Unit took ownership of a WhatsApp-native CRM for UAE sales teams — pipeline truth and follow-up without forcing a portal hop.

Read case study →