Who can use this: Organization Owners and Managers (create, edit, members); Solavel staff via the admin shell (read-only or read/write depending on role) URL / Route:
/portal/orgs/*and/admin/organizations/*; older paths at/organizations/*and/users/*Plan / feature gate: Always on (the number of organizations you can create depends on your plan)
Purpose
An organization is a workspace tied to a single client. It has its own plan, members, projects (Solabooks, Inventory, etc.), and — once Solabooks is switched on — its own private accounting database. This page covers the user-facing flows: create, switch, edit, invite, and remove.
Step by step
Create an organization
- Open
/portal/orgsfrom the sidebar. - Click Create organization. You enter a four-step wizard:
- Details (
portal.orgs.create,portal.orgs.create.store) — name, display name, contact email. - Plan (
portal.orgs.create.plan,.store) — pick a plan tier across each app you want to enable. See Plans and features. - Projects (
portal.orgs.create.projects,.store) — toggle which apps (Solabooks, Projects, etc.) the organization should have. The available list is filtered to the projects your plan covers. - Checkout (
portal.orgs.create.checkout,.store,.return) — paid plans go through Tap; free plans skip checkout. Tap returns toportal.orgs.create.checkout.returnafter the card is charged.
- Details (
- The new organization appears in
/portal/orgsand in the sidebar switcher.
Switch organizations
- Click any organization in
/portal/orgs, or use the dropdown at the top of the Organization sidebar section. - The selected organization is stored in your session under
portal.current_org_id. The sidebar reflects it, and the Solabooks launcher uses it.
Edit an organization
portal.orgs.edit(form) andportal.orgs.update(PUT). You can change the display name and basic contact details.- The deeper "settings" page is at
/admin/my-workspace/{organization}/settingsfor staff; for client users, only the editable fields are exposed.
Invite team members
The team-member tools live at the older /users/* paths (route names client.users.*):
- Open Team Access in the sidebar (
/users). - Click Add member.
- Enter their email, pick a role (Manager or Member), and pick which organizations they belong to.
- They get an email with a first-time password setup link (60-minute expiry). Once they set a password they can sign in and see the same
/portal/*UI you do, scoped to their assigned organizations.
Per-organization member screens:
client.organizations.members.index— list members of one org.client.organizations.members.create/.store— add a member directly to an org.client.organizations.members.edit/.update— change their role inside that org.client.organizations.members.destroy— remove them.
Manage what each member can do
Permission editing for individual users is at:
client.users.permissions.edit— open the permissions form for a user (/users/{user}/permissions).client.users.permissions.update— save changes.
Per-project assignment:
client.organizations.projects.users.*— add or remove a user from a specific project inside an organization.client.organizations.users.projects.update— bulk update the project list for one user inside one organization.
Deactivate or reactivate a user
POST /users/{user}/deactivate(client.users.deactivate) — turn off the account without deleting it.POST /users/{user}/reactivate(client.users.reactivate) — turn it back on.
Delete an organization
DELETE /organizations/{organization}(client.organizations.destroy).- Only an Owner can do this. Deletion ends the subscription, archives the data, and removes everyone from the workspace. Solabooks data is preserved per the data-retention policy.
Admin-side counterparts
Solavel staff can read every organization and edit certain workspace-level fields:
admin.organizations.index(/admin/organizations) — searchable list.admin.organizations.show— read-only view of one organization.admin.my-workspace.*(/admin/my-workspace/*) — extended pages used by Solavel staff who themselves own the "Solavel Internal" client. Includes Apps, Billing, Solabooks launcher, Members, and Settings.
These pages do not appear for client users. See Admin dashboard.
Permissions / restrictions
- Create organization: requires
create-organization. - Edit / update: requires
edit-organization. - Delete: requires
delete-organization(Owner only). - View members: requires
view-team-member. - Invite / edit / remove members: requires
create-team-member,edit-team-member,delete-team-memberrespectively. - Switch organizations: requires
access-organizationfor that specific org, oraccess-all-organizations(held by Owners). - Assign roles: requires
assign-rolesandmanage-user-roles(Owner only). - Project assignments: requires
manage-organization-projectsandassign-project-users.
The number of organizations a client can create is capped by the active plan's max_organizations entitlement (resolved by App\Services\Entitlements\EntitlementResolver). Hitting the cap shows a "Upgrade to add another organization" prompt that links to Subscriptions and billing.
Common problems
- "You do not have permission to create organizations." — Your role is Manager or Member. Ask the Owner.
- The plan step shows fewer apps than expected — your client's plan does not cover them. The Apps step is filtered against the entitlement set.
- A new member never receives the setup email. Check the System event logs and resend from the user's edit page.
- "This organization is over its user limit." — Upgrade the org's plan tier or remove someone. Limits are seeded per tier (Free = 2, Professional = 5, Premium = 8, Enterprise = unlimited).