Skip to content

Frontend: Add Bulk Payment CSV Upload with Validation Preview #467

Description

@Smartdevs17

Context

Enterprise users process hundreds of payments at once. A single-payment form does not scale for batch operations.

Current Limitation/Problem

There is no bulk upload interface. Users must either use the API directly or submit payments one by one, which is inefficient for high-volume merchants.

Expected Outcome

A CSV/Excel upload interface with column mapping, row-level validation preview, error highlighting, and one-click execution with progress tracking.

Acceptance Criteria

  • Upload CSV or Excel files with payment data
  • Smart column auto-detection (amount, destination, currency, memo, etc.)
  • Manual column mapping UI for non-standard headers
  • Row-level validation preview showing errors and warnings
  • Highlight invalid rows with tooltip explaining the issue
  • Download error report CSV with correction suggestions
  • Execute valid rows with progress bar (per-row status)
  • Support 1000+ rows with chunked processing
  • Template download for correct CSV format

Technical Scope

  • frontend/src/app/payments/bulk/ - bulk upload route
  • frontend/src/components/payments/bulk/ - upload components
  • CSV parsing with PapaParse, Excel with SheetJS
  • backend/src/services/payments/bulk-processor.ts - batch validation/execution
  • Prisma: BulkUpload, BulkUploadRow models
  • BullMQ queue for async bulk processing
  • WebSocket progress updates
  • Edge cases: encoding issues, very large files, partial failures, row limits

Metadata

Metadata

Labels

200-points200 point issueStellar WaveIssues in the Stellar wave programdrips-waveIssues in the Drips Wave programhighHigh complexity issue

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions