Access Previously Submitted Receipt for Reference
From the expense claim history or claim status screen, the peer mentor can tap on a submitted claim to view its details, including the attached receipt image. The receipt is loaded via a time-limited signed URL from Supabase Storage. The image is displayed in a full-screen modal with pinch-to-zoom support. This allows the peer mentor to self-service verify their submission without contacting the coordinator, reducing unnecessary communication overhead. Access is restricted to the peer mentor who submitted the claim and authorized coordinators.
User Story
Acceptance Criteria
- Given I have submitted an expense claim with a receipt, When I navigate to my expense history and open the claim, Then the receipt thumbnail is visible in the claim detail view
- Given I tap the receipt thumbnail on a submitted claim, When the image loads, Then a full-screen modal opens with the receipt image
- Given the full-screen modal is open, When I pinch the image, Then I can zoom in to read receipt details
- Given the signed URL has expired, When I open the receipt modal, Then a new signed URL is generated automatically and the image loads without me needing to take any action
- Given I am viewing a claim submitted by a different peer mentor, When I attempt to access the receipt, Then access is denied and no image is shown (RLS enforced)
- Given the receipt image cannot be loaded (deleted or storage error), When I open the claim detail, Then a clear message is shown instead of a broken image placeholder
Business Value
Giving peer mentors read access to their own submitted receipts reduces the volume of coordinator queries ('what did I submit?') and builds trust in the system. For audit and compliance purposes (Bufdir reporting), having an auditable receipt trail accessible to the submitter and approver ensures transparency. This is standard behaviour in expense management tools and its absence would be perceived as a gap.
Components
- Receipt Thumbnail Preview Widget ui
- Receipt Attachment Service service
- Claim Receipt Repository data
- Receipt Storage Repository data
- Signed URL Service service
- Supabase Storage Adapter infrastructure
- Claim Status Badge ui
- Claim Status Audit Timeline ui