Context
Different stakeholders need different views of payment data. A fixed set of reports cannot satisfy diverse analytics requirements.
Current Limitation/Problem
Reports are predefined with fixed metrics and dimensions. Users cannot create custom reports or save report configurations for reuse.
Expected Outcome
A drag-and-drop report builder where users select metrics, dimensions, filters, and visualization types. Reports can be saved, scheduled, and shared.
Acceptance Criteria
- Visual report builder: select metrics (revenue, tx count, fees), dimensions (date, chain, currency, merchant), filters
- Chart type selection: line, bar, pie, table, heatmap, area
- Date range picker with relative presets (last 7d, 30d, this month, custom)
- Save report with name and description
- Report list with search, sort, and favorites
- Schedule report delivery via email (daily/weekly/monthly)
- Share report via link (view-only)
- Export as PDF, CSV, PNG
- Dashboard widget integration (pin to dashboard)
Technical Scope
frontend/src/app/dashboard/reports/builder/ - report builder route
frontend/src/components/reports/ - report components
- Zustand for report builder state
backend/src/services/reports/custom-report.ts - report generation API
- Prisma:
SavedReport, ScheduledReport, ReportTemplate models
- BullMQ for scheduled report generation
- Edge cases: empty results, very large datasets, chart rendering performance
Context
Different stakeholders need different views of payment data. A fixed set of reports cannot satisfy diverse analytics requirements.
Current Limitation/Problem
Reports are predefined with fixed metrics and dimensions. Users cannot create custom reports or save report configurations for reuse.
Expected Outcome
A drag-and-drop report builder where users select metrics, dimensions, filters, and visualization types. Reports can be saved, scheduled, and shared.
Acceptance Criteria
Technical Scope
frontend/src/app/dashboard/reports/builder/- report builder routefrontend/src/components/reports/- report componentsbackend/src/services/reports/custom-report.ts- report generation APISavedReport,ScheduledReport,ReportTemplatemodels