Problem
The TODO.md confirms issue #216 'PaymentStatus enum standardization' is still 'In Progress' at step 1/6. The Prisma schema, payment.service.ts, and frontend types.ts use different status string values, causing mismatch bugs at runtime when statuses are compared or stored.
Acceptance Criteria
Branch & Commit
branch: fix/payment-status-enum-migration
commit: fix(payments): standardise PaymentStatus enum across Prisma, services, and API
Problem
The TODO.md confirms issue #216 'PaymentStatus enum standardization' is still 'In Progress' at step 1/6. The Prisma schema,
payment.service.ts, and frontendtypes.tsuse different status string values, causing mismatch bugs at runtime when statuses are compared or stored.Acceptance Criteria
PaymentStatusPrisma enum defined with canonical values:pending,partially_paid,confirmed,overpaid,expired,failed,paid,completed,refunded,partially_refundedPayment.statusfield uses the enum type in schemaadd_payment_status_enumpayment.service.tsuses enum values everywhere (no raw strings)PAYMENT_LIFECYCLE.mdcreated in docs describing each state transitionBranch & Commit