Isha Labs Support

Add-on Modules

Updated Oct 18, 2026

Overview

Add-on modules add new features to Matterly without changing its code, for example the free Conflict Check. Manage them at Super Admin → Modules (/super/modules).

On the Modules page What it shows
Installed Every module, its version and status: Active, Off, Needs attention or Unsigned (developer mode). Below the description: what it adds (tables, pages, outside services, scheduled tasks).
Available add-ons Official add-ons you haven't installed yet. Free ones install in one click; paid ones ask for their purchase code.
How modules work A short in-page guide (click to expand).

Every change asks for your password. In demo mode nothing can be installed, changed or removed.

License required. Add-ons need an activated Matterly license. See License & Updates.

Installing an add-on

  1. Open Super Admin → Modules.
  2. Under Available add-ons, click Install next to the add-on.
  3. For a paid add-on, paste its purchase code. Enter your password and confirm.
  4. A progress bar shows each step (download, signature check, files, database). Keep the page open; it takes a few seconds.

The add-on is switched on as soon as it's installed. Its pages appear in the Add-ons group of the sidebar for the firms that may use it (see Selling add-ons to firms), and in the Super Admin sidebar if it has a page there.

New versions of installed add-ons show an Update to x.y.z button on their row. Use More → Check for updates to check right away (Matterly also checks once a day).

Uploading a module

Upload module installs a module from a file instead of the store:

File Result
A signed package (….licentra-module.zip) Installed exactly like a store install: same signature check, and paid add-ons still need their purchase code.
A plain module .zip (your own, unsigned) Accepted only in developer mode (LICENTRA_MODULES_DEV=true). It goes into modules-dev/ and is marked Unsigned.

Any other file is refused with an explanation.

Developer mode loads code that hasn't been checked. Use it on a development copy, never on your live site.

Selling add-ons to firms

Most add-ons can be included per plan, so you can offer them on your higher plans:

  1. Super Admin → Plans & Pricing → Edit plan → Modules included: switch on the add-ons this plan includes.
  2. For one firm, Super Admin → Firms → Edit → Extra modules grants an add-on its plan doesn't include.

Firms without the add-on don't see its sidebar link, its pages answer "403", and its public pages for that firm are closed. Add-ons whose author made them free for everyone (such as Conflict Check) are available to every firm. Inside a firm, add-on pages also follow staff permissions: Conflict Check, for example, needs the Clients permission.

Managing modules

Action What happens
Switch off The module stops loading. Its pages and sidebar links disappear; its data is kept.
Switch on Loads it again. Also brings back a module that was switched off after errors (fix the cause first).
Retry database update Shown when an install's database step failed ("Needs attention"). Runs the module's migrations again.
Update to x.y.z Installs the newer version. Older versions can never replace a newer one.
Uninstall (trash icon) Removes the module's files. Its data is kept, so installing it again picks up where you left off. To delete the data too, type the module's name in the dialog.

License & Updates also shows a short summary: how many modules are installed, running, or need attention.

Every action is recorded in storage/logs/licentra-modules.log (who, what, when).

From the command line:

php artisan module:list
php artisan module:install matterly-conflicts
php artisan module:enable matterly-conflicts
php artisan module:disable matterly-conflicts
php artisan module:uninstall matterly-conflicts   # --delete-data to drop its tables

How Matterly stays safe

  • Only signed modules install. Store downloads and uploaded packages are checked against the author's digital signature; a module folder copied onto the server is never loaded (outside developer mode).

  • A broken module only breaks itself. Matterly switches a module off, and shows why on the Modules page, when it:

    • throws an error while starting,
    • causes 3 crashes within 10 minutes,
    • causes 3 errors on Matterly's own pages, or
    • causes 10 errors within 10 minutes on its own pages or background tasks.

    If one of its pages fails in the browser, only that page shows an error; the sidebar and every other page keep working.

  • Your data always saves. When a module reacts to a new matter or client and fails, the matter or client is still saved.

  • Modules can't replace Matterly's pages. Each module lives under its own address (e.g. /matterly-conflicts/...) and its sidebar links must stay there.

  • Firms stay separate. Module data is stored per firm, like everything else in Matterly.

  • Updates and installs never overlap. A Matterly update never touches modules or their data, and a module that doesn't support the new Matterly version is switched off instead of breaking the site.

Emergency: safe mode

If the site misbehaves after installing a module and you can't reach the Super Admin area, add this to .env:

LICENTRA_MODULES_SAFE=true

then run php artisan config:clear. No modules load until you remove the line again. Or switch them all off:

php artisan module:disable --all

Troubleshooting

Message What to do
Couldn't reach the add-on store Your server can't reach licentra.pacificsoftwares.com over HTTPS. Installed modules keep working.
Activate your license to browse add-ons Activate Matterly first: License & Updates.
The module failed its signature check The file was changed or isn't from the author. Download it again.
Needs Matterly x.y Update Matterly first, then install the module.
Another update or module install is running Wait for it to finish, then try again.
A module shows Not running Its reason is shown under its name (license, incompatible version or errors).
A firm can't see an add-on Check the firm's plan (Modules included) or Extra modules, and the staff member's permissions.
The module license was refunded or cancelled The add-on stops after 7 days; its data is kept.

Want to build your own? See Module Development.