Export Approved Expense Claims to Accounting System
Coordinators need a reliable, one-click export flow that collects all approved claims within a chosen period and pushes them to the connected accounting system. The export screen allows selecting a date range, previews the number of records, and triggers the export with a confirmation step. A double-export guard prevents the same period from being submitted twice. The system formats data according to the organization's chart of accounts mapping before transmission.
User Story
Acceptance Criteria
- Given a coordinator opens the accounting export screen, when they select a date range and tap Export, then the system queries all approved claims in that period and displays a count before confirmation
- Given a coordinator confirms the export, when the export runs, then approved claims are mapped to the correct accounts via chart-of-accounts-mapper and sent to the configured system (Xledger or Dynamics)
- Given a period has already been exported, when a coordinator attempts to re-export the same period, then the double-export guard warns them and requires explicit override before proceeding
- Given the export completes successfully, when the coordinator views export history, then the completed run appears with timestamp, record count, and status
- Given the accounting system is unreachable, when the coordinator triggers an export, then the system shows a clear error with retry guidance and does not mark the period as exported
Business Value
Manual re-entry of expense data into Xledger or Dynamics is error-prone and time-consuming. Automated export eliminates double-handling, reduces finance team workload, ensures audit-ready records, and accelerates reimbursement cycles — directly increasing volunteer satisfaction and organizational trust in the app.
Components
- Accounting Export Screen ui
- Export Date Range Picker ui
- Export Confirmation Dialog ui
- Export History Panel ui
- Accounting Exporter Service service
- Xledger Exporter service
- Dynamics Exporter service
- Double-Export Guard service
- Export Run Repository data
- Approved Claims Query Service data
- Chart of Accounts Mapper data
- Supabase Edge Function: Generate Export infrastructure
- CSV / JSON File Generator infrastructure