Subscription Management

Manage the full subscription lifecycle: create, view, edit, renew, cancel and configure billing — with clear states, predictable rules and friendly feedback.

Subscriptions connect an organisation, an application plan and the users/licenses assigned to it — while tracking fees, billing cycles and optional storage tiers.

The module is built for scale and control: list views with paging and sorting, secure navigation using encrypted identifiers, and state-driven permissions that guide what can be changed and when.

View Subscriptions Create Subscription
Draft Issued / Active Cancelled Expired
Fee Models
Trial · PAYG · Fixed
Supports per-user and per-storage additions with automatic recalculation.
Billing
Net · Tax · Gross
Clear totals and billing cycles for reliable invoicing and renewals.
Security
State-driven
Restricts actions by status and validates session context before use.

Module Purpose

Subscription management is where plans become active access. It links the organisation, the selected application plan, the users/licenses assigned, and the billing configuration required to charge correctly over time.

Create & Issue Subscriptions

Start from a plan selector and configure users/licenses, billing cycle and options. Trials can be issued immediately, while other plans may follow draft → issued rules.

Manage Renewals & Cancellations

Renew subscriptions based on fee type rules and prevent invalid transitions. Cancellation and expiry states change what can be edited and what actions are available.

Configure Fees & Storage

Support per-user and per-storage additions, recalculate totals on changes, and keep billing values clear and consistent for invoices.

Primary Concepts

Subscriptions bring together several related concepts so billing and access remain consistent.

Subscription Record

A subscription represents the active relationship between an organisation and an app plan, including billing cycle, totals and current state.

Users, Licenses & Roles

Assign an administrative user at creation, support multiple users per subscription, and enforce role-based actions when users are added or updated.

Fees & Billing Models

Trial, pay-as-you-go (PAYG) and fixed-fee plans — with optional per-user and per-storage charges — each with clear rules for totals and renewal behaviour.

Subscription States

States control what the user can see and do. The UI and permissions adapt based on the current state.

Draft

Used when setup is incomplete or awaiting confirmation. Editing is typically allowed and issuance actions are available when requirements are met.

Issued / Active

Subscription is in effect. Inline panels can be used for adjustments such as storage or license counts where the rules allow.

Cancelled / Expired

State-driven restrictions apply. Edit actions are limited, and renewal/cancel flows depend on policy and the selected fee model.

Core Business Rules

Clear rules prevent inconsistent subscriptions and protect billing integrity.

Trial Eligibility

One trial per account per application. Trial requests are checked before creating, and friendly messages are shown when a trial is not available.

Issuance & Drafting Logic

Trials may be issued immediately, while other plans can follow a draft stage until required configuration is complete.

Auto-Renewal Rules

Renewal behaviour depends on the fee type. The system applies the correct renewal rule set for trial, PAYG and fixed-fee plans.

Key Data Flow

Subscription creation follows a predictable, auditable flow with validation and confirmation.

Form submission
User selects a plan, configures licenses/storage and submits the create form.
Server-side validation
Required fields, eligibility rules (including trial uniqueness), numeric bounds and length checks are applied before continuing.
Construct subscription & persist
The server builds a subscription object, saves it, then assigns the administrative user and any initial users/licenses.
Generate invoice
An invoice is created for successful creations or renewals, with error handling and retry patterns supported around invoice creation.
Confirmation & next actions
The user sees a confirmation message and can navigate to subscription details, invoice history, or user assignment actions.

UI Patterns

The user experience focuses on speed, clarity and safe actions — especially for billing changes.

Subscription Lists

Paged, sortable lists with filters and search. Row-level actions provide View/Edit links and safe navigation using encrypted identifiers.

Inline Edit Panels

For permitted states, adjust storage or license counts through small inline panels that recalculate totals and display immediate feedback.

Toasts & Error Panels

Success/failure notifications are shown as toasts, while validation or persistence errors appear in clear, contextual panels with friendly guidance.

Security & Access Controls

Subscription actions impact billing and access, so the module applies strict safety practices.

Encrypted Identifiers in URLs

View/Edit navigation uses encrypted identifiers in query strings and safe URL construction to prevent leakage of internal IDs.

State-driven Restrictions

Edit and cancel/renew options are restricted by subscription state. Attempted actions are validated again server-side before any change is committed.

Session Context Validation

Session-based business/account context is validated and decrypted before use, ensuring the user only operates within the correct scope.

Integration Points

Subscriptions connect billing with access, business context and the apps marketplace.

User Access

Subscriptions drive which users can access an application, including admin assignment and ongoing multi-user management.

Billing & Invoicing

Invoice generation is triggered during subscription creation and renewal, with error handling and retry support for reliable billing operations.

Marketplace & App Dashboards

Selected organisation context is reused across app dashboards and billing flows, keeping the experience consistent across the platform.

Reliability, Testing & Operations

The module is designed for predictable behaviour and easy diagnosis of issues without exposing internals.

Monitoring & Diagnostics

Exceptions are captured server-side with timing and logging around heavier operations (fee calculations and invoice creation), while users see concise messages.

Testing Focus Areas

Trial eligibility checks, fee calculations including tax, state transitions (renew/cancel), and multi-user assignment flows are key QA targets.

Accessibility & Localization Ready

Forms and grids are designed to be keyboard accessible, show readable status labels, and keep strings ready for future localization.

Recommended Pages for Subscription Management

A complete subscription experience typically includes these pages and flows.

Subscriptions List

Filter/search/sort with paging. Row-level View/Edit links and quick status indicators.

Create Subscription

Plan selector + configuration form. Validates rules and shows confirmation on success.

Edit / Renew / Cancel

State-driven edits for licenses/storage, renewal flow, cancellation flow and invoice history.

Ready to Manage Subscriptions

Create subscriptions, assign users, manage billing cycles and keep invoices aligned — all with state-driven safety and clear feedback.

View Subscriptions Create Subscription