← Changelog
v2.6Feature14 April 2026
Integrations marketplace · SUPERADMIN CMS
Integrations now live in a DB-editable table from /admin/integrations. Tenants can install / uninstall any adapter from a marketplace view with cards.
Major changes
- IntegrationCatalog table: integrations (previously hardcoded in src/lib/integrations/catalog.ts) now live in a DB with CRUD from /admin/integrations. SUPERADMIN can hide adapters, mark them beta, or change sortOrder without a redeploy.
- Marketplace UI at /dashboard/properties/[id]/integrations: three tabs (Available · Installed · Coming soon). Each card shows logo, name, category, and health status when installed.
- "I'm interested": if an adapter is marked coming_soon, the tenant can hit "I'm interested" and it gets logged in a demand table. Helps us prioritise the roadmap.
- Per-adapter health checks: each adapter exposes testConnection(). The marketplace shows the latest health status + last-check timestamp.
- Encrypted credentials: AES-256-GCM with a master key in env. Creds never appear in logs and are never returned to the frontend after install.
Other releases
- v2.9
Reservation engine V2 · staff full-window
The biggest shift of the year. /dashboard/book is now a three-column command center with two-phase commit saga, four-layer pricing, and automatic rollback. Roiback is the first adapter that writes to real hotels.
- v2.8
Metered billing + dark mode + Odoo fiscal
Stripe metered billing with threshold or cycle close. Odoo issues the Spanish fiscal invoice automatically. Dark mode across the app with no hydration flash.
- v2.7
Public self-signup + admin kill-switch
/signup is now a four-step wizard that creates a TRIAL organisation and sends the OWNER invitation. Honeypot + per-IP rate limit. Kill-switch from admin if needed.