Expand wizard payment step: all 7 methods, partial, split, transaction refs
Payment modes:
- Full (default): pays entire invoice amount
- Partial: enter amount paid now, remainder stays as balance due on invoice
- Split: two methods, amount1 + calculated remainder, both recorded as payments
All 7 PaymentMethod values now available:
- cash: no extra fields
- card: transaction_reference (required)
- bank_transfer: transaction_reference (required), bank_name (optional)
- online (Instapay/digital wallets): transaction_reference (required)
- wallet (club wallet): deducts from member balance
- cheque: cheque_number (required), bank_name (optional)
- other: notes field
Each payment recorded with gateway_data JSON (ref, cheque_number, bank_name)
Enrollment payment_status only set to 'paid' when full amount covered
Validation rules built dynamically from active mode + method combination
Co-Authored-By:
Claude Sonnet 4.6 <noreply@anthropic.com>
Showing
This diff is collapsed.
This diff is collapsed.
Please register or sign in to comment