Zenoba
Documentation

Pricing and billing

Zenoba offers 4 plans for all team sizes. This page documents plans, limits, the trial system, access control and billing procedures.

Pricing plans

Each plan defines limits on projects, users, storage and AI tokens. Prices are per project manager (PM) per month.

Starter

0$

Free. For freelancers and small teams. Essential project management features.

Pro

59$/CP

For growing teams. Advanced Gantt, export, templates and built-in AI.

Team

129$/CP

For SMBs. Advanced collaboration, forms, automations and reports.

Enterprise

249$/CP

For large organizations. API, dedicated support and on-premise deployment.

FeatureStarterProTeamEnterprise
Projects21050Unlimited
Users525100Unlimited
Storage500 MB5 GB25 GBUnlimited
AI Tokens10K50KUnlimited
Advanced Gantt
Forms
Documents505005000Unlimited
API Access
SupportCommunityEmailPriorityDedicated + SLA

Trial system

Every new signup starts with a free 30-day Pro trial. All Pro features are accessible during the trial. The pro_trial plan is activated automatically.

1

On signup, the pro_trial plan is activated with an expiration date at D+14.

2

A TrialBanner displays the remaining days countdown in the top bar.

3

At D-3 and D-1, reminder emails are sent automatically.

4

On expiration, the workspace is automatically downgraded to the Starter plan (data preserved).

Feature gating

The feature gating system blocks access to premium features based on the enterprise's current plan. Three key elements compose this system.

PLAN_LIMITS

Server-side Python dictionary defining limits for each plan. The value -1 means unlimited.

PLAN_LIMITS = {
  "starter":    { "projects": 2,  "users": 5,  "storage_mb": 500,   "ai_tokens": 0 },
  "pro":        { "projects": 10, "users": 25, "storage_mb": 5000,  "ai_tokens": 10000 },
  "team":       { "projects": 50, "users": 100,"storage_mb": 25000, "ai_tokens": 50000 },
  "enterprise": { "projects": -1, "users": -1, "storage_mb": -1,    "ai_tokens": -1 },
}

<UpgradeGate />

React component that wraps premium features. If the current plan is below the required plan, content is replaced with an upgrade message.

<UpgradeGate feature="ai_chat" plan="pro">
  <AIChatPanel />
</UpgradeGate>

// Si le plan actuel < pro, affiche PlanLockBadge
// avec bouton "Passer a Pro"

<PlanLockBadge />

Lock badge displayed on buttons or menus leading to locked features. Includes a link to the plan upgrade page.

Billing API

GET/api/v1/auth/plan

Returns the enterprise's current plan, its limits, current usage and trial status. Used by the frontend for feature gating.

// Response 200
{
  "plan": "pro",
  "plan_label": "Pro",
  "limits": {
    "projects": 10,
    "users": 25,
    "storage_mb": 5000,
    "ai_tokens": 10000
  },
  "usage": {
    "projects": 3,
    "users": 8,
    "storage_mb": 1200,
    "ai_tokens": 4500
  },
  "trial_active": false,
  "trial_days_left": 0
}

Cancellation flow

Cancelling a paid plan follows a 5-step flow designed to retain the user while respecting their choice.

1

Access settings

The user clicks "Cancel my plan" on the billing page.

2

Exit survey

A form asks the reason for cancellation (too expensive, missing features, competitor, etc.).

3

Retention offer

Based on the reason, a personalized offer is proposed (discount, trial extension, upcoming feature).

4

Confirmation

The user confirms cancellation. A confirmation email is sent.

5

Downgrade

The workspace is downgraded to the Starter plan at the end of the billing period. Data is preserved.

POST/api/v1/auth/cancel-plan
// Request body
{
  "reason": "too_expensive",
  "feedback": "Le prix est trop eleve pour notre equipe"
}

// Response 200
{
  "ok": true,
  "downgrade_date": "2026-08-30T00:00:00Z",
  "plan_after": "starter"
}

Data export

The full workspace export generates a ZIP file containing all projects, documents, users, forms and settings in JSON format. Compliant with GDPR and Quebec Law 25 portability requirements.

GET/api/v1/export/workspace
// Response 200 — fichier ZIP contenant:
//   projects/       → JSON de chaque projet (taches, liens, ressources)
//   documents/      → fichiers uploades
//   forms/          → formulaires et soumissions
//   users.json      → liste des utilisateurs
//   enterprise.json → configuration entreprise

GDPR and Law 25

Zenoba complies with European GDPR and Quebec Law 25 on personal information protection. Each user can exercise their rights at any time.

1

The user requests account deletion via the settings page or the API.

2

An automatic export is generated if the export_before_delete option is enabled.

3

A 30-day grace period allows cancelling the deletion and recovering data.

4

After 30 days, all personal data is permanently and irreversibly deleted.

POST/api/v1/auth/delete-account

Irreversible endpoint (after grace period). Requires the user's password for confirmation.

// Request body
{
  "confirm": true,
  "password": "********"
}

// Response 200
{
  "ok": true,
  "deletion_date": "2026-08-30T00:00:00Z",
  "grace_period_days": 30
}

On-Premise deployment

Zenoba is available for on-premise deployment for organizations with data sovereignty requirements. Three license tiers are offered.

Standard

Up to 25 users. Manual updates. Email support.

$499/mo

Advanced

Up to 100 users. Automatic updates. Priority support. High availability.

$999/mo

Unlimited

Unlimited users. Automatic updates. Dedicated support with SLA. Multi-instance.

$2499/mo

Docker Compose deployment

# Deploiement Docker Compose
git clone https://github.com/zenoba/zenoba-onprem.git
cd zenoba-onprem
cp .env.example .env.local
# Configurer FQDN_LICENSE, DB_PASSWORD, etc.
docker compose up -d

Professional services

In addition to SaaS plans, Zenoba offers professional services to support organizations in their digital transformation.

Dedicated hosting

Dedicated Zenoba instance on private cloud infrastructure. 99.9% SLA, daily backups, 24/7 monitoring.

Customization

Adaptation of interface, workflows and reports to your organization's specific needs.

Custom development

Add-on modules, third-party API integrations, ERP/CRM/HRIS connectors.

Support packages

User training, data migration, initial setup, project maturity audit.