Skip to content

feat: implement subscription export with multiple format support (#726)#803

Open
primexk5 wants to merge 1 commit into
Smartdevs17:mainfrom
primexk5:feat/726-subscription-export-multi-format
Open

feat: implement subscription export with multiple format support (#726)#803
primexk5 wants to merge 1 commit into
Smartdevs17:mainfrom
primexk5:feat/726-subscription-export-multi-format

Conversation

@primexk5

Copy link
Copy Markdown

Overview

Implements multi-format subscription data export, scheduled automation, download analytics, and REST API endpoints as requested in Issue #726.

Closes #726

Key Changes

  • Multi-Format Support: Added CSV, JSON (with optional Draft-07 schema envelope), PDF (zero-dependency ASCII stream generator), QuickBooks, and Xero export formats.
  • Frontend Export Service (src/services/accountingExport.ts): Implemented table PDF building, JSON schema wrapping (ACCOUNTING_EXPORT_JSON_SCHEMA), schedule management (delete, toggle, run now), and export download analytics.
  • Backend Billing Service (backend/services/billing/accountingExportService.ts): Rewritten streaming export service supporting PDF generation, custom column mappings, schedule lifecycle orchestration, and download tracking.
  • REST API Endpoints (backend/services/billing/exportApi.ts): Created 10 Express route handlers under /v1/exports for export creation, download streaming, schedule CRUD, and analytics retrieval.
  • UI Screens (src/screens/): Upgraded AccountingExportScreen.tsx with an analytics dashboard card, JSON schema toggle, and schedule controls. Enhanced ExportScreen.tsx with 5-format selection and service integration.
  • Documentation & Tests: Created docs/export-guide.md, added Export API section to docs/API.md, and added 28 new unit test cases covering frontend and backend export logic.

Acceptance Criteria Verified

  • CSV export with custom columns
  • JSON export with schema
  • PDF export with formatting
  • Scheduled export automation
  • Export analytics (download counts, formats)
  • Export API for integration
  • Export documentation

…rtdevs17#726)

- Add zero-dependency ASCII PDF table generation to frontend and backend export services
- Implement JSON Schema Draft-07 wrapping for export records (ACCOUNTING_EXPORT_JSON_SCHEMA)
- Build schedule management lifecycle: create, read, update, delete, toggle, and on-demand run
- Track export download counts and format usage breakdowns via ExportAnalytics
- Create /v1/exports REST API endpoints in backend billing domain (exportApi.ts)
- Enhance AccountingExportScreen with analytics dashboard, schema toggle, and schedule controls
- Update ExportScreen with 5-format selection (CSV, JSON, PDF, QuickBooks, Xero)
- Add comprehensive developer/user documentation (docs/export-guide.md, docs/API.md)
- Add unit test suites in frontend and backend billing services
@drips-wave

drips-wave Bot commented Jul 26, 2026

Copy link
Copy Markdown

@primexk5 Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits.

You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀

Learn more about application limits

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Implement subscription export with multiple format support

1 participant