CRITICAL story-travel-reimbursement-registration-peer-mentor-001 3 pts
3
Story Points
Critical
Priority
Travel Reimbursement Registration
Feature

User Story

As a user
I want to select an expense type from a fixed dropdown list at the start of a reimbursement registration, with the system preventing invalid type combinations such as kilometre allowance and public transit for the same journey
So that So that I cannot accidentally submit an inconsistent claim that would require manual correction by an administrator and cause downstream accounting errors

Acceptance Criteria

  • Given the expense registration wizard is open, when the user lands on step one, then the expense type selector is displayed with all types permitted for their organisation loaded from the configuration store
  • Given the user selects 'Kilometre allowance', when the selector re-renders, then 'Public transit' and any other mutually exclusive types are disabled and visually indicated as unavailable
  • Given the user selects a fixed-amount type (toll, parking, or transit), when the selector re-renders, then 'Kilometre allowance' is disabled to prevent combination claims
  • Given the organisation has customised its permitted expense types in Supabase, when the selector loads, then only the configured types are shown — no hardcoded fallback types appear
  • Given the user attempts to proceed without selecting an expense type, when they tap 'Next', then a validation message prompts them to make a selection before advancing

Business Value

Enforcing mutually exclusive expense type selection at the UI layer eliminates a major source of accounting errors that currently require manual coordinator correction. Fixed dropdown choices rather than free text ensure downstream Bufdir reporting compatibility and accounting system integration (Xledger, Dynamics) receives clean, categorised data. This directly reduces back-office correction time and ensures compliance with organisational reimbursement policies.