Appearance
Navigation & Permissions
Pinkapple ERP uses a permission-driven navigation system. The sidebar menus, available pages, and actions you see are determined entirely by the permissions assigned to your role.
Workspace Reference
| Workspace | How Users Reach It | What Users Usually Do There |
|---|---|---|
| Service Selector | Login or context-selection flow where multiple contexts are available | Choose the company, service, and business unit context before entering the app. |
| Service Switcher | Main application sidebar | Switch between accessible services and business units after login. |
| Roles | Administration -> Access -> Roles | Control which modules, pages, and actions a user can see. |
| Users | Administration -> Access -> Users | Assign users to business units and roles. |
| Business Units And Types | Administration -> General Setup -> Business Units And Types | Define the hierarchy that controls data visibility and service context. |
Sidebar Structure
The sidebar uses a three-level hierarchy:
Level 1 (L1) — Top-level modules
├── Level 2 (L2) — Sections within a module
│ └── Level 3 (L3) — Pages/features within a sectionExample:
Administration (L1)
├── General Setup (L2)
│ ├── Organisation Details (L3)
│ ├── Business Units & Types (L3)
│ ├── Client & Group Types (L3)
│ └── Configurations (L3)
├── Financial Setup (L2)
│ ├── Currency (L3)
│ ├── Fiscal Calendar (L3)
│ └── Pricing (L3)
└── Accounting (L2)
├── Chart of Accounts (L3)
└── GL Posting Rules (L3)How Permissions Map to Navigation
Each permission level corresponds to a sidebar level:
| Permission Level | Sidebar Level | Controls |
|---|---|---|
permission_level_1 | L1 — Module | Whether the module appears in the sidebar |
permission_level_2 | L2 — Section | Whether the section appears under the module |
permission_level_3 | L3 — Page | Whether the page appears under the section |
permissions_name | Actions | What actions the user can perform (VIEW, CREATE, EDIT, DELETE, APPROVE) |
If a user's role does not include any L3 permissions under an L2 section, that section is hidden. If no L2 sections are visible, the entire L1 module is hidden.
Main Modules
The following L1 modules are available (depending on your service and permissions):
| Module | Icon | Description |
|---|---|---|
| Dashboard | 📊 | Home page with KPIs, approval items, and recent activity |
| Administration | ⚙️ | General setup, financial setup, accounting setup, products, access control, custom fields |
| Accounting | 💰 | GL journals, reconciliation, financial reports, back-office posting |
| Parties | 👥 | Individuals, groups, organisations, party roles, and reusable party records |
| Deposits | 💵 | Deposit account operations, blocked funds, holds, mandates |
| Loans | 💳 | Loan applications, loan accounts, servicing, collections, and related controls |
| Shares | 📈 | Share accounts, transactions, dividends, meetings |
| Assets | 🏗️ | Asset register, transactions, depreciation, CIP, compliance |
| HR | 👤 | Employees, leave, payroll, performance, separation |
| Reporting | 📋 | Run reports, snapshots, presets, schedules |
| Communication | ✉️ | Documents and messages |
| Billing | 🧾 | Invoices, credit notes, receivables aging, statements, recurring billing, and dunning |
| Payments & Settlement | 💸 | Payment transactions, payout batches, instruments, settlement batches, and disputes |
Service Switcher
If you have access to multiple business units (potentially across multiple services), the Service Switcher appears in the sidebar.
Using the Service Switcher
- Click on the current business unit name in the sidebar header
- A dropdown appears showing all your available business units, grouped by business unit type
- If you have more than 5 business units, a search bar appears at the top
- Select the business unit you want to switch to
When you switch:
- The sidebar navigation updates to reflect the new service context
- The active business unit changes, affecting which data you can see
- Your permissions may change if different roles are assigned in different business units
TIP
The business unit type name appears as a group header in the switcher. If your admin has configured service display names, those custom names will appear instead of the default service names.
Access Guard
Pinkapple enforces permissions when users open a page or action. If a user tries to open something they do not have permission to access:
- The system checks the user's permission tree against the requested workspace
- If access is denied, you're redirected to your default landing page, usually the Dashboard
- This happens transparently — you won't see an error page
Public Pages
Some pages are accessible before signing in:
- Landing page
- Privacy policy
- Services page
- Company registration
- Login page
Permission Types
Within each L3 page, individual permissions control specific actions:
| Permission | Meaning |
|---|---|
VIEW_* | Can see the page and its data |
CREATE_* | Can create new records |
EDIT_* / UPDATE_* | Can modify existing records |
DELETE_* | Can delete records |
APPROVE_* | Can approve pending records |
LIST_* | Can list/browse records |
RUN_* | Can execute operations (e.g., run reports) |
INFO
Permissions are additive. A user with no permissions sees nothing. Each permission explicitly grants access to a specific capability.
