Roles & Permissions

DoorStax enforces role-based access control (RBAC) across 4 permission layers with 7 distinct user roles.

Overview

Access control in DoorStax is enforced through four layers that work together to ensure users can only access the resources they are authorized for.

1Role Assignment

Each user is assigned exactly one role

2Permission Mapping

Each role maps to a set of permission strings

3Resource Scoping

Permissions are scoped to owned/assigned resources

4API Enforcement

Every API route checks permissions before execution

User Roles

Super Admin

SUPER_ADMIN

Full platform access. Manages all organizations, billing, and system-wide settings.

Permissions

  • +All admin permissions
  • +Organization management
  • +System configuration
  • +Billing and subscriptions
  • +User provisioning across all orgs

Restrictions

  • -None — unrestricted access

Platform Admin

PLATFORM_ADMIN

Manages platform operations, reviews flagged items, and handles support escalations.

Permissions

  • +All admin:* permissions
  • +View all organizations
  • +Manage flagged payments
  • +Support escalation access
  • +Reporting dashboard

Restrictions

  • -Cannot modify billing or system configuration

Landlord / Owner

OWNER

Property owner with full access to their portfolio. Can manage properties, teams, and payouts.

Permissions

  • +properties:read, properties:write
  • +payments:read, payments:write
  • +payouts:read, payouts:write
  • +team:read, team:write
  • +leases:read, leases:write
  • +reports:read

Restrictions

  • -Scoped to owned properties only

Property Manager

PROPERTY_MANAGER

Day-to-day management of assigned properties. Handles tenants, leases, and maintenance.

Permissions

  • +properties:read
  • +payments:read, payments:write
  • +leases:read, leases:write
  • +tenants:read, tenants:write
  • +maintenance:read, maintenance:write

Restrictions

  • -Cannot manage payouts
  • -Cannot modify property ownership
  • -Scoped to assigned properties

Accountant / Finance

ACCOUNTANT

Financial oversight with read access to payments, ledger, and payouts. Limited write access.

Permissions

  • +payments:read
  • +payouts:read
  • +ledger:read
  • +reports:read
  • +reconciliation:read

Restrictions

  • -Read-only for most resources
  • -Cannot manage tenants or leases
  • -Cannot modify properties

Tenant

TENANT

Tenant with access to their own lease, payment history, and maintenance requests.

Permissions

  • +Own lease:read
  • +Own payments:read, payments:write (pay rent)
  • +maintenance:read, maintenance:write (own unit)
  • +profile:read, profile:write

Restrictions

  • -Cannot view other tenants
  • -Cannot access property-level data
  • -Strictly scoped to own unit and lease

Partner

PARTNER

External integration partner with API access scoped to specific endpoints.

Permissions

  • +API access for assigned endpoints
  • +Webhook subscriptions
  • +Read access to shared resources

Restrictions

  • -No UI access
  • -Rate limited
  • -Scoped to partner agreement

Admin Permissions

Admin-level permissions are prefixed with admin: and are only available to Super Admin and Platform Admin roles.

PermissionDescription
admin:overviewPlatform overview dashboard
admin:paymentsView and manage all payments
admin:payoutsView and manage all payouts
admin:propertiesView and manage all properties
admin:usersUser management across organizations
admin:organizationsOrganization management
admin:reportsPlatform-wide reporting
admin:settingsSystem configuration

Team Permissions

Team-level permissions control access to resources within an organization. These are assigned based on role and further scoped by resource ownership.

PermissionDescription
properties:readView properties
properties:writeCreate and update properties
payments:readView payment records
payments:writeProcess and manage payments
payouts:readView payout history
payouts:writeInitiate and manage payouts
leases:readView lease agreements
leases:writeCreate and modify leases
tenants:readView tenant information
tenants:writeManage tenant records
team:readView team members
team:writeInvite and manage team members
reports:readAccess reports and analytics
ledger:readView ledger entries

Permission Matrix

Quick reference showing which permissions each role receives.

PermissionSuperPlatformOwnerPMAcctTenantPartner
admin:*
properties:read
properties:write
payments:read
payments:write
payouts:read
payouts:write
leases:read
leases:write
tenants:read
tenants:write
team:read
team:write
reports:read
ledger:read