johnny Yeah, I 100% need to have refunded/canceled invoices and payments to say on the system as if it happened I need a report to back it up.
I'd leave the refunding process up to the individual for now, but having the invoice/payment have a canceled and refunded status option. It stays there, but just for reference. Maybe the payment can have an additional field for the refund id/number?
Maybe a refund triggers a negative balance invoice that has its own negative balance payment so everything works out, all associated with the originals to keep everything organized.