Licensing Engine
Details on the licensing engine, license states, and operator actions.
Licensing Engine
The Payment Gateway uses a sophisticated licensing engine evaluated within the backend to govern functionality and access based on the health and state of your license.
How it Works
The backend licensing engine evaluates signed license JWT claims and a heartbeat cadence into runtime states. These states enforce how the software operates and interacts with users:
| State | Trigger | Effect |
|---|---|---|
ACTIVE | Heartbeat received within 14 days. | Full access. The system behaves normally with all features enabled. |
GRACE | Heartbeat not received for 14+ days. | Full access. Warning shown in admin panel. Updates and support paused. |
SOFT_LOCK | Heartbeat gap 31+ days. | Full access. Informational state for admin dashboard visibility. Updates and support paused. |
READ_ONLY | Heartbeat gap 45+ days, or never heartbeated. | Full access. Informational state. Updates and support paused. |
BLOCKED | Token status is REVOKED or SUSPENDED, or the installation reports a product version newer than the highest version entitled by its support window. | All protected endpoints return 403 Forbidden. Only state that restricts runtime. |
NOT_ACTIVATED | No license key configured. | All protected endpoints return 403 Forbidden until activated. |
[!NOTE] Only
BLOCKEDandNOT_ACTIVATEDrestrict runtime behaviour. TheGRACE,SOFT_LOCK, andREAD_ONLYstates are informational — the system continues to operate normally, but updates and support are paused until a successful heartbeat restores the license toACTIVE.BLOCKEDis never triggered by heartbeat gaps alone, but it can be applied manually by the licensing authority or automatically when the installation reports an out-of-entitlement product version.
License Tiers
Three commercial tiers are available:
| Tier | One-time | Renewal / year | Orgs | Sites | Support |
|---|---|---|---|---|---|
| Starter | 1,490 EUR | 490 EUR | 1 | Up to 3 | Community |
| Professional | 2,990 EUR | 990 EUR | 1 | Unlimited | Email (48 h) |
| Business | 7,490 EUR | 2,490 EUR | 5 | Unlimited | Priority (4 h) |
Limited-time promotional one-time pricing may be offered through the commercial dashboard. When active, the pricing page and checkout surface the lower one-time campaign price until the configured expiry date, while annual renewal pricing remains unchanged.
Additional organisations beyond the tier allowance can be added for 250 EUR per organisation per year on any tier.
Operator Actions
As a system operator, managing the licensing states is critical to business continuity:
- When in
GRACE,SOFT_LOCK, orREAD_ONLY:- These are informational states — the system continues full operation.
- To restore
ACTIVEstatus (and resume updates/support), verify outbound connectivity to the license authority and trigger a manual heartbeat from the Admin licensing UI.
- When in
BLOCKED:- This state is the only state that restricts runtime access.
- Confirm whether the license was revoked or suspended, or whether the installation reported a product version newer than the highest version entitled for that license.
- Resolve the account or version issue, then trigger a heartbeat to restore the system to the
ACTIVEstate.
- When in
NOT_ACTIVATED:- Configure your license key in the Admin Panel under Settings > Licensing and perform initial activation.
- General Maintenance:
- Always keep the host clock synchronized via NTP. Drift in system clocks can cause JWT verification to fail or falsely trigger an expiry.