Rule
Refunds and chargebacks must be modeled independently with full audit trails.
Why
Treating a chargeback like a refund can cause double refunds, fraud exposure, and compliance violations.
Refund: Must
- Support full and partial refund amounts.
- Prevent refund amounts exceeding original capture.
- Record reason code and operator who initiated the refund.
- Notify the customer via email or notification.
Chargeback: Must
- Track chargeback as a distinct status on the payment record.
- Freeze related fulfillment if goods have not yet shipped.
- Log all evidence submitted for disputes.
- Alert operations team on chargeback receipt.
Should
- Automatically update subscription access on chargeback resolution.
- Flag accounts with multiple chargebacks for fraud review.
Anti-patterns
- Processing a refund against a payment already in chargeback.
- No notification to the customer when a refund is issued.
Test Cases
- Partial refund reduces remaining refundable balance.
- Chargeback received updates payment status and alerts ops.
Telemetry
- refund_issued
- chargeback_received
- chargeback_won_lost
- fraud_flag_triggered