You're a Tenant Admin, Platform Admin, or Super Admin. This handbook covers tenant setup, user and role management, escalation configuration, integrations, notifications, and audit.
Roles covered here
- Tenant Admin — full control within your tenant organization
- Platform Admin — settings, user management, integrations (organization scope)
- Super Admin — multi-tenant platform administration
Everyone else should use their role-specific handbook and ignore most of this page.
Your sidebar
- Dashboard
- Admin — Admin Dashboard, Tenants (Super Admin only), Users, Roles, Settings, Audit Logs
- All operational modules (you have access to everything)
Tenant bootstrapping
First time standing up a tenant? Follow this sequence:
- Tenant creation (Super Admin only) —
Sidebar > Admin > Tenants > New Tenant. Name, subdomain, plan (Free / Starter / Professional / Enterprise), max quotas. - General settings —
Sidebar > Admin > Settings > General:- Organization name, logo, primary contact
- Default currency (AED / SAR / QAR / USD)
- Default timezone
- Default locale (en / ar)
- Security settings —
Settings > Security:- MFA enforcement (optional / required for admins / required for all)
- Password policy (minimum length, complexity)
- Session limit (concurrent sessions per user)
- Lockout threshold (failed attempts → lockout, lockout duration)
- Notifications settings —
Settings > Notifications:- Default channels enabled
- SMTP configuration (for email)
- SMS gateway (if using SMS)
- Push notification configuration
- First users — see below.
- First building — create the first property and building so there's somewhere to invite residents and assign work orders.
Users
Creating a user
Sidebar > Admin > Users > Create User.- Fill in: name, email, initial role.
- Choose invitation method:
- Self-register — they get an email with a link to set their password.
- Admin-set — you set an initial password and hand it over securely.
- Optionally assign building scopes now or later (see ABAC below).
- Save. The user receives the invitation.
Editing a user
On the user list, click a row. From the detail page:
- Change name, email, active status (active / suspended / deactivated)
- Add or remove roles
- Add or remove building-scoped assignments
- Reset password (sends a reset link to their email)
- Unlock account (if locked due to failed attempts)
- Force sign-out from all sessions
- View activity log (audit trail scoped to this user)
Bulk import
For large user loads, Users > Import CSV. Download the template, fill rows, upload. Validation shows errors before commit. Once clean, commit the import.
Roles and permissions
Built-in roles
ArkanPM ships with 11 built-in roles:
| Role | Typical use |
|---|---|
| Super Admin | Cross-tenant platform control |
| Platform Admin | Your organization's settings, integrations |
| Tenant Admin | Day-to-day administration of your tenant |
| Facility Manager | Multi-building operations |
| Building Manager | Scoped to specific buildings |
| Maintenance Technician | Work order execution |
| Inspector | Inspection templates and execution |
| Vendor User | External vendors |
| Owner | Portfolio owners |
| Resident | Residents of your buildings |
| Read-Only | View-only across the platform |
Creating a custom role
Sidebar > Admin > Roles > Create Role.- Name it and add a description.
- Work through the permission matrix:
- For each module (Work Orders, Leases, Assets, etc.), tick the allowed actions: View, Create, Update, Delete, Approve, Close, etc.
- Some modules have fine-grained controls (e.g., View Financials separate from View Operational).
- Save. The role is available to assign to users.
Attribute-based access (ABAC)
On top of a role, you can scope a user to specific buildings, floors, or units:
- On the user detail page, click Add Scope.
- Pick the scope type (Building / Floor / Unit).
- Pick specific records they should access.
- Optionally set a time window — the scope is only active during that window (e.g., a temp worker with access only for Q2).
- Save.
When a user with a scope signs in, their sidebar, lists, and dashboards only show records matching the scope. ABAC also controls financial masking — you can mark a role to have specific financial fields hidden (e.g., Building Manager sees occupancy but not rent amounts).
Escalation rules
Default escalation levels (tenant-wide, adjustable):
- Level 1 — assigned technician and a backup tech
- Level 2 — Building Manager
- Level 3 — Facility Manager leadership
Configuring rules
Sidebar > Admin > Settings > Escalation Rules > New Rule.- Trigger — pick one:
- SLA breach — when response or resolution timer runs out
- No response — no acknowledgement within N minutes of assignment
- Stale — in progress for longer than N hours without a status update
- Scope — applies to all, or filtered by priority, category, building.
- Timing — how soon after trigger does each level fire (e.g., Level 1 at trigger, Level 2 at +15 min, Level 3 at +30 min).
- Recipients — either a role, a specific user, or "assigned+backup".
- Channels — in-app, email, SMS, push.
- Save.
Rules run continuously. You can pause a rule without deleting it.
Integrations
Overview page at Sidebar > Admin > Settings > Integrations.
Six integration types:
| Type | Use |
|---|---|
| ERP | Cost centers, GL posting, journal entries |
| Accounting | Invoicing, AR/AP |
| BMS | Building management systems (HVAC, access control, fire alarms) |
| IoT | Smart sensors, occupancy sensors, leak detectors |
| Arkan Handover | Construction-to-FM handover from the Arkan construction platform |
| Custom | Anything else via webhook / API |
Registering an integration
- Click Add Integration.
- Pick the type.
- Fill in: name, endpoint URL, credentials (API key or OAuth), sync frequency.
- Test the connection.
- Enable.
Each integration has a log tab showing every call with status, response time, and error details (if any). This is your first stop when a sync looks off.
Arkan Handover integration
Special-purpose integration for receiving handover records from the Arkan construction platform:
Settings > Integrations > Arkan Handover > Configure.- Paste the shared secret from the construction platform.
- Choose which data flows in: defects, snagging items, warranty records.
- Map: which building receives data, which asset categories auto-create, which work-order type spawns for defects.
- Enable.
Once enabled, handover records stream into ArkanPM as they're created on the construction side. Each record is an auditable line in the integration log.
See the Integrations Reference for the full integration catalog.
Webhooks
Outbound events — ArkanPM notifies an external system when something happens.
Registering a webhook
Sidebar > Admin > Settings > Webhooks > New Webhook.- Configure:
- Name (e.g., "Slack notifications for emergencies")
- Target URL (the external endpoint)
- Events subscribed to — pick from the catalog:
work_order.created,work_order.completed,lease.activated,inspection.failed, etc. - Authentication secret — ArkanPM uses it to sign payloads; your endpoint verifies the signature
- Custom headers (optional)
- Timeout (default 30 seconds)
- Retry policy (max retries, backoff strategy)
- Save. The webhook is live.
Webhook logs
Every delivery attempt is logged with: timestamp, HTTP status, response body, duration, attempt number. Failed deliveries retry on the schedule until the retry budget is exhausted — then alert.
See Integrations Reference for the event catalog and payload shapes.
Notification templates
ArkanPM ships with templates for every notification type. You can edit them.
Sidebar > Admin > Settings > Notification Templates.- Pick a template (e.g., "Work Order Assigned").
- Edit the subject and body. Use variables like
{{work_order.number}},{{assigned_to.name}},{{building.name}}. Template preview on the right shows a rendered example. - Separate templates per channel (in-app / email / SMS) and per language (en / ar).
- Save.
Audit logs
Every create / update / delete / login / logout is logged.
Sidebar > Admin > Audit Logs.- Filter by user, entity type (work order, lease, user, etc.), action, date range.
- Click a row to see the change diff — old vs. new values side-by-side (JSON format).
- Export filtered results as CSV.
Point-in-time recovery: for any entity, you can reconstruct its state at any past timestamp by replaying the audit log. Support can help you pull this if needed.
Data retention
Settings > Data Retention:
- Per-entity retention policies (work orders, leases, documents, etc.)
- Soft-delete preservation duration
- Archive thresholds (when data moves to cold storage)
Be careful — these settings affect how long data is recoverable. Changes to retention should be coordinated with compliance and legal.
Tenant lifecycle (Super Admin)
Suspending a tenant
A suspended tenant's users are locked out at the authentication layer. Data is preserved. Useful for non-payment or security events.
Sidebar > Admin > Tenants > [tenant] > Suspend.- Enter a reason.
- Confirm. All users are signed out immediately.
Terminating a tenant
Final state. Data retention policy takes over — data is archived per your policy window, then purged.
Tenants > [tenant] > Terminate.- Strong confirmation required.
- Tenant moves to Terminated. Data is marked for archival / eventual deletion.
Monitoring background jobs
Seven background processors run continuously:
| Processor | What it does |
|---|---|
| PM Generator | Creates upcoming work orders from PM schedules |
| Overdue Inspection Detector | Flags scheduled inspections past their due date |
| Warranty/Certificate Expiry Monitor | Flags warranties and certificates within expiry windows |
| Escalation Engine | Fires escalation rules on breach/stale/no-response |
| Booking No-Show Handler | Marks unused bookings as no-show |
| Lease Expiry Monitor | Flags leases within 90 days of end date |
| Contract Expiry Monitor | Flags service contracts within configured window |
Sidebar > Admin > Settings > Background Jobs shows each processor's status, last run, next scheduled run, and recent errors. Restart or pause a processor if you have to — but coordinate with support first.
Day-to-day admin checklist
Weekly:
- Review audit logs for anomalies (unusual user activity, bulk deletes)
- Check integration logs for failures
- Review pending user invitations — nudge anyone who hasn't accepted
Monthly:
- Review role assignments — any temps or contractors who left?
- Review webhook failure rates — any endpoints consistently failing?
- Review escalation history — are rules firing too often? Too rarely?
Quarterly:
- Full user audit — active users vs. licensed seats
- Permission review — any custom roles drifting from original intent?
- Retention policy review — anything that should be extended or shortened?
Related handbooks:
- Integrations Reference → — full integration catalog and event list
- Security & Audit → — deep dive on auth, sessions, audit, retention
- Troubleshooting & FAQ →