Price discrimination algorithms, which offer different prices to customers based on differences in their valuations, have become common practice. While it allows sellers to increase their profits, it also raises several concerns in terms of fairness, e.g., by charging higher prices (or denying access) to protected groups when they have higher (or lower) valuations than the general population. In the first part of the talk, we consider the problem of setting prices for different groups under fairness constraints. We consider different notions of fairness related to prices, access, and consumer surplus under two fundamental settings: an unconstrained monopolist and a vehicle sharing system that price discriminates based on location. Our results show how different notions of fairness affect rider surplus, which does not always improve with fairness.