Expense Types & Requirements
Feature Detail
Description
Manages the catalogue of allowable expense types and their associated business rules, including mutual-exclusivity constraints, documentation requirements, and approval thresholds. Each organisation can configure which expense types are available to their peer mentors, what combinations are permitted, and what supporting documentation is required. The feature exposes configuration UI in the admin portal and surfaces the resulting rules in the mobile app expense forms. Supported types include kilometre allowance, toll fees, parking, public transport, and driver honoraria.
User Flow
Analysis
Different member organisations have fundamentally different reimbursement policies. HLF requires technically enforced mutual exclusivity between expense categories, while Blindeforbundet needs driver honoraria and confidentiality declarations. A configurable expense type system allows the platform to serve all organisations without requiring custom code per tenant. Enforcing rules at the data-entry level — rather than during auditing — dramatically reduces claim errors and rejection rates, which in turn accelerates reimbursement cycles and improves volunteer satisfaction. Organisations also gain confidence that submitted data meets their internal compliance requirements before it reaches the approval queue.
Model expense types as organisation-scoped configuration records in the database, with a JSON rules field encoding mutual-exclusivity groups, required-documentation flags, and per-type amount thresholds. The mobile app fetches the active type catalogue on login and caches it for offline use, applying rules as client-side form validation. The admin portal provides a configuration interface for org admins to manage their type catalogue. Use a rule-evaluation engine on the backend that re-validates any submitted expense against the rules at the time of submission to prevent race conditions where rules change between client cache load and submission. Seed default type catalogues per organisation during onboarding.
Components (116)
Shared Components
These components are reused across multiple features
User Interface (12)
Service Layer (34)
Data Layer (22)
Infrastructure (38)
User Stories
No user stories have been generated for this feature yet.