A firm that sells a non perishable product considers intertemporal price discrimination in the objective of maximizing its long-run average revenue. We consider a general model of patient customers with changing valuations. Arriving customers wait for a random but bounded length of time and purchase the product when its price falls below their valuation, which varies following a stochastic process. We show the optimality of a class of cyclic strategies and obtain an algorithm that yields them. When the pace of intertemporal pricing is constrained to be comparable to the upper bound on customers patience levels, we have a good control on the cycle length and on the structure of the optimizing cyclic policies. The results also hold for forward looking strategic customers as well as under an alternative objective of maximizing infinite horizon discounted revenue.We cast our results in a general framework of optimizing the long-run average revenue for a class of revenue functions that we denote weakly coupled, in which the revenue per period depends on a finite number of neighboring prices. We analyze in detail the case of Markovian valuations where we can obtain closed form formulations of the revenue function and some refinements of our main results. We also extend our results to the case of patience levels that are bounded only in expectation.