From recruitment to shift.
One Odoo backbone.
A Belgian climbing & events venue with five student roles, four activity zones, and a trilingual market that wasn't getting the emails. We rebuilt their staff workflow on Odoo and stabilized the website for FR/NL/EN buyers — in one tight four-week sprint.
Where Gravity Fun stood,
and where they landed.
Five student roles in a spreadsheet. Three languages missing. And the emails weren't landing.
- Five student profiles (Climbing assistant, Bar service, Weekend animator, Coordinator, Marketing intern) tracked by hand, not by system.
- Recruitment app collecting candidates, but disconnected from scheduling. Manual handoff every time.
- Email deliverability broken — SPF, DKIM and SMTP misconfigured. Recruitment and booking emails landing in spam or nowhere.
- Site only in French — missing Dutch and English buyers in a Brussels-periphery market that's natively trilingual.
- SEO not tuned for local search around Kraainem. Mobile experience slow, conversion path unclear.
Recruitment → shift in one click. Website stabilized in FR / NL / EN. Four weeks, end-to-end.
- Odoo Recruitment wired to Planning — candidate becomes employee becomes shift, automatically.
- Five roles & four zones configured (Mur A/B/C, anniversary room, Gravity Bar). Gantt view for managers, mobile portal for students.
- Email deliverability fixed — SPF, DKIM, SMTP audited and corrected. End-to-end candidate flow tested.
- Trilingual website (FR/NL/EN) translated via Odoo's native AI, with a clean URL structure and language selector.
- SEO on-page rebuilt, local SEO for Kraainem activated, mobile-first performance pass.
- Auto-notifications to students on publish — calendar in their pocket, no more "did you see the schedule?".
Two tracks.
One four-week sprint.
Two parallel workstreams — HR for the student staff, stabilization for the public website — converging on a single Go-Live. 40 hours total. No 12-month roadmaps.
Recruitment & Planning, end-to-end
From posting a job to a shift in a student's pocket — without leaving Odoo. Five roles, four zones, mobile-first portal.
- 1Recruitment app, configuredJob postings published for the five student profiles. Contract types (student / flexi / intern) wired to Odoo.
- 2Candidate → Employee, one click"Create Employee" button pre-fills the staff record. Position, department, manager, pro email — all set for Planning notifications.
- 3Five roles, four zones, resourcesClimbing Assistant · Bar Service · Weekend Animator · Activity Coordinator · Marketing Intern. Each student linked to their staff record & availability.
- 4Publish & notifyGantt view for managers. Publish a shift, the student gets an email + portal access. iOS & Android app available out of the box.
Stabilization, multilingual & SEO
Emails fixed, three languages live, website optimized for Brussels-periphery search. From "running" to "running well".
- 1Email deliverability fixedSPF, DKIM and SMTP audited and corrected. Recruitment and booking flows tested end-to-end. Spam folder, no more.
- 2Trilingual website, AI-translatedFR / NL / EN activated via Odoo's native AI translation. URL structure cleaned, language selector wired up.
- 3SEO rebuilt, local-tunedH1, H2, titles & meta descriptions per language. Local SEO for Kraainem and the Brussels periphery. Semantic structure on the key pages.
- 4Photos, performance, mobileNew photos integrated, weights & formats optimized, ALT tags filled. Mobile-first performance pass. Tests across browsers and devices.
Four weeks.
Audit to Go-Live.
Two ten-hour weeks of stabilization. Two ten-hour weeks of optimization. One Go-Live. The kind of timeline a leisure business can actually plan around.
Emails & HR module, audited
SPF / DKIM / SMTP audit and correction. Recruitment module verification. Recruitment-to-employee flow tested end-to-end. From "is the email even leaving the server?" to "yes, and the candidate got it".
Technical audit + NL & EN activated
Site-wide audit: broken links, forms, tracking. Critical anomalies fixed. NL and EN activated via Odoo's AI translation. URL structure and language selector wired up. A trilingual base, clean and ready to optimize.
On-page SEO + local Kraainem
H1 / H2, titles & meta descriptions per language. Semantic structure on the key pages. Local SEO for Kraainem & the Brussels periphery — schema.org LocalBusiness, Google Business profile cross-referenced.
Photos, perf, mobile, final QA
New photos integrated, file weights & formats optimized, strategic ALT tags. Mobile performance pass. Final cross-device tests. Global validation before launch.
Site stabilized. Staff workflow connected. Emails landing.
Official launch. Trilingual site live. Recruitment-to-Planning flow operational. Mainsail on-call during the first weeks to monitor SEO health and email deliverability.
Five roles. Four zones. One planning.
Climbing wall on Saturday, anniversary party Sunday, bar shift weeknights, marketing intern weekday-only — same Odoo Planning, role-aware, mobile-first.
- ▸Five roles wired into PlanningClimbing Assistant · Bar Service · Weekend Animator · Activity Coordinator · Marketing Intern. Each with its own typical hours, days and zone.
- ▸Candidate → Employee → ShiftOne-click conversion from a Recruitment candidate to an Employee record, pre-filled and ready for Planning. No re-typing, no orphan records.
- ▸Gantt view, role & availability filteringManagers see who's free, who's overbooked, who's already in. Filter by role (Climbing, Bar, Events…) and only valid resources surface.
- ▸Auto-notifications on publishHit "Publish", every student gets an email with date · time · role · zone, plus a direct link to confirm via the portal.
- ▸Mobile portal for studentsiOS & Android Odoo apps, free. Students confirm shifts, request swaps, and see their week — without bothering the manager.
Three languages. One site, AI-translated.
Brussels-periphery is natively trilingual. The site wasn't. We used Odoo's native AI translation to ship FR / NL / EN in a single sprint — clean URLs, working language selector, SEO per language.
- ▸Email deliverability, fixedSPF, DKIM and SMTP audited and corrected. Recruitment and booking emails actually landing — tested end-to-end, candidate side and customer side.
- ▸FR / NL / EN via Odoo AINative Odoo AI translation activated. URL structure cleaned per language. Language selector working in the header, sticky on every page.
- ▸Local SEO for KraainemH1, H2, titles & meta descriptions rewritten per language. Schema.org LocalBusiness. Google Business cross-referenced. Trilingual indexing prepared.
- ▸Mobile-first performanceImage weights & formats optimized. ALT tags filled. New photos integrated. Tested across browsers and devices — readable, fast, conversion-ready.
- ▸Strategic call-to-actionsPath to "Book a session" cleaned up across all three languages. No more dead ends, no more buried buttons.
Live. And measurably better.
A Belgian climbing & events venue with its staff workflow and public site both running on the same Odoo backbone — in just four weeks of focused work.
Got a staff workflow stuck in a spreadsheet?
Recruitment, planning, multilingual site, email deliverability — four weeks, one Odoo. If that's your kind of project, let's talk.