Accounting Export
Feature Detail
Description
The Accounting Export feature provides organization administrators with a UI-driven workflow in the Admin Web Portal to trigger and review exports of approved expense and reimbursement data to their connected accounting system. Administrators can select date ranges, filter by cost center or peer mentor, preview the records to be exported, and initiate the transfer. Export results are displayed inline with per-record status, and a full history of past exports is available via the export log. Failed records can be retried individually without re-exporting the entire batch.
Sources & reasoning
The same Fase 3 roadmap entry on line 353 covers the full accounting integration scope, which includes both the API connection and the administrator-facing export workflow. Line 72 confirms the export need originates from HLF and Blindeforbundet expense processes. Fase 3 maps to v1.1. The export UI is a distinct feature from the API client because it has its own page, service, and log components.
-
docs/source/likeperson.md · line 353Regnskapsintegrasjon (Xledger for Blindeforbundet, Dynamics accounting for HLF)
-
docs/source/likeperson.md · line 72API-integrasjon mot regnskapssystem (Xledger for Blindeforbundet, Dynamics-portal for HLF).
Analysis
Timely and accurate export of reimbursement data to accounting systems is a compliance and operational requirement for organizations like HLF and Blindeforbundet, which operate formal finance processes. By surfacing this as a first-class admin feature rather than a manual extract, the platform reduces finance staff workload, shortens peer mentor reimbursement cycles, and removes a key friction point that could otherwise undermine platform adoption in finance-sensitive organizations. The export log also provides the audit evidence required under Norwegian accounting regulations.
The AccountingExportPage renders a filter form and a preview table of pending export records fetched from the approved expense pipeline. AccountingExportService orchestrates the export batch by delegating per- record calls to AccountingApiClient adapters and persisting results to ExportLogRepository. The page must handle partial failures gracefully, showing per-record success/error states without blocking the rest of the batch. Export file generation (for systems that prefer file-based integration) is handled by ExportFileGenerator and should support CSV and any format required by the target accounting system. All UI interactions must be keyboard-navigable and meet WCAG 2.2 AA contrast requirements.
Quality Assurance
Organization Administrator (primary)Organization Administrator
Quick UAT
- Logg inn i Admin-portalen som Organisasjonsadministrator. Naviger til Regnskap â Regnskapseksport.
- Velg datoperiode (f.eks. forrige mÄned) og bekreft at forhÄndsvisningen viser godkjente utleggsposter.
- Filtrer listen pÄ én likeperson og bekreft at kun posteringer for valgt person vises.
- Trykk Eksporter og bekreft at overfĂžringen starter og per-post-status vises inline under prosessering.
- Bekreft at alle poster fÄr status Eksportert nÄr overfÞringen er fullfÞrt.
- Ă pne Eksportlogg og bekreft at den nyeste eksporten er oppfĂžrt med tidsstempel, antall poster og utfall.
- Marker én mislykket post (simuler ved Ä bruke en post som allerede er eksportert) og bekreft at PrÞv pÄ nytt-knappen kun sender den posten pÄ nytt uten Ä re-eksportere resten.
Quick UAT â Accessibility
-
Logg inn i Admin-portalen som Organisasjonsadministrator. Naviger til Regnskap â Regnskapseksport.
- Screen reader Sideoverskrift 'Regnskapseksport' annonseres; sidemenyens navigasjonspunkter leses i rekkefĂžlge.
- Keyboard / focus Tab-rekkefĂžlge: sidenavigasjon â datovelger â filtersektion â Eksporter-knapp.
- Focus visibility Synlig fokusring pÄ alle navigasjonselementer i sidemeny.
-
Velg datoperiode (f.eks. forrige mÄned) og bekreft at forhÄndsvisningen viser godkjente utleggsposter.
- Screen reader Datovelger-felt annonseres med label 'Fra dato' og 'Til dato'; valgt verdi leses tilbake.
- Keyboard / focus Datovelger nÄs med Tab; piltaster navigerer i kalender; Enter bekrefter valg.
- Focus visibility Synlig fokusring pÄ datofelter og kalenderknapper; felt er tydelig merket.
- Zoom Datovelger og forhÄndsvisningstabell er brukbare ved 200 % zoom uten horisontal scrolling.
-
Filtrer listen pÄ én likeperson og bekreft at kun posteringer for valgt person vises.
- Screen reader Filterkombobox annonseres med label 'Filtrer etter likeperson'; valgt navn leses.
- Keyboard / focus Filterfeltet nÄs med Tab; piltaster blar gjennom alternativene; Enter velger.
- Focus visibility Synlig fokusring pÄ filter-dropdown; lukk-knapp for aktivt filter er merket 'Fjern filter'.
-
Trykk Eksporter og bekreft at overfĂžringen starter og per-post-status vises inline under prosessering.
- Screen reader Eksporter-knapp annonseres som 'Eksporter, knapp'; ved aktivering annonseres 'Eksport startet'.
- Keyboard / focus Eksporter-knapp nÄs med Tab; aktiveres med Enter eller mellomrom.
- Focus visibility Fokus flyttes til statusvisning etter aktivering; Eksporter-knapp er deaktivert under prosessering og merket 'EksportererâŠ'.
- Touch target Eksporter-knapp er minimum 24Ă24 CSS px.
- Live region 'Eksport pÄgÄr. Behandler post 1 av N.' annonseres som polite live region; oppdateres per post.
-
Bekreft at alle poster fÄr status Eksportert nÄr overfÞringen er fullfÞrt.
- Screen reader Statusoppdatering annonseres: 'Eksport fullfĂžrt. N poster eksportert.'
- Live region 'Eksport fullfĂžrt. N poster eksportert.' meldes som polite live region.
- Contrast Statusbadge 'Eksportert' bruker ikke farge alene; ledsages av ikon eller tekst.
-
Ă pne Eksportlogg og bekreft at den nyeste eksporten er oppfĂžrt med tidsstempel, antall poster og utfall.
- Screen reader Tabellkolonner annonseres med overskrifter: 'Dato', 'Antall poster', 'Utfall', 'Handlinger'.
- Keyboard / focus Logg-tabell nÄs med Tab; piltaster navigerer rader og kolonner.
- Focus visibility Synlig fokusring pÄ tabellrader og handlingsknapper.
- Zoom Eksportlogg-tabell er lesbar og brukbar ved 200 % zoom.
-
Marker én mislykket post og bekreft at PrÞv pÄ nytt-knappen kun sender den posten pÄ nytt.
- Screen reader PrÞv pÄ nytt-knapp annonseres per rad som 'PrÞv pÄ nytt for post [ID]'; kontekst er tydelig.
- Keyboard / focus PrÞv pÄ nytt-knapp nÄs med Tab inne i tabellraden; aktiveres med Enter.
- Focus visibility Synlig fokusring pÄ PrÞv pÄ nytt-knapp; etter aktivering flyttes fokus til oppdatert status for posten.
- Touch target PrĂžv pĂ„ nytt-knapp er minimum 24Ă24 CSS px.
- Live region 'Post [ID] sendt pÄ nytt. Venter pÄ svar.' annonseres som polite live region.
Role Boundaries
3 role(s) must NOT access this feature-
Peer Mentor
Regnskapseksport-siden finnes ikke i mobilappens navigasjon; direktelenke til admin-portalen returnerer 403.
-
Coordinator
Koordinatorer logger ikke inn i Admin-portalen; forsÞk pÄ tilgang til /admin/accounting-export returnerer 403.
-
Prospective Organization Representative
Rollen har ingen konto i Admin-portalen; innloggingsforsĂžk avvises.
Expected End State
Alle valgte, godkjente utleggsposter er overfÞrt til tilkoblet regnskapssystem med status Eksportert. Eksporten er oppfÞrt i Eksportloggen med tidsstempel, antall poster og utfall. Mislykkede poster kan prÞves pÄ nytt individuelt.
Components (21)
Shared Components
These components are reused across multiple features
User Stories
No user stories have been generated for this feature yet.