Receive Mandatory Receipt Prompt When Expense Exceeds Threshold
When an expense item's amount reaches or exceeds the organisation-configured threshold (e.g., 100 kr for HLF), the Receipt Processing Service enforces mandatory attachment by preventing submission until at least one receipt is linked. The threshold value is read from organisation configuration retrieved from Supabase at session start, making it configurable per organisation without a code change. A clear inline message on the Receipt Upload Screen informs the peer mentor that a receipt is required for this expense amount, with a prompt to add one. This enforcement is specific to the peer mentor's own expense registration flow.
User Story
Acceptance Criteria
- Given an expense item's amount is at or above the configured threshold, when the user attempts to proceed without a receipt, then a validation message clearly states that a receipt is required
- Given the threshold enforcement is active, when the user tries to submit the expense, then submission is blocked until at least one receipt is successfully attached
- Given the organisation threshold is 100 kr and the expense amount is 99 kr, when the user proceeds without a receipt, then no mandatory receipt prompt is shown
- Given the organisation threshold is retrieved at session start, when the threshold configuration changes in Supabase, then the updated threshold is applied on the next app session
- Given a mandatory receipt is required, when the user attaches a receipt and it uploads successfully, then the submission block is lifted and the user can proceed
Business Value
HLF mandates receipts for expense items exceeding 100 kr as an internal audit and Bufdir grant compliance requirement. Without automated threshold enforcement, peer mentors routinely submit expense claims without documentation, creating manual follow-up work for coordinators and risk of rejected grant reimbursement. Enforcing the rule in the UI at the point of registration is the only reliable way to achieve consistent compliance across a distributed volunteer workforce.