use credit method instead of overloading refund