Commit c6327cf7 authored by Mahmoud Aglan's avatar Mahmoud Aglan

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: 's avatarClaude Sonnet 4.6 <noreply@anthropic.com>
parent 2be39175
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment